CSC/ECE 517 Spring 2013/OSS E608: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
Line 35: | Line 35: | ||
== List of New Unit Tests and Testcases == | == List of New Unit Tests and Testcases == | ||
The following lists shows new unit files and/or new testcases: | The following lists shows new unit files and/or new testcases: | ||
* test/unit/course_node_test.rb (new test file) | |||
** test_get_children_with_show_true_and_non_TA_and_ascending_order_by_name | |||
** test_get_children_with_show_true_and_non_TA_and_descending_order_by_name | |||
** test_get_children_with_show_true_and_TA_and_ascending_order_by_name | |||
** test_get_children_with_show_true_and_TA_and_descending_order_by_name | |||
** test_get_children_with_show_false_and_non_TA_and_ascending_order_by_name | |||
** test_get_children_with_show_false_and_non_TA_and_descending_order_by_name | |||
** test_get_children_with_show_false_and_TA_and_ascending_order_by_name | |||
** test_get_children_with_show_false_and_TA_and_descending_order_by_name | |||
** test_get_children_with_show_false_and_non_TA_and_nil_order_by_nil | |||
** test_get_name | |||
** test_get_directory | |||
** test_get_creation_date | |||
** test_get_modified_date | |||
** test_get_teams | |||
* test/unit/course_test.rb (previously existing test file) | * test/unit/course_test.rb (previously existing test file) | ||
** test_get_teams | ** test_get_teams | ||
Line 42: | Line 57: | ||
** test_add_participant | ** test_add_participant | ||
** test_copy_participants | ** test_copy_participants | ||
** test_create_course_node | ** test_create_course_node | ||
== List of Modified Unit Tests == | == List of Modified Unit Tests == |
Revision as of 19:08, 10 March 2013
E608. Refactoring and Testing - Course Related Classes
Classes Involved:
- models/course.rb (76 lines)
- models/course_participant.rb (94 lines)
- models/course_team.rb (116 lines)
- models/course_node.rb (95 lines)
What it does: Involves creation and management of courses in Expertiza
What needs to be done:
- It is not clear what a method named 'create_node' is doing in the 'course' class. Refactor by renaming this method appropriately.
- In the course_team class the import method seems to be doing too many things. See if this method can be broken down into smaller methods with specific functionality.
- The 'get' method in course_node.rb appears to be doing a lot. Refactor this method by breaking it up into smaller methods.
- Look for any unused methods or variables in these files.
- Also apply other refactorings such as Rename variable, Rename method to give the variables and methods more meaningful names.
- Write unit tests for all the methods in each of the listed model classes.
Changes for models/course.rb
The following changes were made:
- Renamed create_node method to create_course_node to accurately reflect the functionality of the method.
- Added the line "has_many :assigments, :dependent => :destroy" to allow CourseTest.test_destroy unit test to pass.
Changes for models/course_participant.rb
Changes for models/course_team.rb
Changes for models/course_node.rb
Miscellaneous Changes for Quality Improvement and Readability
List of New Unit Tests and Testcases
The following lists shows new unit files and/or new testcases:
- test/unit/course_node_test.rb (new test file)
- test_get_children_with_show_true_and_non_TA_and_ascending_order_by_name
- test_get_children_with_show_true_and_non_TA_and_descending_order_by_name
- test_get_children_with_show_true_and_TA_and_ascending_order_by_name
- test_get_children_with_show_true_and_TA_and_descending_order_by_name
- test_get_children_with_show_false_and_non_TA_and_ascending_order_by_name
- test_get_children_with_show_false_and_non_TA_and_descending_order_by_name
- test_get_children_with_show_false_and_TA_and_ascending_order_by_name
- test_get_children_with_show_false_and_TA_and_descending_order_by_name
- test_get_children_with_show_false_and_non_TA_and_nil_order_by_nil
- test_get_name
- test_get_directory
- test_get_creation_date
- test_get_modified_date
- test_get_teams
- test/unit/course_test.rb (previously existing test file)
- test_get_teams
- test_get_path
- test_get_participants
- test_get_participant
- test_add_participant
- test_copy_participants
- test_create_course_node