接受任何数字,例如

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

在我的客户契约中,我有类似的规则>

{
   foo: like(1.2)
}

我想要的是foo是一个浮点数或整数。在提供者方面,但是pact测试无法对整数进行测试。

我的提供方(PHP)看起来像这样:

myApi() {
   return [
      foo => (float) 1 // Returns 1 in PHP, not 1.0
   ];
}

提供者真的需要返回1.0而不是1还是可以用其他方式写合同?

在我的客户协议中,我有类似{foo:like(1.2)}的规则,我想要求的是foo是浮点数或整数。但是,在提供者方面,对整数的协议测试失败。 ...

php pact
2个回答
0
投票

不需要它,因为如果您使用var_dump(foo)相同;那么您会发现它的类型为float。如果该值包含更高的精度或小数点后的值,则它将返回该浮点值,但对于1.0、2.0、3.0、4.0、11.0、123.0...。即,如果小数点后除0之外没有数字,则它将始终以最大的单个数字输出,即1,2,11,123


0
投票

请参阅https://github.com/pact-foundation/pact-ruby/issues/191(以及其他相关内容,例如https://github.com/pact-foundation/pact-js/issues/94)。实际上,该框架现在应该由基于反馈和讨论的框架来支持。

© www.soinside.com 2019 - 2024. All rights reserved.