How to Make Changes to the Project¶
1. Clone the Project¶
Fork the Github repo , then do a git clone on your fork
2. Make your Changes¶
AG Remap has 3 different types of builds:
The API (The source code for the project)
The API Mirror (A mirror to the API)
The Script (A compatible script for users who do not know how to use Pypi or any other Python package manager)
You would want to make your changes within the API . All the other builds are generated using other tools within the project.
3. Compile your Changes¶
Once you are done making changes, you want compile your changes to be updated within the other builds.
You can do this by running the CI Pipeline
Steps on how to run the CI Pipeline are here: https://github.com/nhok0169/Anime-Game-Remap/tree/nhok0169/Tools/CIPipeline
4. Test your Changes¶
Once you are done making your changes, you would want to test whether your new changes work properly. This step involves both running tests and making new test cases.
In general, AG Remap has 3 layers of QA testing, 2 automated tests and 1 manual test. These tests are:
Acceptance tests
I. Unit Tests¶
This is the first line of defense to see whether your changes may break other modules within the software.
For steps on how to run the Unit tester, see the link below: https://github.com/nhok0169/Anime-Game-Remap/tree/nhok0169/Testing/Unit%20Tester
Important
If you have created a new module in the software, it is recommended that you build unit tests since:
to see whether your module works by itself
your tests are used for future regression testing against your module
The unit tests are built using Python’s unittest library. You can check out the different unit tests here for how to make a unit tests within the project
II. Acceptance Tests¶
This test is where you verify whether your changes actually work in the game.
Within the Script build, copy
AGRemap.pyinto theModfolder of 3dmigotoRun
AGRemap.py
Tip
Here are some useful command options when running the build:
-t str: Used to filter which types of mods to fix. Enter a list of character names, seperated by a comma (,)-s str: Sets the folder where the software first scans for mods-ft str: Forces the software to assume the mod type for the mod being fixed. Use this option only if you are confident about the type for the mod.
You can check out Command Options for more info about what command options to supply
III. Integration Tests¶
This is the final test, once you are confident your changes work in the game.
These tests verify whether the overall features of the softare are working properly by running the software against different types of folder/file structures
For steps on how to run the Integration tester, see the link below: https://github.com/nhok0169/Anime-Game-Remap/tree/nhok0169/Testing/Integration%20Tester
You can check out the specific integration tests here
Warning
This test may take a while since it performs a lot of file manipulation
5. Commit your Changes¶
When all tests are clear, commmit your changes using git, then push your changes back to your forked Github repo.
After send a Pull Request (PR) to merge your new changes from your fork back to the AG Remap repo We will do a code review on your PR.
Note
When you push or merge your changes to Github, Github will trigger a CD pipeline that will automatically run your changes against the unit tests and the integration tests to make sure your changes have met the test requirements.
6. Merge your Changes¶
Once your PR is approved, we will merge your changes back to the AG Remap repo