Ensuring Changes Touch all Relevant Files

This was another simple change for Hacktoberfest, as I had been investing a fair bit of time in learning  about Rust and concepts of integration testing for a different issue.


The task was to go in and change the name of a function from "execute" to "run" in order to make it mimic the naming conventions for the axe-core function that it wrapped/called. I had looked through the files in the repo to check for calls to execute(), and changed them to be "run()". I also made sure I changed references to this function name that were included in the README.md file as well as a file that ran unit tests, so the test suite wouldn't freak out when the name of the function call changed (in fact, I made a point of running the unit tests with a bad function name to make sure that it failed).

What surprised me, is that there was a comment made on the pull request that suggested the possibility of missing changing the names of calls to the newly renamed "run()" function. I had searched for all instances of "execute" in my VS Code IDE (in this case it was pretty easy to do since the repository is pretty small), and made sure to run the unit tests before submitting my pull request. It turns out that there is a related pytest-axe repository (not axe-selenium-python, which is what I was working on) repository that still makes a similar execute() function call here. It would make sense that a repository owned by an organization that makes a bunch of its own code/tools would use calls to similar packages across different repositories, however, this hadn't occurred to me at the time. Also, the axe-selenium-python repository uses coveralls to track the extent of test coverage of the code base. This tool might be used to check the test coverage of the code to see if changing the execute() function's name would affect any code not covered by unit current unit tests, however, the repo's coveralls dashboard indicates it is not necessarily tracking test coverage just yet. Perhaps this is because some dependencies are spread across different repositories. This is something to follow up on, possibly when I work on a related issue.

Comments

Popular posts from this blog

Tinkering with Chrome Headless to Handle Mic Input

Using Arrow keys to cycle through Mozilla Screenshots

A look back at Hacktoberfest