小编Wol*_*lvt的帖子

PHPUnit - 对静态方法使用$ this或self?

我不想写长篇文章,因为这是一个简短的问题.PHPUnit测试包含几个静态的方法.例如所有那些\PHPUnit\Framework\Assert::assert*()方法以及identicalTo,equalTo.

我的IDE(具有IntelliSense /自动完成功能)不接受使用$this,但使用self.我已经知道应该通过类调用静态函数,而不是对象self.

什么更正确?

$this->assertTrue('test');
Run Code Online (Sandbox Code Playgroud)

要么

self::assertTrue('test');
Run Code Online (Sandbox Code Playgroud)

(如果"$ this"更正确,你能否指出为什么我们不应该使用"自我"?)

php oop phpunit unit-testing self

20
推荐指数
1
解决办法
3691
查看次数

Future [Any]和Future [_]之间的区别

好的,我想标题中的问题已经完成。没什么大不了,但我只是想知道。我有一个返回正确值或错误代码枚举项的方法。例如这样的事情:

def doMyStuff(): Future[_] = {
    val result = db.queryMyData().map {
        case some(data) =>
            val modifiedData = data.doStuff()
            modifiedData
        case None =>
            Errors.THIS_IS_FALSE
    }
    result
}
Run Code Online (Sandbox Code Playgroud)

Where db.queryMyData()返回一个Future,并且data.doStuff()只修改数据。

现在我已经直观地编写了Future[_],导致返回值很灵活。但是当我在其他库中查找时,我已经看到Future[Any]使用过的。当在函数返回时使用区分大小写以检查它是哪个数据时,这似乎也是逻辑。

使用的代码例如是这样的:

doMyStuff().map {
    case data: MyDataType => // Blah blah
    case Errors.Value => // error handling
}
Run Code Online (Sandbox Code Playgroud)

因此,我的问题是:在此处使用Any_有什么区别,为什么我应该使用正确的

scala future

5
推荐指数
1
解决办法
570
查看次数

标签 统计

future ×1

oop ×1

php ×1

phpunit ×1

scala ×1

self ×1

unit-testing ×1