Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

Re^2: Testing test function

by sedusedan (Pilgrim)
on Sep 26, 2013 at 11:22 UTC ( [id://1055819]=note: print w/replies, xml ) Need Help??


in reply to Re: Testing test function
in thread Testing test function

I'm referring to Test-Simple's tests (yes, like the file you mentioned, t/More.t). Basically I have this test_foo() function that uses Test::More and does several calls to ok(), is(), is_deeply() and subtest() inside it. I want to test that test_foo() works. Specifically, aside from making sure that test_foo() can pass a test, I need to test that test_foo() can also fail a test. Something like:

#test_test_foo.t
#!perl
use Test::More;
ok( test_foo(a=>1), 'test_foo() should succeed if given a=1'); #1
ok(!test_foo(a=>2), 'test_foo() should fail if given a=2'); #2
done_testing;

That's the tricky part for me, since doing #2 will fail test_test_foo.t.

BTW, after looking at t/More.t, I also don't see that it tests failures like #2.

Replies are listed 'Best First'.
Re^3: Testing test function
by choroba (Cardinal) on Sep 26, 2013 at 11:32 UTC
    Untested: What about
    ok(! eval { test_foo(a=>2) ; 1}, 'test_foo() should fail for a=2'); is($@, 'invalid argument', 'expected error');
    لսႽ† ᥲᥒ⚪⟊Ⴙᘓᖇ Ꮅᘓᖇ⎱ Ⴙᥲ𝇋ƙᘓᖇ
      I'm afraid that wouldn't work, because test_foo() emits TAP as well as uses the same Test::Builder instance (since it uses Test::More also) and will interfere with the test script.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1055819]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others chilling in the Monastery: (2)
As of 2025-12-11 19:41 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    What's your view on AI coding assistants?





    Results (92 votes). Check out past polls.

    Notices?
    hippoepoptai's answer Re: how do I set a cookie and redirect was blessed by hippo!
    erzuuliAnonymous Monks are no longer allowed to use Super Search, due to an excessive use of this resource by robots.