Skip to content

Commit

Permalink
fixtures: create/teardown resources
Browse files Browse the repository at this point in the history
* Creates default resources on `app` fixture.

* Clean `WorkflowResource`s on workflow teardown.

* Closes reanahub/reana-server#296.
  • Loading branch information
Diego Rodriguez committed Oct 30, 2020
1 parent 5670e66 commit 81d644d
Showing 1 changed file with 6 additions and 1 deletion.
7 changes: 6 additions & 1 deletion pytest_reana/fixtures.py
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ def create_ninja_turtle()
"""
from reana_db.database import Session
from reana_db.models import Base
from reana_db.models import Base, Resource

engine = create_engine(base_app.config["SQLALCHEMY_DATABASE_URI"])
base_app.session.bind = engine
Expand All @@ -113,6 +113,7 @@ def create_ninja_turtle()
if not database_exists(engine.url):
create_database(engine.url)
Base.metadata.create_all(bind=engine)
Resource.initialise_default_resources()
yield base_app
Session.close() # close hanging connections
Base.metadata.drop_all(bind=engine)
Expand Down Expand Up @@ -476,6 +477,8 @@ def sample_yadage_workflow_in_db(
session.add(workflow)
session.commit()
yield workflow
for resource in workflow.resources:
session.delete(resource)
session.delete(workflow)
session.commit()

Expand Down Expand Up @@ -508,6 +511,8 @@ def sample_serial_workflow_in_db(
session.add(workflow)
session.commit()
yield workflow
for resource in workflow.resources:
session.delete(resource)
session.delete(workflow)
session.commit()

Expand Down

0 comments on commit 81d644d

Please sign in to comment.