Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django assertEquals()测试失败,即使答案相等_Django_Django Testing - Fatal编程技术网

Django assertEquals()测试失败,即使答案相等

Django assertEquals()测试失败,即使答案相等,django,django-testing,Django,Django Testing,我有一个功能: from django.contrib.gis.measure import Distance, D def RunLengthCalc(mod_ewdim, mod_ewspacing, cols): y = D(inch=mod_ewspacing) # user input x = D(inch=mod_ewdim) # user input z = D(inch=3) # constant lrun = ((x * cols) +

我有一个功能:

from django.contrib.gis.measure import Distance, D

def RunLengthCalc(mod_ewdim, mod_ewspacing, cols):
    y = D(inch=mod_ewspacing)  # user input
    x = D(inch=mod_ewdim)  # user input
    z = D(inch=3)  # constant
    lrun = ((x * cols) + (y * (cols - 1))) + zrun
    return lrun
还有我的测试:

def test_run_length_calculation(self):
    l = RunLengthCalc(26.5, 1, 25)
    self.assertEquals(l, D(inch=689.5))
但是当我运行测试时,我得到了一个非常令人困惑的错误:

AssertionError: Distance(inch=689.5) != Distance(inch=689.5)
我想不出这里有什么问题


任何帮助都将不胜感激。

关于如何实际实现距离类相等,似乎有一些有趣的事情:

阅读这些代码,看起来你所拥有的应该是有效的。。。但显然不是

我想您可以通过比较特定的单位值来解决问题,例如:


自组装质量(长英寸,深(英寸=689.5英寸)

嘿。虽然我不得不添加
round()
来约束相等性:
self.assertEquals(round(lrun.inch,0),round(D(inch=691.inch,0))