GSoC Week3



This week, I mainly focused on unit tests for all functions in the ols_fetch_from_github package , refactoring the github_file_updater.py , and optimize customer choice without updates in github and enrich readme. Here’s the complete summary of the meeting with the work update during the week.

  • Extract functionality from github_file_updater.py (1306 lines) into separate modules
  1. file_comparator.py: File comparison and diff functionality
  2. file_converter.py: JSON/OBO format conversion logic
  3. file_downloader.py: File download and HTTP handling
  4. file_validator.py: File validation and integrity checks
  5. obo_parser.py: OBO file parsing functionality
  6. utils.py: Shared utility functions Provide customer choice to upload own file or use current version when no updates
  • Add configuration management system (config.py)
  • Testing
  1. Implemented full unit test coverage for all main modules:
  2. Over 170 tests written and passing
  3. Edge cases and error conditions covered

  • Added detailed descriptions to README.md: 
  1. Introduced the purpose and content of each folder (customerfile/, localfiles/, converted/, resources/, etc.)
  2. Explained the main modules and how they interact
  3. Described how users can update their SBO files or upload their own file
  • Visualization:A class-function diagram for internal code architecture


All the updates changes can be viewed at the branch: feature/ols/add_dynamic_sbo_fetching in my forked repository and PR.

Regards!

Comments

Popular posts from this blog

GSoC Week1

GSoC week2

GSoC Week 5