Projects:DynamicRebuildWindow
The main purpose for this project is to change the rebuild window implementation so that it's able to dynamically adapt itself to the new execution flow of the build process, and to verify that the build process itself can be safely changed in a new version of Openbravo (=check that all the build tasks can be modified, and don't rely on previously compiled classes).
This project will have the following tasks:
- Verify that all the tasks in the build are independent from the Openbravo instance in which the rebuild is being done.
- Rebuild file
- Design the rebuild file, which will contain the rebuild steps, with their code and name
- Define how to manage the translation of these files
- Implement the rebuild file utility, which reads these files
- Refactor the ApplyModules servlet so that it produces the window taking into account this file
- Move the logic of the build, which currently resides in the ApplyModules servlet, to somewhere (probably the build.xml file, somehow) so that it can be changed in every version of Openbravo (currently, the ant tasks we call, and the criteria we use to call one or the other, is hardcoded in the ApplyModules servlet)
Test cases
(To be tested in different tomcat configurations)
Changes to fork the whole build
- Test non UI targets
- On Linux
- On Windows
- Test Virtual Appliance
- It works
- Speed/mem
- Test goal (ie. new code is used)
Changes to make the Rebuild Window UI dynamic
- Export translations generates new file
- Rebuild Popup tests
- Successful rebuild (both for Core/template, and modules) works fine in English
- Successful rebuild (both for Core/template, and modules) works fine in a different language
- Rebuild with one state in main build file which doesn't have translation in different language
- Rebuild with one state in translation file which doesn't correspond with any state in the main build file
- Rebuild with an error in one validation works according to plan (error message in the window, status of the system is perfectly correct so you can then login even with safe.mode property activated)
- Rebuild with an error in update.database or compile works according to plan (error message in the window, status of the system->error so that you cannot login with safe.mode activated)
- Test upgrade of MP14-MP19
- Check different browsers
- Firefox
- Internet Explorer
- Firefox with Firebug
- JSLint