如何在behat中测试当前日期条件?

问题描述 投票:0回答:1

我有一个基于当前日期的功能,问题是在场景中写if条件是否是一个好的解决方案。 简单的例子:如果测试日期等于当前日期,那么其他字段等于0,否则等于10。也许在symfony 4里有模拟当前日期时间的库。

testing symfony4 behat
1个回答
0
投票

你可以写一个这样的步骤。

Then I should see sysdate with format "Y-m-d" in the "example" field

那么对于你的上下文:

public function iShouldSeeSysdateWithFormatInTheField(string $format, string $key)
{
    $field = $this->getSession()->getPage()->findField($key);
    $value = (new DateTime())->format($format);

    if (is_null($field->getValue())) {
        assertEmpty($value);
    }

    if($value != $field->getValue()) {
        throw new Exception('date does not match');
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.