/aider

aider is AI pair programming in your terminal

Primary LanguagePythonApache License 2.0Apache-2.0

Report for Assignment 1

Project chosen

Name: Aider

URL: https://github.com/paul-gauthier/aider

Number of lines of code and the tool used to count it: The tool was lizard and it was 10920 nloc

Programming language: Python

Coverage measurement

Existing tool

We used coverage.py as an existing tool fore coverage measurement
// Coverage tool running process
coverage run -m pytest
coverage report
coverage html

Alt text

Your own coverage tool

Zaher Lavi (vunet-id: zla202)

First Function

InputOutput.user_input in io.py file

Link to the commit

Alt text

Second Function

InputOutput.tool_error in io.py file

Link to the commit

Alt text

Coverage improvement

Individual tests

Zaher Lavi (vunet-id: zla202)

Test 1

Link to the commit

<Provide a screenshot of the old coverage results (the same as you already showed above)>

Alt text

Alt text

Improved branch coverage of the user_input function from 70% to 100%. In the existing tests for the io.py file, the function was not tested and covered at all, and there were two cases that could be tested. Using my own coverage tool, I identified these cases and wrote two tests for the user_input function. These tests are included in the test_io file, which has been committed to GitHub and can be accessed using the link above.

Test 2

<Provide the same kind of information provided for Test 1>

Link to the commit

Alt text Alt text

Improved branch coverage of the tool_error function from 75% to 100%. In the existing tests for the io.py file, the function was not tested and covered at all, and there were three cases that could be tested. Using my own coverage tool, I identified these cases and wrote three tests for the tool_error function. These tests are included in the test_io file, which has been committed to GitHub and can be accessed using the link above.

Vansham Ahluwalia (vunet-id: vah201)

First Function

models.validate_variables in models.py file

Link to the commit

Alt text

Second Function

InputOutput.tool_error in io.py file

Link to the commit

Alt text

Coverage improvement

Individual tests

Vansham Ahluwalia (vunet-id: vah201)

Test 1

Link to the commit

<Provide a screenshot of the old coverage results (the same as you already showed above)>

Alt text

Alt text

Improved branch coverage of the validate_variables function from 0% to 100%. In the existing tests for the models.py file, the function was not tested and covered at all. Using my own coverage tool, I identified the cases and wrote three tests for the validate_variables function. These tests are included in the test_models file, which has been committed to GitHub and can be accessed using the link above.

Test 2

<Provide the same kind of information provided for Test 1>

Link to the commit

Alt text Alt text

Improved branch coverage of the configure_model_settings function from 65% to 94%. In the existing tests for the models.py file, the function was not tested and covered at all. Using my own coverage tool, I identified the cases and wrote five tests for the configure_model_settings function. These tests are included in the test_models file, which has been committed to GitHub and can be accessed using the link above.

Shadman Sahil Chowdhury (vunet-id: scy580)

First Function

Commands.cmd_commit() in commands.py file

Link to the commit

Alt text

Second Function

Repomap.get_repo_map() in repomap.py file

Link to the commit

Alt text

Coverage improvement

Individual tests

Shadman Sahil Chowdhury (vunet-id: scy580)

Test 1

Link to the commit

<Provide a screenshot of the old coverage results (the same as you already showed above)>

Alt text

Alt text

Improved branch coverage of the cmd_commit function from 50% to 100%. In the existing tests for the commands.py file, the function was not tested and covered at all. Using my own coverage tool, I identified the cases and wrote tests for the function. These tests are included in the test_commands file, which has been committed to GitHub and can be accessed using the link above.

Test 2

<Provide the same kind of information provided for Test 1>

Link to the commit

Alt text Alt text

Improved branch coverage of the get_repo_map function from 69% to 82%. In the existing tests for the repomap.py file, the function was not tested and covered at all. Using my own coverage tool, I identified the cases and wrote 5 tests for the get_repo_map function. The tests are included in the test_repomap file, which has been committed to GitHub and can be accessed using the link above.

Ana Mafiyusef (vunet-id: ama487)

First Function

run_cmd in linter.py file

Link to the commit

Alt text

Second Function

py_lint in linter.py file

Link to the commit

Alt text

Coverage improvement

Individual tests

Ana Mafiyusef (vunet-id: ama487)

Test 1

Link to the commit

Alt text

Alt text

I improved the branch coverage of the run_cmd function from 0% to 81%. Initially, there were no test files for linter.py, so I created a new file, test_linter.py.The test is included in the test_models file, which has been committed to GitHub and can be accessed using the link above.

Test 2

Alt text

Alt text

I improved the branch coverage of the run_cmd function from 0% to 84%. Initially, there were no test files for linter.py, so I created a new file, test_linter.py.The test is included in the test_models file, which has been committed to GitHub and can be accessed using the link above.

Overall

<Provide a screenshot of the old coverage results by running an existing tool (the same as you already showed above)>

Alt text

Alt text

Statement of individual contributions

Zaher Lavi: I improved the branch coverage of two functions. In the report, I worked on the sections covering the project chosen, coverage measurement, individual parts, and the overall.

Vansham Ahluwalia: I checked and improved the branch coverage of two functions in models, updated the report and worked on my individual part and overall.

Shadman Sahil: I improved the branch coverage of two functions, updated the report and worked on my individual part.

Ana Mafiyusef: I improved the branch coverage of two functions, worked on my individual part and updated the report.