Changeset be07995 in mainline for uspace/srv/sysman/test/job_closure.c
- Timestamp:
- 2019-08-17T13:54:09Z (6 years ago)
- Children:
- 8d74fdd
- Parents:
- 015b147
- git-author:
- Michal Koutný <xm.koutny+hos@…> (2016-01-10 23:36:33)
- git-committer:
- Matthieu Riolo <matthieu.riolo@…> (2019-08-17 13:54:09)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/sysman/test/job_closure.c
r015b147 rbe07995 32 32 33 33 #include "../job_closure.h" 34 #include "../repo.h" 34 35 35 36 #include "mock_unit.h" … … 50 51 { 51 52 if (expected->size != actual->size) { 52 printf("%s: |expected| - |actual| =%u\n",53 __func__, expected->size -actual->size);53 printf("%s: |expected|, |actual| = %u, %u\n", 54 __func__, expected->size, actual->size); 54 55 return false; 55 56 } … … 119 120 rc = dyn_array_reserve(&act_closure, MAX_TYPES * MAX_UNITS); 120 121 assert(rc == EOK); 122 123 repo_init(); 121 124 } 122 125 … … 148 151 assert(main_job); 149 152 150 int rc = job_create_closure(main_job, &act_closure );153 int rc = job_create_closure(main_job, &act_closure, 0); 151 154 PCUT_ASSERT_INT_EQUALS(EOK, rc); 152 155 … … 179 182 assert(main_job); 180 183 181 int rc = job_create_closure(main_job, &act_closure );184 int rc = job_create_closure(main_job, &act_closure, 0); 182 185 PCUT_ASSERT_INT_EQUALS(EOK, rc); 183 186 … … 212 215 assert(main_job); 213 216 214 int rc = job_create_closure(main_job, &act_closure );217 int rc = job_create_closure(main_job, &act_closure, 0); 215 218 PCUT_ASSERT_INT_EQUALS(EOK, rc); 216 219 … … 227 230 } 228 231 232 PCUT_TEST(job_closure_isolate_linears) { 233 unit_t *u0 = mock_units[UNIT_SERVICE][0]; 234 unit_t *u1 = mock_units[UNIT_SERVICE][1]; 235 unit_t *u2 = mock_units[UNIT_SERVICE][2]; 236 unit_t *u3 = mock_units[UNIT_SERVICE][3]; 237 unit_t *u4 = mock_units[UNIT_SERVICE][4]; 238 unit_t *u5 = mock_units[UNIT_SERVICE][5]; 239 unit_t *u6 = mock_units[UNIT_SERVICE][6]; 240 repo_begin_update(); 241 for (int i = 0; i < 7; ++i) { 242 repo_add_unit(mock_units[UNIT_SERVICE][i]); 243 } 244 repo_commit(); 245 246 /* 247 * 248 * u0 -> u1 -> u2 249 * 250 * u3 -> u4 -> u5 251 * 252 * u6 253 */ 254 mock_add_edge(u0, u1); 255 mock_add_edge(u1, u2); 256 257 mock_add_edge(u3, u4); 258 mock_add_edge(u4, u5); 259 260 job_t *main_job = job_create(u1, STATE_STARTED); 261 assert(main_job); 262 263 int rc = job_create_closure(main_job, &act_closure, CLOSURE_ISOLATE); 264 PCUT_ASSERT_INT_EQUALS(EOK, rc); 265 266 dyn_array_append(&exp_closure, job_t *, dummy_job(u0, STATE_STOPPED)); 267 dyn_array_append(&exp_closure, job_t *, dummy_job(u1, STATE_STARTED)); 268 dyn_array_append(&exp_closure, job_t *, dummy_job(u2, STATE_STARTED)); 269 dyn_array_append(&exp_closure, job_t *, dummy_job(u3, STATE_STOPPED)); 270 dyn_array_append(&exp_closure, job_t *, dummy_job(u4, STATE_STOPPED)); 271 dyn_array_append(&exp_closure, job_t *, dummy_job(u5, STATE_STOPPED)); 272 dyn_array_append(&exp_closure, job_t *, dummy_job(u6, STATE_STOPPED)); 273 274 dummy_add_closure(&act_closure); 275 276 PCUT_ASSERT_TRUE(same_jobs(&exp_closure, &act_closure)); 277 PCUT_ASSERT_TRUE(job_blocked(u1->job, u2->job)); 278 279 PCUT_ASSERT_TRUE(job_blocked(u5->job, u4->job)); 280 PCUT_ASSERT_TRUE(job_blocked(u4->job, u3->job)); 281 282 PCUT_ASSERT_INT_EQUALS(0, u6->job->blocking_jobs); 283 PCUT_ASSERT_INT_EQUALS(0, u0->job->blocking_jobs); 284 } 229 285 230 286 PCUT_EXPORT(job_closure);
Note:
See TracChangeset
for help on using the changeset viewer.