def test_append_and_update_artifacts(): a1 = Artifact() a1.key = "abc.txt" a1.batch_id = 1 a1.batch_order = 1 a1.source = 'run' a1.elapsed = 5 a1.hashstring = "abcde123" a2 = Artifact() a2.key = "def.txt" a2.hashstring = "abcde456" a2.batch_id = 1 a2.batch_order = 2 db = SqliteDatabase(dbfile=None) db.append_artifacts([a1, a2]) assert len(db.conn.execute("select * from artifacts").fetchall()) == 2 assert len(db.conn.execute("select * from artifacts where id = ?", (a1.unique_key(),)).fetchall()) == 1 assert len(db.conn.execute("select * from artifacts where id = ?", (a2.unique_key(),)).fetchall()) == 1 assert db.conn.execute("select elapsed from artifacts where id = ?", (a1.unique_key(),)).fetchall()[0][0] == 5 a1.elapsed = 10 db.update_artifact(a1) assert db.conn.execute("select elapsed from artifacts where id = ?", (a1.unique_key(),)).fetchall()[0][0] == 10
def test_artifact_row(): a1 = Artifact() a1.key = "abc.txt" a1.batch_id = 1 a1.batch_order = 1 a1.source = 'run' a1.elapsed = 5 a1.hashstring = "abcde123" db = SqliteDatabase(dbfile=None) db.append_artifact(a1) row = db.artifact_row(a1) assert row['key'] == a1.key assert row['batch_id'] == a1.batch_id
def test_add_additional_artifact(): artifact = Artifact() artifact.key = 'abc.txt' artifact.artifacts_dir = 'artifactsx' artifact.hashstring = "abcdef123" new_artifact = artifact.add_additional_artifact('def.txt', '.txt') assert is_empty_dict(new_artifact._inputs) assert new_artifact.args.keys() == ["globals"] assert is_empty_dict(new_artifact.args['globals']) assert new_artifact.additional assert new_artifact.artifact_class_source assert new_artifact.artifacts_dir == 'artifactsx' assert new_artifact.final assert new_artifact.key in artifact.inputs() assert new_artifact.state == 'new'
def test_add_additional_artifact(): db = dexy.utils.get_db(logsdir=None, dbfile=None) hashstring = "abcdef123" artifact = Artifact() artifact.db = db artifact.key = 'abc.txt' artifact.artifacts_dir = 'artifactsx' artifact.hashstring = hashstring new_artifact = artifact.add_additional_artifact('def.txt', '.txt') assert is_empty_dict(new_artifact._inputs) assert new_artifact.args.keys() == ["globals"] assert is_empty_dict(new_artifact.args['globals']) assert new_artifact.additional assert new_artifact.artifact_class_source assert new_artifact.artifacts_dir == 'artifactsx' assert new_artifact.final assert new_artifact.key in artifact.inputs() assert new_artifact.state == 'new' assert new_artifact.inode == hashstring assert db.artifact_row(new_artifact)['key'] == new_artifact.key