View raw

1 " 2 A MFTSetGroupPrescriptionTest is a test class for testing the behavior of MFTSetGroupPrescription 3 " 4 Class { 5 #name : 'MFTSetGroupPrescriptionTest', 6 #superclass : 'TestCase', 7 #category : 'MyFitnessTracker-Core-Tests-Prescription', 8 #package : 'MyFitnessTracker-Core-Tests', 9 #tag : 'Prescription' 10 } 11 12 { #category : 'tests' } 13 MFTSetGroupPrescriptionTest >> testInitializeCreatesEmptySetCollection [ 14 15 | group | 16 group := MFTSetGroupPrescription new. 17 18 self assert: group sets isEmpty. 19 self assert: group sets class equals: OrderedCollection 20 ] 21 22 { #category : 'tests' } 23 MFTSetGroupPrescriptionTest >> testNewGroupHasZeroSetCount [ 24 25 | group | 26 group := MFTSetGroupPrescription new. 27 28 self assert: group setCount equals: 0 29 ] 30 31 { #category : 'tests' } 32 MFTSetGroupPrescriptionTest >> testSetsAccessorStoresGivenCollection [ 33 34 | group sets | 35 group := MFTSetGroupPrescription new. 36 sets := OrderedCollection with: Object new with: Object new. 37 38 group sets: sets. 39 40 self assert: group sets identicalTo: sets. 41 self assert: group setCount equals: 2 42 ] 43 44 { #category : 'tests' } 45 MFTSetGroupPrescriptionTest >> testSetsCollectionCanBeMutatedThroughAccessor [ 46 47 | group set | 48 group := MFTSetGroupPrescription new. 49 set := Object new. 50 51 group sets add: set. 52 53 self assert: group setCount equals: 1. 54 self assert: group sets first identicalTo: set 55 ] 56 57 { #category : 'tests' } 58 MFTSetGroupPrescriptionTest >> testUniqueExercisesInSetsAnswersEmptySetWhenThereAreNoSets [ 59 60 | group uniqueExercises | 61 group := MFTSetGroupPrescription new. 62 63 uniqueExercises := group uniqueExercisesInSets. 64 65 self assert: uniqueExercises isEmpty. 66 self assert: uniqueExercises class equals: Set 67 ] 68 69 { #category : 'tests' } 70 MFTSetGroupPrescriptionTest >> testValidateIsAbstract [ 71 72 self 73 should: [ MFTSetGroupPrescription new validate ] 74 raise: SubclassResponsibility 75 ] 76 77 { #category : 'tests' } 78 MFTSetGroupPrescriptionTest >> testWithSetsRequiresConcreteValidation [ 79 80 self 81 should: [ MFTSetGroupPrescription withSets: #( 1 2 3 ) ] 82 raise: SubclassResponsibility 83 ] 84