You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+5-4Lines changed: 5 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -122,13 +122,14 @@ However, *DO NOT* be afraid to say, "that looks terrible", and tweak it until it
122
122
7. Use "real" names for data in test data set. Either use actual real location/project/basin/etc names, or make up something that feels like one.
123
123
a. NOTE: within reason. Location names, absolutely, but otherwise make sure the purpose of the name is clear.
124
124
8. Name files consistent with the purpose of the test.
125
-
9. Narrative tests: Test method names should be a narrative summary of the test. For example, `test_stream_create_then_update_then_delete_success(...)`. <br>
125
+
9. Narrative tests: Test method names should be a narrative summary of the test. For example, `test_stream_create_then_update_then_delete_success()`. <br>
126
126
a. Use underscores to make the narrative structure of the test name clear.<br>
127
-
b. The method name should be a clear summary of what is being tested (create, get, update, delete) in order of operations.<br>
127
+
b. The method name should be a clear summary of what is being tested (create, get, update, delete) in order of operations. Not how the above example follows this with use of <i>then</i><br>
128
128
c. It should also include the expected result (success, error code, etc.)<br>
129
-
d. Comments should also be used in narrative flow to clarify the details of the test internally, but not as a substitute for a clear method name.<br>
129
+
d. Comments should also be used in narrative flow to clarify the details of the test internally, but not as a substitute for a clear method name. (example: [StreamControllerTestIT comments](https://github.com/USACE/cwms-data-api/blob/a1d265372ead2db0123b74ff0ffa6c76a7e21949/cwms-data-api/src/test/java/cwms/cda/api/StreamControllerTestIT.java#L124)<br>
130
130
e. Setup and tear down methods should also be clearly labelled as such. Setup/teardown methods should call into well-named helper methods to clarify the purpose of the setup/teardown steps.<br>
131
-
(example: setup method calls helper method `create_test_location()` followed by `create_test_time_series()` to clarify the purpose of the setup step)<br>
131
+
(example: setup method calls helper method `create_test_location()` followed by `create_test_time_series()` to clarify the purpose of the setup step<br>
132
+
likewise, the tear down method calls helper method `delete_test_time_series()` followed by `delete_test_location()` to clarify the purpose of the tear down step)<br>
0 commit comments