📌  相关文章
📜  PHP 单元 | assertEqualsCanonicalizing()函数

📅  最后修改于: 2022-05-13 01:56:18.820000             🧑  作者: Mango

PHP 单元 | assertEqualsCanonicalizing()函数

assertEqualsCanonicalizing()函数是 PHPUnit 中的内置函数,用于断言预期变量和实际变量是否规范地相等。规范等于意味着在实际比较之前,两个数组都将被排序和比较。如果预期和实际相同,则此断言将返回 true,否则返回 false。如果为真,则断言的测试用例通过,否则测试用例失败。

句法:

assertEqualsCanonicalizing( mixed $expected, mixed $actual, string $message = '' )

参数:此函数接受三个参数,如上述语法所示。参数说明如下:

  • $expected:这个参数是一个混合变量,表示期望值。
  • $actual:此参数是一个混合变量,表示要与预期进行比较的实际值。
  • $message:此参数采用字符串值。当测试用例失败时,此字符串消息显示为错误消息。

下面的程序说明了 PHPUnit 中的 assertEqualsCanonicalizing()函数:

方案一:

assertEqualsCanonicalizing(
            $expected, $actual, 
            "expected and actual are not canonically equals"
        );
    }
}
  
?>

输出:

PHPUnit 8.2.5 by Sebastian Bergmann and contributors.

F                                                                   1 / 1 (100%)

Time: 65 ms, Memory: 10.00 MB

There was 1 failure:

1) GeeksPhpunitTestCase::testNegativeTestcaseForAssertEqualsCanonicalizing
expected and actual are not canonically equals
Failed asserting that two arrays are equal.
--- Expected
+++ Actual
@@ @@
 Array (
     0 => 1
     1 => 2
-    2 => 3
+    2 => 2
     3 => 4
 )

/home/shivam/Documents/geeks/phpunit/abc.php:13

FAILURES!
Tests: 1, Assertions: 1, Failures: 1.

方案二:

assertEqualsCanonicalizing(
            $expected, $actual, 
            "expected and actual are not canonically equals"
        );
    }
}
  
?>

输出:

PHPUnit 8.2.5 by Sebastian Bergmann and contributors.

.                                                                   1 / 1 (100%)

Time: 67 ms, Memory: 10.00 MB

OK (1 test, 1 assertion)

注意:要使用 phpunit 运行测试用例,请按照此处的步骤操作。此外,phpunit 7 及更高版本支持 assertEqualsCanonicalizing()。