Пример #1
0
def test_does_not_inherit_default():
    assert ChildMapper.default() != SpecificationMapper.default()
    SpecificationMapper.default().define_specification_for('foo', const(1))
    with pytest.raises(MissingSpecification):
        ChildMapper.default().specification_for('foo')
Пример #2
0
def test_can_define_specifications_on_the_default():
    sm = SpecificationMapper()
    SpecificationMapper.default().define_specification_for('foo', const(1))
    assert sm.specification_for('foo') == 1
Пример #3
0
def test_can_define_instance_specifications_on_the_default():
    sm = SpecificationMapper()
    SpecificationMapper.default().define_specification_for_instances(
        str, lambda _, i: i + 'bar')
    assert sm.specification_for('foo') == 'foobar'
Пример #4
0
def test_does_not_confuse_defaults():
    x = SpecificationMapper.default()
    assert Submapper.default() != x