I am sort-of giving up the dependency injection idea, at least for the first pass, as the end result could be achieved by calling the function that returns the fixture.

In your example I wonder what kind of fixture could be such common feature without making the tests accidentally impacting each other. First thought that $fixture_A must be some resource that is not changed during the tests or that we can be sure that they change it in an independent way. (eg. in the case of a tempdir this could mean one of them creates file1.txt the other one creates file2.txt.)

However this sound a bit risky as the tests might accidentally step on each others toes.

However this way it is the decision of the author of the test.

{ my $fixture_A = temdir(); # fixture in closure sub test1 { my $fixture_B = get_fixture_b(); # uses fixture A and B } sub test2 { my $fixture_C = get_fixture_c(); # uses fixture A and B } }

In reply to Re^12: Introspecting function signatures by szabgab
in thread Introspecting function signatures by szabgab

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.