Skip to content

Commit

Permalink
Added tests for backrefs in sqlalchemy models
Browse files Browse the repository at this point in the history
  • Loading branch information
Digant C Kasundra committed May 15, 2015
1 parent a89530f commit a7947a0
Show file tree
Hide file tree
Showing 3 changed files with 21 additions and 0 deletions.
8 changes: 8 additions & 0 deletions tests/model_tests/test_achievements.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ def test_lifecycle(sample_data1):

fate = sample_data1.query(models.Fate).first()
host = sample_data1.query(models.Host).first()
assert len(host.achievements) == 0

models.Event.create(sample_data1, host, "system", fate.creation_event_type)

Expand All @@ -32,6 +33,9 @@ def test_lifecycle(sample_data1):
assert achievements[0].completion_time is None
assert achievements[0].completion_event is None
assert achievements[0].creation_event == event
assert len(host.achievements) == 1
assert len(event.created_achievements) == 1
assert len(event.completed_achievements) == 0

models.Event.create(
sample_data1, host, "system", fate.completion_event_type
Expand All @@ -49,6 +53,10 @@ def test_lifecycle(sample_data1):
assert len(achievements) == 1
assert achievements[0].completion_time is not None
assert achievements[0].completion_event == event
assert len(event.created_achievements) == 0
assert len(event.completed_achievements) == 1

assert len(host.achievements) == 1


def test_lifecycle_complex(sample_data1):
Expand Down
5 changes: 5 additions & 0 deletions tests/model_tests/test_events.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,12 @@ def test_creation(sample_data1):
event_types = sample_data1.query(models.EventType).all()
assert len(event_types) == 6
event_type1 = event_types[0]
assert len(event_type1.events) == 1

hosts = sample_data1.query(models.Host).all()
assert len(hosts) == 3
host = hosts[0]
assert len(host.events) == 2

models.Event.create(
sample_data1, host, "testman", event_type1, note="This is a test event"
Expand All @@ -32,6 +34,9 @@ def test_creation(sample_data1):
assert event.event_type == event_type1
assert event.note == "This is a test event"

assert len(host.events) == 3
assert len(event_type1.events) == 2


def test_duplicate(sample_data1):
"""Test to ensure duplicate events are fine b/c there can be multiple identical events"""
Expand Down
8 changes: 8 additions & 0 deletions tests/model_tests/test_fates.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,14 @@ def test_creation(sample_data1):
assert fate.completion_event_type == event_type5
assert fate.description == "New fate"

assert len(event_type4.auto_creates) == 1
assert event_type4.auto_creates[0] == fate
assert len(event_type4.auto_completes) == 0

assert len(event_type5.auto_creates) == 0
assert len(event_type5.auto_completes) == 1
assert event_type5.auto_completes[0] == fate


def test_duplicate(sample_data1):
event_types = sample_data1.query(models.EventType).all()
Expand Down

0 comments on commit a7947a0

Please sign in to comment.