SimpleTest:assertEquals 和 PHP 类型

发布于 2024-10-13 02:11:47 字数 630 浏览 3 评论 0原文

考虑以下代码:

<?php
class Foo extends UnitTestCase {
    public function testFoo() {
        $foo = new Foo();
        $this->assertEqual('2, 3', $foo->bar(3));
    }
}
?>

<?php
class Foo {
    public function bar() {
        return 2;
    }
}
?>

'2, 3' == $foo->bar (2) 因为 PHP 允许这样做。本次测试通过!但在某些情况下是错误的(“2, 3”字符串与 2 个整数不同。

来自 EqualExpectation 类的 SimpleTest 测试方法:

function test($compare) {
    return (($this->value == $compare) && ($compare == $this->value));
}

是否有一种方法可以在 SimpleTest 中测试它?而不是 ==,而是使用 === 的方法。 .. 谢谢。

Considering the following code:

<?php
class Foo extends UnitTestCase {
    public function testFoo() {
        $foo = new Foo();
        $this->assertEqual('2, 3', $foo->bar(3));
    }
}
?>

<?php
class Foo {
    public function bar() {
        return 2;
    }
}
?>

'2, 3' == $foo->bar (2) because PHP allow that. This test pass! But it is wrong in some cases ('2, 3' string is different from 2 integer.

SimpleTest test method from EqualExpectation class:

function test($compare) {
    return (($this->value == $compare) && ($compare == $this->value));
}

Is there a method to test that in SimpleTest? Instead of ==, a method that uses === ...
Thank you.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

风情万种。 2024-10-20 02:11:47

来自 SimpleTest 文档

assertIdentical($x, $y) Fail if $x == $y is false or a type mismatch

From the SimpleTest documents:

assertIdentical($x, $y) Fail if $x == $y is false or a type mismatch
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文