Skip to content
Snippets Groups Projects
Commit 09281db6 authored by dcz's avatar dcz
Browse files

Tests

parent 59d141ea
Branches
No related merge requests found
...@@ -35,6 +35,7 @@ INSTALLED_APPS = [ ...@@ -35,6 +35,7 @@ INSTALLED_APPS = [
'unifier.apps.UnifierConfig', 'unifier.apps.UnifierConfig',
'financial_settlement.apps.FinStatementConfig', 'financial_settlement.apps.FinStatementConfig',
'freelus.apps.FreeLusConfig', 'freelus.apps.FreeLusConfig',
'vertical_relations.apps.VerticalRelationsConfig',
] ]
SECRET_KEY = get_environment('SECRET_KEY') SECRET_KEY = get_environment('SECRET_KEY')
......
from django.test import Client
from django.test import RequestFactory, TestCase
# initialize the APIClient app
from semantics.models import ArgumentRole, SemanticRole
from unifier.models import UnifiedFrame, UnifiedFrameArgument
from vertical_relations.models import MainVerticalRelation, UnifiedFrameVerticalRelation, VerticalRelationNegation, \
TemporalVerticalRelation
from vertical_relations.views import save_main_vertical_relation, save_vertical_relation_negation, save_iter_relation
client = Client()
class ApiTest(TestCase):
def tearDown(self) -> None:
pass
@classmethod
def tearDownClass(cls):
pass
def setUp(self):
self.factory = RequestFactory()
self.unified_frame1 = UnifiedFrame.objects.create(status='status1', title='title1')
self.unified_frame2 = UnifiedFrame.objects.create(status='status2', title='title2')
self.semantic_role = SemanticRole.objects.create(role='test_role', priority=1)
self.argument_role = ArgumentRole.objects.create(role=self.semantic_role)
self.unified_frame_argument = UnifiedFrameArgument.objects.create(unified_frame=self.unified_frame1,
role=self.argument_role)
self.main_relation = MainVerticalRelation.objects.create(name='main-relation', priority=1)
self.neg = VerticalRelationNegation.objects.create(name='neg', priority=1)
self.temporal = TemporalVerticalRelation.objects.create(name='temp', priority=1)
def create_new_vertical_relation(self):
request = self.factory.post("/pl/vertical_relations/save_main_vertical_relation/",
HTTP_X_REQUESTED_WITH='XMLHttpRequest',
data={'source_unified_frame_id': self.unified_frame1.pk,
'target_unified_frame_id': self.unified_frame2.pk,
'main_vertical_relation_id': self.main_relation.pk})
response = save_main_vertical_relation(request)
def test_create_new_vertical_relation(self):
self.create_new_vertical_relation()
self.assertEqual(1, UnifiedFrameVerticalRelation.objects.all().count())
relation = UnifiedFrameVerticalRelation.objects.all()[0]
self.assertEqual(self.unified_frame1.pk, relation.source_unified_frame.id)
self.assertEqual(self.unified_frame2.pk, relation.target_unified_frame.id)
unified_frame = UnifiedFrame.objects.get(id=self.unified_frame1.pk)
self.assertEqual(True, unified_frame.has_vertical_relations)
def test_save_vertical_relation_negation(self):
self.create_new_vertical_relation()
request = self.factory.post("/pl/vertical_relations/save_vertical_relation_negation/",
HTTP_X_REQUESTED_WITH='XMLHttpRequest',
data={'source_unified_frame_id': self.unified_frame1.pk,
'target_unified_frame_id': self.unified_frame2.pk,
'vertical_relation_id': self.main_relation.pk,
'unified_frame_argument_id': self.unified_frame_argument.pk,
'negation_id': self.neg.pk})
response = save_vertical_relation_negation(request)
relation = UnifiedFrameVerticalRelation.objects.all()[0]
self.assertEqual(self.neg.pk, relation.negation.id)
self.assertEqual(self.unified_frame_argument.pk, relation.negation_argument.id)
def test_save_iter_relation(self):
self.create_new_vertical_relation()
request = self.factory.post("/pl/vertical_relations/save_iter_relation/",
HTTP_X_REQUESTED_WITH='XMLHttpRequest',
data={'source_unified_frame_id': self.unified_frame1.pk,
'target_unified_frame_id': self.unified_frame2.pk,
'vertical_relation_id': self.main_relation.pk,
'temporal_vertical_relation_id': self.temporal.pk})
response = save_iter_relation(request)
relation = UnifiedFrameVerticalRelation.objects.all()[0]
self.assertEqual(self.temporal.pk, relation.iter_temporal_vertical_relation.id)
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment