<?php

require '../vendor/autoload.php';
use Testify\Testify;
$tf = new Testify("Testify test himself");
$test = new Testify("//");
$tf->before(function ($tf) use($test) {
    $test->data->arr = array(1, 2, 3);
});
$tf->test("Pass/Fail test", function ($tf) use($test) {
    $tf->assert(true, "To be sure that initial test pass !");
    $tf->assertFalse(false);
    $tf->assert($test->pass());
    $tf->assertFalse(!$test->pass());
    $tf->assert(!$test->fail());
    $tf->assertFalse($test->fail());
});
$tf->test("Basic assert test", function ($tf) use($test) {
    $tf->assert($test->assert(true));
    $tf->assert(!$test->assert(false));
    $tf->assertFalse($test->assert(false));
    $tf->assertFalse(!$test->assert(true));
});
$tf->test("assertEquals/assertNotEquals test", function ($tf) use($test) {
    $tf->assert($test->assertEquals(1, 1));
    $tf->assert($test->assertEquals(-1337, '-1337'));
    $tf->assert($test->assertEquals(42.0, 42));
    $tf->assert($test->assertEquals(0, null));
    $tf->assert($test->assertEquals(0, ""));
    $tf->assert($test->assertEquals(1, true));
    $tf->assert($test->assertEquals(array(0, 1, 1), array(false, "1", true)));