def mismatches_when_duplicate_is_missing():
    matcher = includes(equal_to("apple"), equal_to("apple"))

    assert_equal(
        unmatched(
            "was missing element:\n  * 'apple'\nThese elements were in the iterable, but did not match the missing element:\n  * 'apple': already matched"
        ), matcher.match(["apple"]))
Пример #2
0
def description_contains_descriptions_of_submatchers():
    matcher = includes(equal_to("apple"), equal_to("banana"))

    assert_equal(
        "iterable including elements:\n * 'apple'\n * 'banana'",
        matcher.describe()
    )
Пример #3
0
def elements_are_coerced_to_matchers():
    matcher = includes("apple", "banana")

    assert_equal(
        "iterable including elements:\n * 'apple'\n * 'banana'",
        matcher.describe()
    )
Пример #4
0
def mismatches_when_duplicate_is_missing():
    matcher = includes(equal_to("apple"), equal_to("apple"))

    assert_equal(
        unmatched("was missing element:\n * 'apple'\nThese elements were in the iterable, but did not match the missing element:\n * 'apple': already matched"),
        matcher.match(["apple"])
    )
Пример #5
0
def when_no_elements_are_expected_then_empty_iterable_matches():
    matcher = includes()

    assert_equal(
        matched(),
        matcher.match([])
    )
Пример #6
0
def mismatches_when_item_is_expected_but_iterable_is_empty():
    matcher = includes(equal_to("apple"))

    assert_equal(
        unmatched("iterable was empty"),
        matcher.match([])
    )
Пример #7
0
def mismatches_when_item_is_missing():
    matcher = includes(equal_to("apple"), equal_to("banana"), equal_to("coconut"))

    assert_equal(
        unmatched("was missing element:\n * 'banana'\nThese elements were in the iterable, but did not match the missing element:\n * 'coconut': was 'coconut'\n * 'apple': already matched"),
        matcher.match(["coconut", "apple"])
    )
Пример #8
0
def mismatches_when_actual_is_not_iterable():
    matcher = includes(equal_to("apple"))

    assert_equal(
        unmatched("was not iterable\nwas 0"),
        matcher.match(0)
    )
def mismatches_when_item_is_missing():
    matcher = includes(equal_to("apple"), equal_to("banana"),
                       equal_to("coconut"))

    assert_equal(
        unmatched(
            "was missing element:\n  * 'banana'\nThese elements were in the iterable, but did not match the missing element:\n  * 'coconut': was 'coconut'\n  * 'apple': already matched"
        ), matcher.match(["coconut", "apple"]))
Пример #10
0
 def test_object_type_has_field_param_types_in_child_types(self):
     User = schema.ObjectType("User", fields=lambda: (
         schema.field("name", type=schema.String, params=(
             schema.param("long", type=schema.Boolean),
         )),
     ))
     collected_types = schema.collect_types((User, ))
     assert_that(collected_types, includes(schema.Boolean))
Пример #11
0
 def test_object_type_has_interface_types_in_child_types(self):
     Person = schema.InterfaceType("Person", fields=lambda: (
         schema.field("name", type=schema.String),
     ))
     User = schema.ObjectType("User", fields=lambda: (
         schema.field("name", type=schema.String),
     ), interfaces=(Person, ))
     collected_types = schema.collect_types((User, ))
     assert_that(collected_types, includes(Person))
Пример #12
0
def matches_when_there_are_extra_items():
    matcher = includes(equal_to("apple"))

    assert_equal(matched(), matcher.match(["coconut", "apple"]))
Пример #13
0
def when_no_elements_are_expected_then_empty_iterable_matches():
    matcher = includes()

    assert_equal(matched(), matcher.match([]))
Пример #14
0
def mismatches_when_item_is_expected_but_iterable_is_empty():
    matcher = includes(equal_to("apple"))

    assert_equal(unmatched("iterable was empty"), matcher.match([]))
Пример #15
0
def mismatches_when_actual_is_not_iterable():
    matcher = includes(equal_to("apple"))

    assert_equal(unmatched("was not iterable\nwas 0"), matcher.match(0))
Пример #16
0
def elements_are_coerced_to_matchers():
    matcher = includes("apple", "banana")

    assert_equal("iterable including elements:\n  * 'apple'\n  * 'banana'",
                 matcher.describe())
Пример #17
0
def matches_when_there_are_extra_items():
    matcher = includes(equal_to("apple"))

    assert_equal(matched(), matcher.match(["coconut", "apple"]))
Пример #18
0
def description_contains_descriptions_of_submatchers():
    matcher = includes(equal_to("apple"), equal_to("banana"))

    assert_equal("iterable including elements:\n  * 'apple'\n  * 'banana'",
                 matcher.describe())
Пример #19
0
def matches_when_all_submatchers_match_one_item_with_no_items_leftover():
    matcher = includes(equal_to("apple"), equal_to("banana"))

    assert_equal(matched(), matcher.match(["apple", "banana"]))
    assert_equal(matched(), matcher.match(["apple", "banana", "coconut"]))
Пример #20
0
def matches_when_all_submatchers_match_one_item_with_no_items_leftover():
    matcher = includes(equal_to("apple"), equal_to("banana"))

    assert_equal(matched(), matcher.match(["apple", "banana"]))
    assert_equal(matched(), matcher.match(["apple", "banana", "coconut"]))
Пример #21
0
 def test_object_type_has_field_types_in_child_types(self):
     User = schema.ObjectType("User", fields=lambda: (
         schema.field("name", type=schema.String),
     ))
     collected_types = schema.collect_types((User, ))
     assert_that(collected_types, includes(schema.String))