# -*- coding: utf-8 -*- from .sample import init_ci_with_type, init_ci_type_relation, init_ci_relation from api.lib.cmdb.ci import CIRelationManager from api.models.cmdb import CIRelation, CIType, CI def test_create_ci_relation(session, client): init_ci_type_relation(1) ci_types = CIType.query.all() cis = init_ci_with_type(ci_types) url = "/api/v0.1/ci_relations/{}/{}".format(cis[0]['ci_id'], cis[1]['ci_id']) resp = client.post(url) assert resp.status_code == 200 cr_id = resp.json['cr_id'] cr = CIRelation.get_by_id(cr_id) assert cr is not None def test_delte_ci_relation_by_ci_id(session, client): cr_id = init_ci_relation() cis = CI.query.all() url = "/api/v0.1/ci_relations/{}/{}".format(cis[0].id, cis[1].id) resp = client.delete(url) assert resp.status_code == 200 cr = CIRelation.get_by_id(cr_id) assert cr is None def test_delete_ci_relation_by_id(session, client): cr_id = init_ci_relation() url = "/api/v0.1/ci_relations/{cr_id}".format(cr_id=cr_id) resp = client.delete(url) assert resp.status_code == 200 cr = CIRelation.get_by_id(cr_id) assert cr is None