(self)
| 2462 | 'resources: all,tzdata') |
| 2463 | |
| 2464 | def test_match_test(self): |
| 2465 | class Test: |
| 2466 | def __init__(self, test_id): |
| 2467 | self.test_id = test_id |
| 2468 | |
| 2469 | def id(self): |
| 2470 | return self.test_id |
| 2471 | |
| 2472 | # Restore patterns once the test completes |
| 2473 | patterns = get_match_tests() |
| 2474 | self.addCleanup(set_match_tests, patterns) |
| 2475 | |
| 2476 | test_access = Test('test.test_os.FileTests.test_access') |
| 2477 | test_chdir = Test('test.test_os.Win32ErrorTests.test_chdir') |
| 2478 | test_copy = Test('test.test_shutil.TestCopy.test_copy') |
| 2479 | |
| 2480 | # Test acceptance |
| 2481 | with support.swap_attr(support, '_test_matchers', ()): |
| 2482 | # match all |
| 2483 | set_match_tests([]) |
| 2484 | self.assertTrue(match_test(test_access)) |
| 2485 | self.assertTrue(match_test(test_chdir)) |
| 2486 | |
| 2487 | # match all using None |
| 2488 | set_match_tests(None) |
| 2489 | self.assertTrue(match_test(test_access)) |
| 2490 | self.assertTrue(match_test(test_chdir)) |
| 2491 | |
| 2492 | # match the full test identifier |
| 2493 | set_match_tests([(test_access.id(), True)]) |
| 2494 | self.assertTrue(match_test(test_access)) |
| 2495 | self.assertFalse(match_test(test_chdir)) |
| 2496 | |
| 2497 | # match the module name |
| 2498 | set_match_tests([('test_os', True)]) |
| 2499 | self.assertTrue(match_test(test_access)) |
| 2500 | self.assertTrue(match_test(test_chdir)) |
| 2501 | self.assertFalse(match_test(test_copy)) |
| 2502 | |
| 2503 | # Test '*' pattern |
| 2504 | set_match_tests([('test_*', True)]) |
| 2505 | self.assertTrue(match_test(test_access)) |
| 2506 | self.assertTrue(match_test(test_chdir)) |
| 2507 | |
| 2508 | # Test case sensitivity |
| 2509 | set_match_tests([('filetests', True)]) |
| 2510 | self.assertFalse(match_test(test_access)) |
| 2511 | set_match_tests([('FileTests', True)]) |
| 2512 | self.assertTrue(match_test(test_access)) |
| 2513 | |
| 2514 | # Test pattern containing '.' and a '*' metacharacter |
| 2515 | set_match_tests([('*test_os.*.test_*', True)]) |
| 2516 | self.assertTrue(match_test(test_access)) |
| 2517 | self.assertTrue(match_test(test_chdir)) |
| 2518 | self.assertFalse(match_test(test_copy)) |
| 2519 | |
| 2520 | # Multiple patterns |
| 2521 | set_match_tests([(test_access.id(), True), (test_chdir.id(), True)]) |
nothing calls this directly
no test coverage detected