Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

PHPUnit test function outside class

I am very new to PHPUnit and unit-testing, so I have a questing: Can I test a function outside a class like:

    function odd_or_even( $num ) {
    return $num%2; // Returns 0 for odd and 1 for even
}

class test extends PHPUnit_Framework_TestCase {
    public function odd_or_even_to_true() {
        $this->assetTrue( odd_or_even( 4 ) == true );
    }
}

Right now it just returns:

No tests found in class "test".
like image 399
Theadamlt Avatar asked Jun 29 '12 22:06

Theadamlt


1 Answers

You need to prefix your function names with 'test' in order for them to be recognized as a test.

From the documentation:

  1. The tests are public methods that are named test*.

Alternatively, you can use the @test annotation in a method's docblock to mark it as a test method.

There should be no problem calling odd_or_even().

For example:

class test extends PHPUnit_Framework_TestCase {
    public function test_odd_or_even_to_true() {
        $this->assertTrue( odd_or_even( 4 ) == true );
    }
}
like image 93
Doug Owings Avatar answered Oct 09 '22 08:10

Doug Owings