예제 #1
0
def test_predicate_parse():
    st = SpaceTrackClient('identity', 'password')

    predicates_data = [
        {
            'Default': '',
            'Extra': '',
            'Field': 'TEST',
            'Key': '',
            'Null': 'NO',
            'Type': '%brokentype'
        }
    ]

    with pytest.raises(ValueError):
        st._parse_predicates_data(predicates_data)

    predicates_data = [
        {
            'Default': '',
            'Extra': '',
            'Field': 'TEST',
            'Key': '',
            'Null': 'NO',
            'Type': 'unknowntype'
        }
    ]

    with pytest.raises(ValueError):
        st._parse_predicates_data(predicates_data)

    predicates_data = [
        {
            'Default': '',
            'Extra': '',
            'Field': 'TEST',
            'Key': '',
            'Null': 'NO',
            'Type': 'enum()'
        }
    ]

    with pytest.raises(ValueError):
        st._parse_predicates_data(predicates_data)

    predicates_data = [
        {
            'Default': '',
            'Extra': '',
            'Field': 'TEST',
            'Key': '',
            'Null': 'NO',
            'Type': "enum('a','b')"
        }
    ]

    predicate = st._parse_predicates_data(predicates_data)[0]
    assert predicate.values == ('a', 'b')
예제 #2
0
def test_predicate_parse():
    st = SpaceTrackClient('identity', 'password')

    predicates_data = [{
        'Default': '',
        'Extra': '',
        'Field': 'TEST',
        'Key': '',
        'Null': 'NO',
        'Type': '%brokentype'
    }]

    with pytest.raises(ValueError):
        st._parse_predicates_data(predicates_data)

    predicates_data = [{
        'Default': '',
        'Extra': '',
        'Field': 'TEST',
        'Key': '',
        'Null': 'NO',
        'Type': 'unknowntype'
    }]

    with pytest.raises(ValueError):
        st._parse_predicates_data(predicates_data)

    predicates_data = [{
        'Default': '',
        'Extra': '',
        'Field': 'TEST',
        'Key': '',
        'Null': 'NO',
        'Type': 'enum()'
    }]

    with pytest.raises(ValueError):
        st._parse_predicates_data(predicates_data)

    predicates_data = [{
        'Default': '',
        'Extra': '',
        'Field': 'TEST',
        'Key': '',
        'Null': 'NO',
        'Type': "enum('a','b')"
    }]

    predicate = st._parse_predicates_data(predicates_data)[0]
    assert predicate.values == ('a', 'b')
예제 #3
0
def test_predicate_parse_modeldef():
    st = SpaceTrackClient('identity', 'password')

    predicates_data = [{
        'Default': '',
        'Extra': '',
        'Field': 'TEST',
        'Key': '',
        'Null': 'NO',
        'Type': '%brokentype'
    }]

    with pytest.raises(ValueError):
        st._parse_predicates_data(predicates_data)

    predicates_data = [{
        'Default': '',
        'Extra': '',
        'Field': 'TEST',
        'Key': '',
        'Null': 'NO',
        'Type': 'unknowntype'
    }]

    msg = "Unknown predicate type 'unknowntype'"
    with pytest.warns(UnknownPredicateTypeWarning, match=msg):
        st._parse_predicates_data(predicates_data)

    predicates_data = [{
        'Default': '',
        'Extra': '',
        'Field': 'TEST',
        'Key': '',
        'Null': 'NO',
        'Type': 'enum()'
    }]

    with pytest.raises(ValueError):
        st._parse_predicates_data(predicates_data)

    predicates_data = [{
        'Default': '',
        'Extra': '',
        'Field': 'TEST',
        'Key': '',
        'Null': 'NO',
        'Type': "enum('a','b')"
    }]

    predicate = st._parse_predicates_data(predicates_data)[0]
    assert predicate.values == ('a', 'b')

    predicates_data = [{
        'Default': '',
        'Extra': '',
        'Field': 'TEST',
        'Key': '',
        'Null': 'NO',
        'Type': "enum('a')"
    }]

    predicate = st._parse_predicates_data(predicates_data)[0]
    assert predicate.values == ('a', )

    predicates_data = [{
        'Default': '',
        'Extra': '',
        'Field': 'TEST',
        'Key': '',
        'Null': 'NO',
        'Type': "enum('a','b','c')"
    }]

    predicate = st._parse_predicates_data(predicates_data)[0]
    assert predicate.values == ('a', 'b', 'c')