Week 8 Review

Published: 07/27/2023


Last week I was able to get the Archiver folder changes merged into Borg, which was a huge victory that took weeks to finish. This PR included over 6k lines of code, and completely removed the ArchiverBaseTestCase and all elements of unittest from the archiver test suite. After getting this merged, I started a new PR that worked on improving the merge by removing some redundant code and ensuring more consistency across the test suite, which was a big goal of the outline for this project. That PR was a little over a thousand lines and also got merged, meaning the archiver test folder is officially complete! On Friday I had a meeting with Manu to discuss some of the issues I was still having with testing on live Borg binaries and also to talk about work on Vorta's test suite.


This past week was one of many accomplishments, and I cannot overstate how big of a person victory it was for me to get the Archiver folder changes merged into Borg. However, I hit a serious roadblock when it came to testing on a Borg.exe binary. I was under the impression that to test on an '.exe' file I needed to have a virtual windows machine running on my Mac and ssh into it to run the tests, and I was having difficulties setting this up because the Borg vargrantfile was intended to be used with virtualbox, which does not support apple silicon arm64 architecture. Thankfully, my mentor Manu showed me Friday how simple it was to run tests on a Borg binary, and that the vagrant stuff was all a bit of a red herring that I was misunderstanding. After compiling a binary and getting the test suite to utilize it, I was finally able to see all 700+ tests pass without skipping the 200+ binary archiver ones. Previously, I relied on the GitHub CI to run these tests, and now I was able to test them myself.

The week ahead:
As I am writing this post a bit late,  Week 9 is already in full swing. I have spent some time working with the other GSoC contributors assigned to Borg and Vorta and checked out their branches locally to run and test the changes they have been making. I will continue to work with them and assist in ways that add value to their projects. Additionally, I am working to remove the last of the Unittest and BaseTestCase elements from the Borg `testsuite/` folder, a much smaller task now that the `testsuite/archiver/` folder is already complete. Finally, I am excited to continue working to improve Vorta's test coverage. I have already shown Manu a couple small tests and they looked good to him, so I am ready to get more tests started for Vorta, while also giving time for Jetchirag to finish his test suite changes.