Project Plan - Automated Testing for Climate Emissions Ledger
Abstract
Develop automated testing framework for climate applications including the Fabric and Ethereum applications. Improve test coverage by writing additional tests. Integrate additional emissions calculators including the ThoughtWorks cloud carbon footprint calculator, the WRI GHG emissions spreadsheet, or the Allbirds emissions spreadsheet and add automated tests for them.
Mentor and Mentee
Mentor | Mentor | Mentor | Mentee |
---|---|---|---|
Si Chen US PST sichen@opensourcestrategies.com | Robin Klemens CEST r.klemens@yahoo.de | Kamlesh Nagware IST kamlesh.nagware@gmail.com | Harsh Sharma IST harshhsharma23@gmail.com |
Communication channel: Email on the climate-sig mailing list + Github Tasks
Project repository: https://github.com/hyperledger-labs/blockchain-carbon-accounting/tree/mentorship-automated-testing
Deliverables
- 1 Structure tests into unit, integration, and functional. Get all existing tests to work.
- 2 Integrate tests into GitHub actions pipeline to run on every push to the master branch.
- 3 Develop additional tests and end-to-end tests.
- 4 Refactor code to calculate scope 3 emissions factors.
- 5 Migrate emissions factor data to OrbitDB instead of CouchDB
Milestones
Eval 1:
- a All existing tests are working and organized into unit, integration, and functional
- b Tests integrated into GitHub actions pipeline.
Eval 2:
- c Linting and static code analysis integrated with GitHub actions
- d HTML test reports generated for every CI run
Eval 3:
- e. CI for Net Emissions Token Network and Datalock chaincode tests
- f. Tests added for calculating emissions by year and region
Eval 4:
- g. Modify data loader to accept scope 3 emissions factors flat file
- h. Use OrbitDB for emissions calculations
Timeline
Week | Task/Plan | Status |
---|---|---|
Sep 1 - Sep 5 | Initial Project Plan. | Complete |
Sep 6 - Sep 20 | Introduction to project. Download the code from the branch and get familiar with the code. Learn the key functionalities of Hyperledger Fabric. Structure the already existing tests in unit, integration, and functional. Get the existing tests to work and check the emissions factors are retrieved for correct year. | Complete |
Sep 27 - Oct 4 | Integrate the existing tests into GitHub Actions Pipeline, which gets triggered by every PR and Push to the master branch. | Complete |
Oct 4 - Oct 15 | Wrap up all tasks prior to Eval 1 Eval 1 on October 15 | |
Oct 18 - Nov 1 | Add linting and static code analysis checks into the GitHub Actions Pipeline | Complete |
Nov 1 - Nov 15 | Create test reports for every pull request | Complete |
Nov 15 - Nov 29 | Eval 2 on November 30 | |
Nov 29 - Dec 13 | Integrate existing tests for the Net Emissions Token Network and Datalock chaincode into the GitHub Actions Pipeline | Complete |
Dec 13 - Dec 27 | Add additional tests for emissions calculations by year and region, and for checking file integrity | Complete |
Dec 27 - Jan 10 | Remove old chaincode files and change folder structure | Complete |
Jan 10 - Jan 24 | Eval 3 on January 15 | |
Jan 24 - Feb 7 | Add local development script to package and test chaincode locally | Complete |
Feb 7 - Feb 21 | Modify data loader to parse scope 3 emissions file | In Progress |
Feb 21 - Feb 28 | Final evaluation and presentation of project on February 28 |