-
Notifications
You must be signed in to change notification settings - Fork 16
Add a new architecture for the js-remote-test. #93
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Current status (2018.02.08): Builder part:
Note: it was needed to modify the build methods of both NuttX and TizenRT targets. Now, all the targets can be compiled with
Testrunner part:
|
@rtakacs Please fix travis error (missing sign-off). |
dcb2b9d
to
96c3784
Compare
ddaf795
to
1c341e8
Compare
3ab3781
to
fc48297
Compare
2693d0a
to
3699849
Compare
abbdca8
to
b472fa5
Compare
3972da4
to
b472fa5
Compare
JSRemoteTest-DCO-1.0-Signed-off-by: Roland Takacs [email protected]
Okay, I'm finished with the rework :) The new architecture helps to cover almost all requirement that are defined in #39. |
Uh super big patch. Great work! |
Some useful information to the development: Before, js-remote-test had static (non-modifiable) paths in the paths.py file. Since those paths could not be overridden, js-remote-test could not be a sub-module of either IoT.js or JerryScript. Now, js-remote-test can use dynamic (modifiable) paths that the user can override. The base concept is to have a resources.json file that has almost all information of the projects.
So the first step is to read the resources.json file and resolve all the symbolic paths. After that, this information is extended with the user defined options. This object can be a testing environment because it has all the necessary information (user options, project information) that required the test system. The builder part of the test system is responsible to create profile builds (on clean repositories) and a test build (when all the patches are applied to the projects). The created binaries are copied to a top level build folder. The following diagram shows how looks the build folder like when IoT.js is compiled for the stm32f4dis device:
Since the binary sizes are estimated by the linker map file, that files are also saved. The build.json file is created after the build step that holds the binary sizes and information about the git repositories (e.g. used hashes, date, author, commit messages). The testrunner part is almost the same as before, just updated to use the testing environment object. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Patch is pretty big, but looks ok. If it works, we can work on the smaller issues later.
LGTM |
No description provided.