-
Notifications
You must be signed in to change notification settings - Fork 22
/
test plan.txt
215 lines (200 loc) · 6.01 KB
/
test plan.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
TEST GENERAL
Test DebugMessage
Test DebugList
Test SaveDebugMessages
Test FailureMessage
Test SaveFailureMessages
Test InitializeMXPF
Test DefaultOptionsMXPF
Test FinalizeMXPF
TEST PATCH FILE SELECTION
Test PatchFileByAuthor
- InitializeMXPF not called
-> Verify mxPatchFile not assigned
- File exists
-> Verify mxPatchFile
-> Verify mxPatchFile's author
- File does not exist
-> Verify mxPatchFile is unassigned
- Multiple files
-> Should choose one highest in the user's load order
Test PatchFileByName
- InitializeMXPF not called
-> Verify mxPatchFile not assigned
- File exists
-> Verify mxPatchFile
TEST FILE SELECTION
Test SetExclusions
- InitializeMXPF not called
-> Verify mxFileMode = 0
- InitializeMXPF called
-> Verify mxFileMode = 1
-> Verify mxFiles = our files
Test SetInclusions
- InitializeMXPF not called
-> Verify mxFileMode = 0
-> InitializeMXPF called
-> Verify mxFileMode = 2
-> Verify mxFiles = our files
TEST RECORD PROCESSING
Test LoadRecords
- InitializeMXPF not called
-> Verify it doesn't cause an exception
- mxPatchFile not assigned
-> Verify it doesn't cause an exception
- mxPatchFile assigned
-> Verify mxMasters.Text
-> Verify mxRecords.Count
- Verify exclusion mode works
-> Verify mxMasters.Text
-> Verify mxRecords.Count
- Verify inclusion mode works
-> Verify mxMasters.Text
-> Verify mxRecords.Count
- Test mxLoadMasterRecords
-> Verify mxRecords.Count
- Test mxLoadOverrideRecords
-> Verify mxRecords.Count
- Test mxLoadWinningOverrides
-> Verify mxRecords.Count
Test LoadChildRecords
- InitializeMXPF not called
-> Verify it doesn't cause an exception
- mxPatchFile not assigned
-> Verify it doesn't cause an exception
- mxPatchFile assigned
-> Verify mxMasters.Text
-> Verify mxRecords.Count
- Verify exclusion mode works
-> Verify mxMasters.Text
-> Verify mxRecords.Count
- Verify inclusion mode works
-> Verify mxMasters.Text
-> Verify mxRecords.Count
- Test mxLoadMasterRecords
-> Verify mxRecords.Count
- Test mxLoadOverrideRecords
-> Verify mxRecords.Count
- Test mxLoadWinningOverrides
-> Verify mxRecords.Count
Test MaxRecordIndex
- InitializeMXPF not called
-> Verify it returns -1
- InitializeMXPF called
-> Verify it returns mxRecords.Count - 1
Test GetRecord
- InitializeMXPF not called
-> Verify it returns nil
- LoadRecords not called
-> Verify it returns nil
- No records
-> Verify it returns nil
- Invalid index
-> Verify it throws an exception
- Valid index
-> Verify it returns the correct record
Test RemoveRecord
- InitializeMXPF not called
-> Verify it throws an exception
- LoadRecords not called
-> Verify it throws an exception
- mxRecords.Count = 0
-> Verify it throws an exception
- Invalid index
-> Verify it throws an exception
- Valid index
-> Verify it removes the record from mxRecords
TEST RECORD PATCHING
Test AddMastersToPatch
- InitializeMXPF not called
-> Verify it throws an exception
-> Verify mxMastersAdded is false
- LoadRecords not called
-> Verify it throws an exception
-> Verify mxMastersAdded is false
- mxPatchfile not assigned
-> Verify it throws an exception
-> Verify mxMastersAdded is false
- mxPatchfile assigned
-> Verify mxMastersAdded is true
-> Verify the patch file has the new masters
Test CopyRecordToPatch
- InitializeMXPF not called
-> Verify it throws an exception
-> Verify mxCopyCalled is false
- LoadRecords not called
-> Verify it throws an exception
-> Verify mxCopyCalled is false
- mxPatchFile not assigned
-> Verify it throws an exception
-> Verify mxCopyCalled is false
- No records
-> Verify it throws an exception
-> Verify mxCopyCalled is false
- Invalid index
-> Verify it throws an exception
-> Verify mxCopyCalled is false
- Valid index
-> Verify mxCopyCalled is true
-> Verify mxMastersAdded is true
-> Verify the record is added to mxPatchRecords
-> Verify the record is present in the patch file
- mxSkipPatchedRecords
-> Verify mxCopyCalled is false
-> Verify mxMastersAdded is false
-> Verify the record isn't added to mxPatchRecords
-> Verify the record isn't present in the patch file
Test CopyRecordsToPatch
- InitializeMXPF not called
-> Verify it throws an exception
-> Verify mxCopyCalled is false
- LoadRecords not called
-> Verify it throws an exception
-> Verify mxCopyCalled is false
- mxPatchFile not assigned
-> Verify it throws an exception
-> Verify mxCopyCalled is false
- No records
-> Verify it throws an exception
-> Verify mxCopyCalled is false
- mxSkipPatchedRecords
-> Verify mxCopyCalled is true
-> Verify mxMastersAdded is true
-> Verify mxPatchRecords.Count
-> Verify records are in patch file
- mxCopyWinningOverrides
-> Verify the record copied is the winning override
-> Verify when winning override is in a file not in the file selection
Test MaxPatchRecordIndex
- InitializeMXPF not called
-> Verify it raises an exception
- InitializeMXPF called
-> Verify it returns mxPatchRecords.Count - 1
Test GetPatchRecord
- InitializeMXPF not called
-> Verify it returns nil
- No records copied
-> Verify it returns nil
- No records
-> Verify it returns nil
- Invalid index
-> Verify it throws an exception
- Valid index
-> Verify it returns the correct record
TEST MACROS
Test SetFileSelection
- Mode false
-> Verify in inclusion mode
-> Verify file selection is loaded into MXPF
- Mode true
-> Verify in exclusion mode
-> Verify file selection is loaded into MXPF
Test MultiLoad
- No signatures
-> Verify no records are loaded
- One signature
-> Verify records are loaded
- One signature pair
-> Verify records are loaded
- Multiple signatures and signature pairs
-> Verify records are loaded