Week 1 - Coding Begins, and 1st PR Merged

Published: 06/02/2023


As the start of the coding period commenced, I felt prepared and ready. My first GSoC project is Borg Pytest conversion, which entails converting the remaining Borg tests still using the unittest framework into the more modern and powerful pytest framework. I started with the compression tests, as this testing file had a good amount of duplicated code that could be easily reduced through the use of pytest parameterization. I started with just a couple of tests, passed the changes by my mentor, Manu, for approval Monday night, and then continued on to the rest of the test file. By Tuesday night I had a draft PR submitted for review by my other mentor, Thomas, who in turn provided valuable feedback on ways to improve my work. The refinement process took two more days, with my first PR getting merged this morning. Very exciting!


I faced two main challenges this week. The first was understanding the concepts that were being tested in the compression tests. Although obvious in hindsight, I should have started by reading the Borg documentation on compression and obfuscation. This would have led to me understanding the way the tests were written better, and I could have avoided wasting my mentors time explaining information to me that I should have sought out myself. The second challenge I faced this week was time. Everything took longer than I anticipated. Although this is often the case when learning new concepts, I am concerned that I am not currently at the pace I need to be to complete this project in the 3 weeks I have allotted. To combat this, I am going to dedicate some time over the weekend to starting on the next testing files, and I also hope to get quicker with my work as the concepts become increasingly familiar to me. 

The Week Ahead:

My next test file to migrate is the repository tests. This test file is in need of pytest fixtures and parameterization. Additionally, there is room for small parameterization improvements in the 'version' and 'item' test files that could lead to some fast gains. On Wednesday of next week I have a call set up with Manu, were we will discuss current project progress and outline a timeline for getting the rest of the test files converted. 

Thank you all for reading, and I look forward to bringing another week of updates next Friday!