(campaign_file)
| 357 | |
| 358 | |
| 359 | def parse_campaign_file(campaign_file): |
| 360 | test_campaign = TestCampaign("Test campaign") |
| 361 | test_campaign.filename = campaign_file.name |
| 362 | testset = None |
| 363 | test = None |
| 364 | testnb = 0 |
| 365 | |
| 366 | for line in campaign_file.readlines(): |
| 367 | if line[0] == '#': |
| 368 | continue |
| 369 | if line[0] == "~": |
| 370 | (test or testset or test_campaign).add_keywords(line[1:].split()) |
| 371 | elif line[0] == "%": |
| 372 | test_campaign.title = line[1:].strip() |
| 373 | elif line[0] == "+": |
| 374 | testset = TestSet(line[1:].strip()) |
| 375 | test_campaign.add_testset(testset) |
| 376 | test = None |
| 377 | elif line[0] == "=": |
| 378 | test = UnitTest(line[1:].strip()) |
| 379 | test.num = testnb |
| 380 | testnb += 1 |
| 381 | if testset is None: |
| 382 | error_m = "Please create a test set (i.e. '+' section)." |
| 383 | raise getopt.GetoptError(error_m) |
| 384 | testset.add_test(test) |
| 385 | elif line[0] == "*": |
| 386 | if test is not None: |
| 387 | test.comments += line[1:] |
| 388 | elif testset is not None: |
| 389 | testset.comments += line[1:] |
| 390 | else: |
| 391 | test_campaign.headcomments += line[1:] |
| 392 | else: |
| 393 | if test is None: |
| 394 | if line.strip(): |
| 395 | raise ValueError("Unknown content [%s]" % line.strip()) |
| 396 | else: |
| 397 | test.test += line |
| 398 | return test_campaign |
| 399 | |
| 400 | |
| 401 | def dump_campaign(test_campaign): |
no test coverage detected
searching dependent graphs…