Beispiel #1
0
 def test_namespace(self):
     field = quiz.Field("dog", selection_set=(_.name.color("hooman").owner))
     result = quiz.types.load_field(
         Dog, field, {"name": "Fred", "color": "BROWN", "hooman": None}
     )
     assert isinstance(result, Dog)
     assert result == Dog(name="Fred", color=Color.BROWN, hooman=None)
Beispiel #2
0
    def test_query(self, schema):

        query = schema.query[_.license(key='MIT')]
        assert query == quiz.Query(cls=schema.Query,
                                   selections=quiz.SelectionSet(
                                       quiz.Field('license',
                                                  {'key': 'MIT'}), ))
        with pytest.raises(quiz.SelectionError):
            schema.query[_.foo]
Beispiel #3
0
 def test_namespace(self):
     field = quiz.Field('dog', selection_set=(_.name.color('hooman').owner))
     result = quiz.types.load_field(Dog, field, {
         'name': u'Fred',
         'color': u'BROWN',
         'hooman': None
     })
     assert isinstance(result, Dog)
     assert result == Dog(name=u'Fred', color=Color.BROWN, hooman=None)
Beispiel #4
0
    def test_query(self, schema):

        query = schema.query[_.license(key="MIT")]
        assert query == quiz.Query(
            cls=schema.Query,
            selections=quiz.SelectionSet(quiz.Field("license",
                                                    {"key": "MIT"})),
        )
        with pytest.raises(quiz.SelectionError):
            schema.query[_.foo]
Beispiel #5
0
 def test_primitive_type(self):
     result = quiz.types.load_field(int, quiz.Field('age'), 4)
     assert result == 4
Beispiel #6
0
 def test_enum(self):
     result = quiz.types.load_field(Color, quiz.Field('data'), 'BROWN')
     assert result is Color.BROWN
Beispiel #7
0
 def test_list(self, value, expect):
     field = quiz.Field('foo', selection_set=_.name)
     result = quiz.types.load_field(quiz.List[quiz.Nullable[Hobby]], field,
                                    value)
     assert result == expect
Beispiel #8
0
 def test_nullable(self, value, expect):
     result = quiz.types.load_field(quiz.Nullable[Color],
                                    quiz.Field('color'), value)
     assert result is expect
Beispiel #9
0
 def test_generic_scalar(self, value):
     result = quiz.types.load_field(quiz.GenericScalar, quiz.Field('data'),
                                    value)
     assert type(result) == type(value)  # noqa
     assert result == value
Beispiel #10
0
 def test_custom_scalar(self):
     result = quiz.types.load_field(MyDateTime, quiz.Field('foo'), 12345)
     assert isinstance(result, MyDateTime)
     assert result.dtime == datetime.fromtimestamp(12345)
Beispiel #11
0
 def test_enum(self):
     result = quiz.types.load_field(Color, quiz.Field("data"), "BROWN")
     assert result is Color.BROWN