@@ -123,35 +123,28 @@ TEST(PipelineDefinitionStatus, ValidationPassThenThenRetireThenRetireShouldThrow
123
123
ASSERT_THROW (pds.handle (RetireEvent ()), std::logic_error);
124
124
}
125
125
126
- TEST (PipelineDefinitionStatus, ValidationPassThenThenRetireThenValidationPass ) {
126
+ TEST (PipelineDefinitionStatus, ValidationPassThenRetireThenReloadThenValidationPass ) {
127
127
PipelineDefinitionStatus pds (unusedPipelineName);
128
128
ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::BEGIN);
129
129
pds.handle (ValidationPassedEvent ());
130
130
ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::AVAILABLE);
131
131
pds.handle (RetireEvent ());
132
132
ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::RETIRED);
133
+ pds.handle (ReloadEvent ());
134
+ ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::RELOADING);
133
135
pds.handle (ValidationPassedEvent ());
134
136
ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::AVAILABLE);
135
137
}
136
138
137
- TEST (PipelineDefinitionStatus, ValidationPassThenThenRetireThenValidationFail) {
138
- PipelineDefinitionStatus pds (unusedPipelineName);
139
- ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::BEGIN);
140
- pds.handle (ValidationPassedEvent ());
141
- ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::AVAILABLE);
142
- pds.handle (RetireEvent ());
143
- ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::RETIRED);
144
- pds.handle (ValidationFailedEvent ());
145
- ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::LOADING_PRECONDITION_FAILED);
146
- }
147
-
148
- TEST (PipelineDefinitionStatus, ValidationPassThenRetireThenValidationFail) {
139
+ TEST (PipelineDefinitionStatus, ValidationPassThenRetireThenReloadThenValidationFail) {
149
140
PipelineDefinitionStatus pds (unusedPipelineName);
150
141
ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::BEGIN);
151
142
pds.handle (ValidationPassedEvent ());
152
143
ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::AVAILABLE);
153
144
pds.handle (RetireEvent ());
154
145
ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::RETIRED);
146
+ pds.handle (ReloadEvent ());
147
+ ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::RELOADING);
155
148
pds.handle (ValidationFailedEvent ());
156
149
ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::LOADING_PRECONDITION_FAILED);
157
150
}
@@ -167,33 +160,82 @@ TEST(PipelineDefinitionStatus, ValidationPassThenValidationPassShouldThrow) {
167
160
ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::BEGIN);
168
161
pds.handle (ValidationPassedEvent ());
169
162
ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::AVAILABLE);
170
- pds. handle ( ValidationPassedEvent ());
171
- ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::AVAILABLE );
163
+ // should be reload in between
164
+ ASSERT_THROW (pds.handle ( ValidationPassedEvent ()), std::logic_error );
172
165
}
173
166
174
167
TEST (PipelineDefinitionStatus, ValidationPassThenValidationFailShouldThrow) {
175
168
PipelineDefinitionStatus pds (unusedPipelineName);
176
169
ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::BEGIN);
177
170
pds.handle (ValidationPassedEvent ());
178
171
ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::AVAILABLE);
172
+ // should be reload in between
173
+ ASSERT_THROW (pds.handle (ValidationFailedEvent (modelNotifyingDetails)), std::logic_error);
174
+ }
175
+
176
+ TEST (PipelineDefinitionStatus, ValidationFailThenValidationFailShouldThrow) {
177
+ PipelineDefinitionStatus pds (unusedPipelineName);
178
+ ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::BEGIN);
179
179
pds.handle (ValidationFailedEvent ());
180
180
ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::LOADING_PRECONDITION_FAILED);
181
+ // should be reload in between
182
+ ASSERT_THROW (pds.handle (ValidationFailedEvent (modelNotifyingDetails)), std::logic_error);
181
183
}
182
184
183
- TEST (PipelineDefinitionStatus, ValidationFailThenValidationFailShouldThrow ) {
185
+ TEST (PipelineDefinitionStatus, ValidationFailThenValidationPassShouldThrow ) {
184
186
PipelineDefinitionStatus pds (unusedPipelineName);
185
187
ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::BEGIN);
186
188
pds.handle (ValidationFailedEvent ());
187
189
ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::LOADING_PRECONDITION_FAILED);
190
+ // should be reload in between
191
+ ASSERT_THROW (pds.handle (ValidationPassedEvent ()), std::logic_error);
192
+ }
193
+
194
+ TEST (PipelineDefinitionStatus, ValidationFailThenReloadThenValidationFail) {
195
+ PipelineDefinitionStatus pds (unusedPipelineName);
196
+ ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::BEGIN);
188
197
pds.handle (ValidationFailedEvent ());
189
198
ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::LOADING_PRECONDITION_FAILED);
199
+ pds.handle (ReloadEvent ());
200
+ ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::RELOADING);
201
+ pds.handle (ValidationFailedEvent (modelNotifyingDetails));
202
+ ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::LOADING_PRECONDITION_FAILED);
190
203
}
191
204
192
- TEST (PipelineDefinitionStatus, ValidationFailThenValidationPassShouldThrow ) {
205
+ TEST (PipelineDefinitionStatus, ValidationFailThenReloadThenValidationPass ) {
193
206
PipelineDefinitionStatus pds (unusedPipelineName);
194
207
ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::BEGIN);
195
208
pds.handle (ValidationFailedEvent ());
196
209
ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::LOADING_PRECONDITION_FAILED);
210
+ pds.handle (ReloadEvent ());
211
+ ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::RELOADING);
212
+ pds.handle (ValidationPassedEvent ());
213
+ ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::AVAILABLE);
214
+ }
215
+
216
+ TEST (PipelineDefinitionStatus, ValidationPassThenRetireThenValidationPassShouldThrow) {
217
+ PipelineDefinitionStatus pds (unusedPipelineName);
218
+ ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::BEGIN);
219
+ pds.handle (ValidationPassedEvent ());
220
+ ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::AVAILABLE);
221
+ pds.handle (RetireEvent ());
222
+ ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::RETIRED);
223
+ // should be reload in between
224
+ ASSERT_THROW (pds.handle (ValidationPassedEvent ()), std::logic_error);
225
+ }
226
+
227
+ TEST (PipelineDefinitionStatus, ValidationPassThenRetireThenValidationFailShouldThrow) {
228
+ PipelineDefinitionStatus pds (unusedPipelineName);
229
+ ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::BEGIN);
197
230
pds.handle (ValidationPassedEvent ());
198
231
ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::AVAILABLE);
232
+ pds.handle (RetireEvent ());
233
+ ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::RETIRED);
234
+ // should be reload in between
235
+ ASSERT_THROW (pds.handle (ValidationFailedEvent ()), std::logic_error);
236
+ }
237
+ TEST (PipelineDefinitionStatus, ReloadFromBeginShouldThrow) {
238
+ PipelineDefinitionStatus pds (unusedPipelineName);
239
+ ASSERT_EQ (pds.getStateCode (), ovms::PipelineDefinitionStateCode::BEGIN);
240
+ ASSERT_THROW (pds.handle (ReloadEvent ()), std::logic_error);
199
241
}
0 commit comments