jjones-99 / cs4500-sp2020-a1-part2-jones-tam

Jackie Tam and Jared Jones' work for Assignment 1: Part 2 of Software Development in Spring 2020.
0 stars 2 forks source link

Fix Tests #8

Closed grahamwren closed 4 years ago

grahamwren commented 4 years ago

Looks like my formatter moved your macros a little, sorry about that

More Importantly:

Remove tests for Object and String

Your tests for Object and String produce additional requirements for the interface of Object and String which are not relevant to your interface or tests for Map. The assignment does not ask you to provide tests for Object and String just for your chosen interface. Because of this and to ease integration with others' code, I am deleting these tests.

Add ; to one of you macro calls

This just makes it compile.

grahamwren commented 4 years ago

Due to changes in the assignment which previously asked us to write our own tests for classes other than the relevant interface, I will re-add most tests for Object and String. However, re this PR https://github.com/chasebish/cwc_object_string/pull/8, I'd like to still remove the test for concat/size because the interface was poorly designed and will change. Thoughts?

jjones-99 commented 4 years ago

Based on the PR you linked, it looks like there are going to be changes made to the signatures for concat and size. However, these changes won't be finalized and merged to master until after the Friday night deadline.

While I agree with the changes that will be made, they haven't been made yet. Thus, I think the tests should remain.

Think about it like this: I'm developing software for a public deployment in a week, and one of my interfaces is used by some of the other teams on the project. Some of the teams met over lunch and chatted about making some agreeable changes to that interface. However, because of the looming deadline—and all of the teams that didn't come to lunch with us and don't know about the incoming changes yet—we plan to update that interface after the public deployment, to be deployed next time.

When I write tests, I want to make sure next week's deployment is suitable for the public and test based on the current interface. I don't assume the changes we want to make have been made.

After next week's deployment—and once the changes have been made and all teams are aware of them—the tests can be updated to match.

TL;DR - Tests should still remain.

The tests for this assignment should exhaustively align with the interface for this assignment. If and when the interface changes, the tests can and should change to match.

grahamwren commented 4 years ago

Asked in class just now, Jan responded you should not have written tests for Object and String. Instead, "you should have only tested the interface you designed with as few dependencies as possible." https://piazza.com/class/k51bluky59n2jr?cid=305

jjones-99 commented 4 years ago

All righty. In that case, makes sense.