bg; BddlZddlmZddlmZGddeZdS)N)Rules)TestCasecHeZdZdZdZdZdZdZdZdZ dZ d Z d Z d S) TestRuleszTests for tap.rules.Rulesc\tj|_td|jS)Nz foobar.tap)unittest TestSuitesuiter)selfs e/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib/python3.11/site-packages/tap/tests/test_rules.py _make_onezTestRules._make_one s$')) \4:...cH|jd}|}|||dt |jj|d|jjdjj dS)NzSkip on Mondays.)directive_textr) factory make_planr handle_skipping_plan assertEquallenr _tests_line description)r skip_planruless r test_handles_skipping_planz$TestRules.test_handles_skipping_plansL**:L*MM    ""9--- C 122333 +TZ->q-A-G-STTTTTrc@|j}|}||d||jddd|||jdddddS)Nplanrr)rrr saw_planr _lines_seenr rrs r test_tracks_plan_linezTestRules.test_tracks_plan_lines|%%''   tR    *6215a8$??? *6215a8"=====rc|j}|}||d|d|d|jjdjj dS)N)*z7A plan must appear at the beginning or end of the file.r rrr r checkrr rrrr"s r test_errors_plan_not_at_endz%TestRules.test_errors_plan_not_at_end s|%%''   tR    B  E J a & 2     rc|}|d|d|jjdjjdS)Nr&zMissing a plan.r)r r(rr rrr)r rs r test_requires_planzTestRules.test_requires_plan,sM   B *DJ,=a,@,F,RSSSSSrcB|j}|}||d||d|d|d|jjdjj dS)Nr%r&z)Only one plan line is permitted per file.rr'r"s r test_only_one_planzTestRules.test_only_one_plan3s|%%''   tR    tR    B  7 J a & 2     rc|}|d|dd}||dS)z:A plan may appear on line 2 when line 1 is a version line.rr&)at_linefinal_line_countN)r saw_version_at_plan_on_valid_line assertTrue)r rvalids r test_plan_line_twozTestRules.test_plan_line_two@sU   Q))!b)II rcl|jd}|}||d||d|ddd|jj dj j dS)Nr&)expected_testsrr/z:Expected {expected_count} tests but only {seen_count} ran.)expected_count seen_countr) rrr r saw_testr(rformatr rrrr"s r 3test_errors_when_expected_tests_differs_from_actualz=TestRules.test_errors_when_expected_tests_differs_from_actualIs|%%R%88   tQ  A  H O O!a P   J a & 2      rcp|jd}|}|||dt |jj|dd|jjdj j dS)NzMissing something important.)reasonrzBailed: {reason}r) r make_bailr handle_bailrrr rr<rr)r bailrs r test_errors_on_bailzTestRules.test_errors_on_bailXs|%%-K%LL   $ C 122333   % %-K % L L J a & 2     rN) __name__ __module__ __qualname____doc__r rr#r)r+r-r6r=rCrr rrs##///UUU>>>    TTT              rr)r tap.rulesr tap.testsrrrHrr rKsp[ [ [ [ [ [ [ [ [ [ r