Repository : http://git.fedorahosted.org/cgit/copr.git
On branch : master
commit a4ee1e8ecca6ea52250d371a9cabc7b4b345574c Author: Valentin Gologuzov vgologuz@redhat.com Date: Mon Jul 27 15:08:36 2015 +0200
[frontend] fixed failing tests
frontend/coprs_frontend/coprs/models.py | 5 +- .../tests/test_logic/test_builds_logic.py | 46 +++++++++++++++++++- .../test_views/test_coprs_ns/test_coprs_general.py | 19 -------- 3 files changed, 46 insertions(+), 24 deletions(-)
diff --git a/frontend/coprs_frontend/coprs/models.py b/frontend/coprs_frontend/coprs/models.py index 5aabf8b..df8a44e 100644 --- a/frontend/coprs_frontend/coprs/models.py +++ b/frontend/coprs_frontend/coprs/models.py @@ -433,7 +433,6 @@ class Build(db.Model, helpers.Serializer): """ Return build status according to build status of its chroots """ - if self.canceled: return helpers.StatusEnum("canceled")
@@ -461,7 +460,7 @@ class Build(db.Model, helpers.Serializer): """
return self.status == helpers.StatusEnum("pending") or \ - self.status == helpers.StatusEnum("importing") + self.status == helpers.StatusEnum("importing")
@property def repeatable(self): @@ -496,7 +495,7 @@ class Build(db.Model, helpers.Serializer): """ Extract source package name from source name or url """ - src_rpm_name = self.pkgs.split("/")[-1] + src_rpm_name = self.pkgs.split("/")[-1] if src_rpm_name.endswith(".src.rpm"): return src_rpm_name[:-8] else: diff --git a/frontend/coprs_frontend/tests/test_logic/test_builds_logic.py b/frontend/coprs_frontend/tests/test_logic/test_builds_logic.py index 6676186..f5d9e08 100644 --- a/frontend/coprs_frontend/tests/test_logic/test_builds_logic.py +++ b/frontend/coprs_frontend/tests/test_logic/test_builds_logic.py @@ -122,19 +122,61 @@ class TestBuildsLogic(CoprsTestCase): data = BuildsLogic.get_build_task_queue().all() assert len(data) == 0
- def test_delete_build_exceptions( self, f_users, f_coprs, f_mock_chroots, f_builds, f_db): + for bc in self.b4_bc: + bc.status = StatusEnum("succeeded") + bc.ended_on = time.time() + self.b4.ended_on = time.time() + self.u1.admin = False + + self.db.session.add_all(self.b4_bc) + self.db.session.add(self.b4) + self.db.session.add(self.u1) self.db.session.commit() with pytest.raises(InsufficientRightsException): BuildsLogic.delete_build(self.u1, self.b4)
- self.b1_bc[0].status = "running" + self.b1_bc[0].status = StatusEnum("running") self.db.session.add(self.b1_bc[0]) self.db.session.commit() with pytest.raises(ActionInProgressException): BuildsLogic.delete_build(self.u1, self.b1)
+ def test_delete_build_as_admin( + self, f_users, f_coprs, f_mock_chroots, f_builds, f_db): + + self.b4.pkgs = "http://example.com/copr-keygen-1.58-1.fc20.src.rpm" + self.b4.ended_on = time.time() + for bc in self.b4_bc: + bc.status = StatusEnum("succeeded") + bc.ended_on = time.time() + + self.u1.admin = True + + self.db.session.add_all(self.b4_bc) + self.db.session.add(self.b4) + self.db.session.add(self.u1) + self.db.session.commit() + + expected_chroots_to_delete = set() + for bchroot in self.b4_bc: + expected_chroots_to_delete.add(bchroot.name) + + assert len(ActionsLogic.get_many().all()) == 0 + BuildsLogic.delete_build(self.u1, self.b4) + self.db.session.commit() + + assert len(ActionsLogic.get_many().all()) == 1 + action = ActionsLogic.get_many().one() + delete_data = json.loads(action.data) + assert "chroots" in delete_data + assert "copr-keygen-1.58-1.fc20" == delete_data["src_pkg_name"] + assert expected_chroots_to_delete == set(delete_data["chroots"]) + + with pytest.raises(NoResultFound): + BuildsLogic.get(self.b4.id).one() + def test_delete_build_basic( self, f_users, f_coprs, f_mock_chroots, f_builds, f_db):
diff --git a/frontend/coprs_frontend/tests/test_views/test_coprs_ns/test_coprs_general.py b/frontend/coprs_frontend/tests/test_views/test_coprs_ns/test_coprs_general.py index 6edc99b..da3f778 100644 --- a/frontend/coprs_frontend/tests/test_views/test_coprs_ns/test_coprs_general.py +++ b/frontend/coprs_frontend/tests/test_views/test_coprs_ns/test_coprs_general.py @@ -246,25 +246,6 @@ class TestCoprDetail(CoprsTestCase): assert '<td>{0}'.format(self.u3.name) in r.data assert '<td>{0}'.format(self.u1.name) in r.data
- @TransactionDecorator("u1") - def test_copr_detail_allows_asking_for_permissions(self, f_users, f_coprs, - f_copr_permissions, f_db): - - self.db.session.add_all([self.u2, self.c2]) - r = self.test_client.get( - "/coprs/{0}/{1}/permissions/".format(self.u2.name, self.c2.name)) - # u1 is approved builder, check for that - assert "/permissions_applier_change/" in r.data - - @TransactionDecorator("u2") - def test_copr_detail_doesnt_allow_owner_to_ask_for_permissions( - self, f_users, f_coprs, f_db): - - self.db.session.add_all([self.u2, self.c2]) - r = self.test_client.get( - "/coprs/{0}/{1}/permissions/".format(self.u2.name, self.c2.name)) - assert "/permissions_applier_change/" not in r.data - @TransactionDecorator("u2") def test_detail_has_correct_permissions_form(self, f_users, f_coprs, f_copr_permissions, f_db):
copr-commits@lists.fedorahosted.org