$tf->test("assertSame/assertNotSame test", function ($tf) use($test) { $tf->assert($test->assertSame(-1, -1)); $tf->assert($test->assertNotSame(-1, -1.0)); $tf->assert($test->assertSame(20000000000.0, 20000000000.0)); $tf->assert($test->assertSame("\$", '$')); $tf->assert($test->assertSame(array(0, 1, true), array(0, 1, true))); $tf->assert($test->assertSame(255, 0xff)); $tf->assert($test->assertSame((int) 42.1, 42)); $tf->assert($test->assertNotSame(new \StdClass(), new \StdClass())); $tf->assertFalse($test->assertSame(1, "1")); $tf->assertFalse($test->assertSame(1.0, 1)); $tf->assertFalse($test->assertSame(2, (double) 2)); $tf->assertFalse($test->assertSame(new \StdClass(), (object) array())); }); $tf->test("assertInArray/assertNotInArray test", function ($tf) use($test) { $arr = array(1, 2, null, false, "1", "2"); $tf->assert($test->assertInArray(1, $arr)); $tf->assert($test->assertInArray(true, $arr)); $tf->assert($test->assertInArray(false, $arr)); $tf->assert($test->assertInArray(0, $arr)); $tf->assert($test->assertNotInArray(3, $arr)); $tf->assert($test->assertNotInArray("str", $arr)); $tf->assertFalse($test->assertInArray(-1, $arr)); $tf->assertFalse($test->assertInArray(array(0), $arr)); }); $tf->test("data set test", function ($tf) use($test) { $tf->assert($test->assertInArray(2, $test->data->arr)); $tf->assert($test->assertInArray(3, $test->data->arr)); $tf->assert($test->assertNotInArray(9, $test->data->arr)); }); $tf();
* */ require '../vendor/autoload.php'; use Testify\Testify; $tf = new Testify("A bit more advanced test suite"); // Before each is called before every test case $tf->beforeEach(function ($tf) { // Use the data property to share variables across tests $tf->data->arr = array('a', 'b', 'c', 'd', 'e', 'f'); }); $tf->test("Testing Array Pop", function ($tf) { $arr =& $tf->data->arr; $tf->assertEquals(array_pop($arr), 'f'); $tf->assertEquals(array_pop($arr), 'e'); $tf->assertEquals(array_pop($arr), 'd'); $tf->assertEquals(array_pop($arr), 'c'); }); $tf->test("Testing In Array", function ($tf) { // beforeEach has restored the array $arr =& $tf->data->arr; $tf->assertInArray('a', $arr); $tf->assertInArray('b', $arr); $tf->assertInArray('c', $arr); $tf->assertInArray('d', $arr); $tf->assertInArray('e', $arr); $tf->assertInArray('f', $arr); $tf->assertNotInArray('g', $arr); }); # It is even possible to include additional files with tests: include 'subtest.php'; $tf();