Пример #1
0
    def test_is_blank(self):
        node = ChangeNode.from_jsonld({
            '@id': 1234,
            '@type': 'person',
        }, disambiguate=False)

        assert node.is_blank is False
Пример #2
0
    def test_mergeaction(self):
        node = ChangeNode.from_jsonld(
            {
                '@id':
                '_:1234',
                '@type':
                'MergeAction',
                'into': {
                    '@type': 'Person',
                    '@id': '1234'
                },
                'from': [{
                    '@type': 'Person',
                    '@id': '5827'
                }, {
                    '@type': 'Person',
                    '@id': '0847'
                }]
            },
            disambiguate=False)

        assert node.relations == {'into': {'@type': 'Person', '@id': '1234'}}
        assert node._reverse_relations == {
            'from': ({
                '@type': 'Person',
                '@id': '5827'
            }, {
                '@type': 'Person',
                '@id': '0847'
            })
        }
Пример #3
0
def change_node():
    return ChangeNode.from_jsonld({
        '@id': '_:1234',
        '@type': 'person',
        'given_name': 'No',
        'family_name': 'Matter',
    }, disambiguate=False)
Пример #4
0
    def test_peels_context(self):
        node = ChangeNode.from_jsonld({
            '@id': '_:5678',
            '@type': 'contributor',
            '@context': {'schema': 'www.example.com'},
        }, disambiguate=False)

        assert node.context == {'@context': {'schema': 'www.example.com'}}
Пример #5
0
    def test_extras(self):
        node = ChangeNode.from_jsonld({
            '@id': '_:1234',
            '@type': 'person',
            'given_name': 'Doe',
            'family_name': 'Jane',
            'extra': {'likes': ['cats']}
        }, disambiguate=False)

        assert 'extra' not in node.attrs
        assert node.extra == {'likes': ['cats']}
Пример #6
0
    def test_from_ld(self):
        node = ChangeNode.from_jsonld({
            '@id': '_:1234',
            '@type': 'person',
            'given_name': 'Doe',
            'family_name': 'Jane',
        }, disambiguate=False)

        assert node.id == '_:1234'
        assert node.type == 'person'
        assert node.is_blank is True
        assert node.attrs == {'given_name': 'Doe', 'family_name': 'Jane'}
Пример #7
0
    def test_relationships(self):
        node = ChangeNode.from_jsonld({
            '@id': '_:5678',
            '@type': 'contributor',
            'person': {
                '@id': '_:1234',
                '@type': 'person'
            }
        }, disambiguate=False)

        assert node.attrs == {}
        assert len(node.relations) == 1
        assert node.relations['person'] == {'@id': '_:1234', '@type': 'person'}