我们如何在Elixir中测试`Range`类型

时间:2018-10-12 10:45:38

标签: types elixir

我们如何测试function submitForm(form) { if(checkform(form)) { // send form code alert('form was sent') } } 类型? Range等于什么?

is_range

3 个答案:

答案 0 :(得分:4)

为什么首先需要此功能? Range是一个结构。我们在您可能需要的任何地方都有模式匹配。只需将模式匹配到%Range{}就可以了。

答案 1 :(得分:1)

似乎内核中没有等效项,但是您可以自己创建它:

def is_range(%Range{}), do: true
def is_range(_), do: false

答案 2 :(得分:1)

与其他答案一样,Range是一个结构,您可以在其上进行模式匹配。 这是在ExUnit中进行测试的方式:

assert %Range{} = 1..5

如果要测试开始/结束值,可以执行以下操作:

assert %Range{end: 20} = 10..20