Esempio n. 1
0
    def test_process_success_waiting_for_package_different_package_id(self):
        build_output = _setup_build_output("create.json")
        with database.session_scope() as session:
            ecosystem = util.create_ecosystem(dict())
            waiting_build_id = _create_waiting_build(
                session,
                ecosystem,
                missing_packages=[
                    util.create_package({
                        "ecosystem":
                        ecosystem,
                        "package.package_id":
                        "d057732059ea44a47760900cb5e4855d2bea8714"
                    })
                ])
            build_id = _create_build(session, ecosystem)

        result = manager.process_success(build_id, build_output)

        self.assertFalse("new_builds" in result.keys())

        with database.session_scope() as session:
            waiting_build = session.query(
                database.Build).filter_by(id=waiting_build_id).first()
            self.assertEqual(database.BuildStatus.error, waiting_build.status)
Esempio n. 2
0
    def test_process_success_waiting_for_package_different_revision(self):
        build_output = _setup_build_output("create.json")
        with database.session_scope() as session:
            ecosystem = util.create_ecosystem(dict())
            waiting_build_id = _create_waiting_build(
                session,
                ecosystem,
                missing_packages=[
                    util.create_package({
                        "ecosystem":
                        ecosystem,
                        "recipe_revision.revision":
                        "f5c1ba6f1af634f500f7e0255619fecf4777965f"
                    })
                ])
            build_id = _create_build(session, ecosystem)

        result = manager.process_success(build_id, build_output)

        self.assertTrue(result["new_builds"])

        with database.session_scope() as session:
            waiting_build = session.query(
                database.Build).filter_by(id=waiting_build_id).first()
            self.assertEqual(database.BuildStatus.new, waiting_build.status)
Esempio n. 3
0
    def test_create_build_with_missing_package(self):
        with database.session_scope() as session:
            build = util.create_build(dict())
            package = util.create_package(dict())
            build.missing_packages = [package]
            session.add(build)

        with database.session_scope() as session:
            num_packages = session.query(database.Package).count()
            self.assertEqual(1, num_packages)
            package = session.query(database.Package).first()
            self.assertEqual(1, len(package.waiting_builds))
Esempio n. 4
0
    def test_process_success_remove_missing_items(self):
        build_output = _setup_build_output("create.json")

        with database.session_scope() as session:
            build = util.create_build(dict())
            build.missing_recipes = [util.create_recipe(dict())]
            build.missing_packages = [util.create_package(dict())]
            session.add(build)
            session.commit()
            build_id = build.id

        manager.process_success(build_id, build_output)

        with database.session_scope() as session:
            build = session.query(
                database.Build).filter_by(id=build_id).first()
            self.assertEqual(0, len(build.missing_recipes))
            self.assertEqual(0, len(build.missing_packages))
Esempio n. 5
0
    def test_process_success_waiting_for_package(self):
        build_output = _setup_build_output("create.json")
        with database.session_scope() as session:
            ecosystem = util.create_ecosystem(dict())
            waiting_build_id = _create_waiting_build(
                session,
                ecosystem,
                missing_packages=[
                    util.create_package({"ecosystem": ecosystem})
                ])
            build_id = _create_build(session, ecosystem)

        result = manager.process_success(build_id, build_output)

        self.assertTrue(result["new_builds"])

        with database.session_scope() as session:
            waiting_build = session.query(
                database.Build).filter_by(id=waiting_build_id).first()
            self.assertEqual(database.BuildStatus.new, waiting_build.status)
Esempio n. 6
0
    def test_process_success_existing_package(self):
        build_output = _setup_build_output()

        with database.session_scope() as session:
            parameters = dict()
            package = util.create_package(parameters)
            session.add(package)
            build = util.create_build(parameters)
            session.add(build)
            session.commit()
            build_id = build.id

        manager.process_success(build_id, build_output)

        with database.session_scope() as session:
            build = session.query(
                database.Build).filter_by(id=build_id).first()
            packages = session.query(database.Package).all()
            self.assertEqual(1, len(packages))
            self.assertEqual(1, build.package.id)
Esempio n. 7
0
 def setUp(self):
     super().setUp()
     self.login()
     with database.session_scope() as session:
         ecosystem = util.create_package(dict())
         session.add(ecosystem)