Implemented SheerkaOntology
This commit is contained in:
@@ -3,7 +3,9 @@ from dataclasses import dataclass
|
||||
import core.utils
|
||||
import pytest
|
||||
from core.builtin_concepts import BuiltinConcepts
|
||||
from core.builtin_helpers import evaluate_expression
|
||||
from core.concept import Concept
|
||||
from core.global_symbols import NotFound, NotInit, Removed
|
||||
from core.tokenizer import Token, TokenKind, Tokenizer, Keywords
|
||||
|
||||
|
||||
@@ -306,7 +308,7 @@ def test_i_can_make_unique():
|
||||
("a.prop2.bar", {"a": Obj2(None, {'foo': 'dict-first', 'bar': 'dict-second'})}, 'dict-second'),
|
||||
])
|
||||
def test_i_can_evaluate_expression(expression, bag, expected):
|
||||
assert core.utils.evaluate_expression(expression, bag) == expected
|
||||
assert evaluate_expression(expression, bag) == expected
|
||||
|
||||
|
||||
@pytest.mark.parametrize("expression, bag, expected_error, prop_name", [
|
||||
@@ -315,7 +317,7 @@ def test_i_can_evaluate_expression(expression, bag, expected):
|
||||
])
|
||||
def test_i_cannot_evaluate_expression(expression, bag, expected_error, prop_name):
|
||||
with pytest.raises(expected_error) as e:
|
||||
core.utils.evaluate_expression(expression, bag)
|
||||
evaluate_expression(expression, bag)
|
||||
|
||||
assert e.value.args == (prop_name,)
|
||||
|
||||
@@ -417,3 +419,9 @@ def test_i_can_deep_copy_a_concept():
|
||||
concept_props = sorted(list(concept.get_prop(BuiltinConcepts.ISA)), key=lambda o: o.id)
|
||||
for copied_prop, concept_prop in zip(copied_props, concept_props):
|
||||
check_are_the_same(copied_prop, concept_prop)
|
||||
|
||||
|
||||
def test_i_can_deep_copy_a_custom_type():
|
||||
assert core.utils.sheerka_deepcopy(NotInit) is NotInit
|
||||
assert core.utils.sheerka_deepcopy(NotFound) is NotFound
|
||||
assert core.utils.sheerka_deepcopy(Removed) is Removed
|
||||
|
||||
Reference in New Issue
Block a user