Ejemplo n.º 1
0
    def test_shippable_instance(self):
        shippable_env = {
            "SHIPPABLE": "true",
            "COMMIT_MESSAGE": "foobar [qux]",
            "COMMIT": "98e984eacf4e3dfea431c8850c8c181a08e8cf3d",
            "BRANCH": "testing/5.6.5",
            "IS_GIT_TAG": "false",
            "IS_PULL_REQUEST": "false"
        }
        with tools.environment_append(shippable_env):
            manager = CIManager(self.printer)
            self.assertEquals(manager.get_branch(), shippable_env["BRANCH"])
            self.assertEquals(manager.get_commit_msg(),
                              shippable_env["COMMIT_MESSAGE"])
            self.assertEquals(manager.get_commit_id(), shippable_env["COMMIT"])
            self.assertEquals(manager.is_pull_request(), False)
            self.assertEquals(manager.is_tag(), False)

        shippable_env = {
            "SHIPPABLE": "true",
            "COMMIT_MESSAGE": "new tag",
            "COMMIT": "98e984eacf4e3dfea431c8850c8c181a08e8cf3d",
            "BRANCH": "release/5.6.5",
            "IS_GIT_TAG": "true",
            "IS_PULL_REQUEST": "true"
        }
        with tools.environment_append(shippable_env):
            manager = CIManager(self.printer)
            self.assertEquals(manager.get_branch(), shippable_env["BRANCH"])
            self.assertEquals(manager.get_commit_msg(),
                              shippable_env["COMMIT_MESSAGE"])
            self.assertEquals(manager.get_commit_id(), shippable_env["COMMIT"])
            self.assertEquals(manager.is_pull_request(), True)
            self.assertEquals(manager.is_tag(), True)
Ejemplo n.º 2
0
    def test_circleci_instance(self):
        with tools.environment_append({
                "CIRCLECI":
                "1",
                "CIRCLE_BRANCH":
                "mybranch",
                "CIRCLE_SHA1":
                "506c89117650bb12252db26d35b8c2385411f175",
        }):
            manager = CIManager(self.printer)
            self.assertEquals(manager.get_branch(), "mybranch")
            self.assertIsNotNone(manager.get_commit_msg())
            self.assertEquals(manager.get_commit_id(),
                              "506c89117650bb12252db26d35b8c2385411f175")
            self.assertEquals(manager.is_pull_request(), False)

        with tools.environment_append({
                "CIRCLECI":
                "1",
                "CIRCLE_BRANCH":
                "pull/35",
                "CIRCLE_SHA1":
                "506c89117650bb12252db26d35b8c2385411f175",
                "CIRCLE_PULL_REQUEST":
                "https://github.com/org/repo/pull/35"
        }):
            manager = CIManager(self.printer)
            self.assertIsNone(manager.get_branch())
            self.assertIsNotNone(manager.get_commit_msg())
            self.assertEquals(manager.get_commit_id(),
                              "506c89117650bb12252db26d35b8c2385411f175")
            self.assertEquals(manager.is_pull_request(), True)
Ejemplo n.º 3
0
    def test_appveyor_instance(self):
        with tools.environment_append({"APPVEYOR": "1",
                                       "APPVEYOR_REPO_COMMIT_MESSAGE": "msg",
                                       "APPVEYOR_REPO_COMMIT_MESSAGE_EXTENDED": "more",
                                       "APPVEYOR_REPO_BRANCH": "mybranch",
                                       "APPVEYOR_REPO_COMMIT": "506c89117650bb12252db26d35b8c2385411f175",
                                       }):
            manager = CIManager(self.printer)
            self.assertEquals(manager.get_branch(), "mybranch")
            self.assertEquals(manager.get_commit_msg(), "msg more")
            self.assertEquals(manager.get_commit_id(), "506c89117650bb12252db26d35b8c2385411f175")

        # Appveyor PULL REQUEST
        with tools.environment_append({"APPVEYOR": "1",
                                       "APPVEYOR_PULL_REQUEST_NUMBER": "1",
                                       "APPVEYOR_REPO_COMMIT_MESSAGE": "msg",
                                       "APPVEYOR_REPO_COMMIT_MESSAGE_EXTENDED": "more",
                                       "APPVEYOR_REPO_BRANCH": "mybranch",
                                       "APPVEYOR_REPO_COMMIT": "506c89117650bb12252db26d35b8c2385411f175",
                                       }):
            manager = CIManager(self.printer)
            self.assertIsNone(manager.get_branch())
            self.assertEquals(manager.get_commit_msg(), "msg more")
            self.assertEquals(manager.get_commit_id(), "506c89117650bb12252db26d35b8c2385411f175")

        # Appveyor no extended
        with tools.environment_append({"APPVEYOR": "1",
                                       "APPVEYOR_PULL_REQUEST_NUMBER": "1",
                                       "APPVEYOR_REPO_COMMIT_MESSAGE": "msg",
                                       "APPVEYOR_REPO_BRANCH": "mybranch",
                                       }):
            manager = CIManager(self.printer)
            self.assertIsNone(manager.get_branch())
            self.assertEquals(manager.get_commit_msg(), "msg")
Ejemplo n.º 4
0
    def test_build_policy(self):
        # Travis
        with tools.environment_append({
                "TRAVIS":
                "1",
                "TRAVIS_COMMIT_MESSAGE":
                "This is a great commit [build=outdated] End."
        }):
            manager = CIManager(self.printer)
            self.assertEquals(manager.get_commit_build_policy(), "outdated")
            self.assertEquals(
                manager.get_commit_msg(), "This is a great commit "
                "[build=outdated] End.")

        with tools.environment_append({
                "TRAVIS":
                "1",
                "TRAVIS_COMMIT_MESSAGE":
                "This is a great commit [build=all] End."
        }):
            manager = CIManager(self.printer)
            self.assertEquals(manager.get_commit_build_policy(), "all")
            self.assertEquals(manager.get_commit_msg(),
                              "This is a great commit "
                              "[build=all] End.")
        # Appveyor
        with tools.environment_append({
                "APPVEYOR": "1",
                "APPVEYOR_PULL_REQUEST_NUMBER": "1",
                "APPVEYOR_REPO_COMMIT_MESSAGE": "msg",
                "APPVEYOR_REPO_COMMIT_MESSAGE_EXTENDED":
                "more [build=missing] ",
                "APPVEYOR_REPO_BRANCH": "mybranch",
        }):
            manager = CIManager(self.printer)
            self.assertEquals(manager.get_commit_build_policy(), "missing")

        # Raise invalid
        with tools.environment_append({
                "APPVEYOR": "1",
                "APPVEYOR_PULL_REQUEST_NUMBER": "1",
                "APPVEYOR_REPO_COMMIT_MESSAGE": "msg",
                "APPVEYOR_REPO_COMMIT_MESSAGE_EXTENDED":
                "more [build=joujou] ",
                "APPVEYOR_REPO_BRANCH": "mybranch",
        }):
            manager = CIManager(self.printer)
            self.assertRaises(Exception, manager.get_commit_build_policy)

        # Complex messages
        m = "double travis pages again due to timeout, travis taking longer " \
            "now [skip appveyor] [build=missing]"
        with tools.environment_append({
                "TRAVIS": "1",
                "TRAVIS_COMMIT_MESSAGE": m
        }):
            manager = CIManager(self.printer)
            self.assertEquals(manager.get_commit_build_policy(), "missing")
Ejemplo n.º 5
0
    def test_azure_instance(self):
        with tools.environment_append({
                "SYSTEM_TEAMFOUNDATIONCOLLECTIONURI": "https://dev.azure.com/",
                "BUILD_SOURCEVERSIONMESSAGE": "msg",
                "BUILD_SOURCEVERSION":
                "506c89117650bb12252db26d35b8c2385411f175",
                "BUILD_SOURCEBRANCH": "mybranch",
                "BUILD_REASON": "manual",
        }):
            manager = CIManager(self.printer)
            self.assertEquals(manager.get_branch(), "mybranch")
            self.assertEquals(manager.get_commit_msg(), "msg")
            self.assertEquals(manager.get_commit_id(),
                              "506c89117650bb12252db26d35b8c2385411f175")
            self.assertEquals(manager.is_pull_request(), False)

        with tools.environment_append({
                "SYSTEM_TEAMFOUNDATIONCOLLECTIONURI": "https://dev.azure.com/",
                "BUILD_SOURCEVERSIONMESSAGE": "msg",
                "BUILD_SOURCEVERSION":
                "506c89117650bb12252db26d35b8c2385411f175",
                "BUILD_SOURCEBRANCH": "refs/heads/testing/version",
                "BUILD_REASON": "PullRequest",
        }):
            manager = CIManager(self.printer)
            self.assertEquals(manager.get_branch(), "testing/version")
            self.assertEquals(manager.get_commit_msg(), "msg")
            self.assertEquals(manager.get_commit_id(),
                              "506c89117650bb12252db26d35b8c2385411f175")
            self.assertEquals(manager.is_pull_request(), True)

        with tools.environment_append({
                "SYSTEM_TEAMFOUNDATIONCOLLECTIONURI": "https://dev.azure.com/",
                "BUILD_SOURCEVERSIONMESSAGE": "msg",
                "BUILD_SOURCEVERSION":
                "506c89117650bb12252db26d35b8c2385411f175",
                "BUILD_SOURCEBRANCH": "refs/heads/stable/version",
                "BUILD_REASON": "IndividualCI",
        }):
            manager = CIManager(self.printer)
            self.assertEquals(manager.get_branch(), "stable/version")
            self.assertEquals(manager.get_commit_msg(), "msg")
            self.assertEquals(manager.get_commit_id(),
                              "506c89117650bb12252db26d35b8c2385411f175")
            self.assertEquals(manager.is_pull_request(), False)
Ejemplo n.º 6
0
 def test_jenkins_instance(self):
     with tools.environment_append({"JENKINS_URL": "1",
                                    "BRANCH_NAME": "mybranch",
                                    "GIT_COMMIT": "506c89117650bb12252db26d35b8c2385411f175",
                                    }):
         manager = CIManager(self.printer)
         self.assertEquals(manager.get_branch(), "mybranch")
         self.assertIsNotNone(manager.get_commit_msg())
         self.assertEquals(manager.get_commit_id(), "506c89117650bb12252db26d35b8c2385411f175")
Ejemplo n.º 7
0
 def test_bamboo_instance(self):
     with tools.environment_append({
             "bamboo_buildNumber":
             "xx",
             "bamboo_planRepository_branch":
             "mybranch"
     }):
         manager = CIManager(self.printer)
         self.assertEquals(manager.get_branch(), "mybranch")
         self.assertIsNotNone(manager.get_commit_msg())
Ejemplo n.º 8
0
 def test_travis_instance(self):
     with tools.environment_append({"TRAVIS": "1",
                                    "TRAVIS_COMMIT_MESSAGE": "msg",
                                    "TRAVIS_BRANCH": "mybranch",
                                    "TRAVIS_COMMIT": "506c89117650bb12252db26d35b8c2385411f175"
                                    }):
         manager = CIManager(self.printer)
         self.assertEquals(manager.get_branch(), "mybranch")
         self.assertEquals(manager.get_commit_msg(), "msg")
         self.assertEquals(manager.get_commit_id(), "506c89117650bb12252db26d35b8c2385411f175")
Ejemplo n.º 9
0
 def test_gitlab_instance(self):
     with tools.environment_append({"GITLAB_CI": "1",
                                    "CI_BUILD_REF_NAME": "mybranch",
                                    "CI_COMMIT_TITLE": "foo bar",
                                    "CI_COMMIT_SHA": "506c89117650bb12252db26d35b8c2385411f175",
                                    }):
         manager = CIManager(self.printer)
         self.assertEquals(manager.get_branch(), "mybranch")
         self.assertIsNotNone(manager.get_commit_msg())
         self.assertEquals(manager.get_commit_id(), "506c89117650bb12252db26d35b8c2385411f175")
 def test_circleci_instance(self):
     with tools.environment_append({
             "CIRCLECI":
             "1",
             "CIRCLE_BRANCH":
             "mybranch",
             "CIRCLE_SHA1":
             "506c89117650bb12252db26d35b8c2385411f175",
     }):
         manager = CIManager(self.printer)
         self.assertEquals(manager.get_branch(), "mybranch")
         self.assertIsNotNone(manager.get_commit_msg())
         self.assertEquals(manager.get_commit_id(),
                           "506c89117650bb12252db26d35b8c2385411f175")
Ejemplo n.º 11
0
    def test_build_policy(self):
        # Travis
        with tools.environment_append({
                "TRAVIS":
                "1",
                "TRAVIS_COMMIT_MESSAGE":
                "This is a great commit [build=outdated] End."
        }):
            manager = CIManager(self.printer)
            self.assertEquals(manager.get_commit_build_policy(), "outdated")
            self.assertEquals(
                manager.get_commit_msg(), "This is a great commit "
                "[build=outdated] End.")

        # Appveyor
        with tools.environment_append({
                "APPVEYOR": "1",
                "APPVEYOR_PULL_REQUEST_NUMBER": "1",
                "APPVEYOR_REPO_COMMIT_MESSAGE": "msg",
                "APPVEYOR_REPO_COMMIT_MESSAGE_EXTENDED":
                "more [build=missing] ",
                "APPVEYOR_REPO_BRANCH": "mybranch",
        }):
            manager = CIManager(self.printer)
            self.assertEquals(manager.get_commit_build_policy(), "missing")

        # Raise invalid
        with tools.environment_append({
                "APPVEYOR": "1",
                "APPVEYOR_PULL_REQUEST_NUMBER": "1",
                "APPVEYOR_REPO_COMMIT_MESSAGE": "msg",
                "APPVEYOR_REPO_COMMIT_MESSAGE_EXTENDED":
                "more [build=joujou] ",
                "APPVEYOR_REPO_BRANCH": "mybranch",
        }):
            manager = CIManager(self.printer)
            self.assertRaises(Exception, manager.get_commit_build_policy)
Ejemplo n.º 12
0
    def test_instance_correct(self):
        # Bamboo
        with tools.environment_append({
                "bamboo_buildNumber":
                "xx",
                "bamboo_planRepository_branch":
                "mybranch"
        }):
            manager = CIManager(self.printer)
            self.assertEquals(manager.get_branch(), "mybranch")
            self.assertIsNotNone(manager.get_commit_msg())

        # Travis
        with tools.environment_append({
                "TRAVIS": "1",
                "TRAVIS_COMMIT_MESSAGE": "msg",
                "TRAVIS_BRANCH": "mybranch",
        }):
            manager = CIManager(self.printer)
            self.assertEquals(manager.get_branch(), "mybranch")
            self.assertEquals(manager.get_commit_msg(), "msg")

        # Appveyor
        with tools.environment_append({
                "APPVEYOR": "1",
                "APPVEYOR_REPO_COMMIT_MESSAGE": "msg",
                "APPVEYOR_REPO_COMMIT_MESSAGE_EXTENDED": "more",
                "APPVEYOR_REPO_BRANCH": "mybranch",
        }):
            manager = CIManager(self.printer)
            self.assertEquals(manager.get_branch(), "mybranch")
            self.assertEquals(manager.get_commit_msg(), "msg more")

        # Appveyor PULL REQUEST
        with tools.environment_append({
                "APPVEYOR": "1",
                "APPVEYOR_PULL_REQUEST_NUMBER": "1",
                "APPVEYOR_REPO_COMMIT_MESSAGE": "msg",
                "APPVEYOR_REPO_COMMIT_MESSAGE_EXTENDED": "more",
                "APPVEYOR_REPO_BRANCH": "mybranch",
        }):
            manager = CIManager(self.printer)
            self.assertIsNone(manager.get_branch())
            self.assertEquals(manager.get_commit_msg(), "msg more")

        # Appveyor no extended
        with tools.environment_append({
                "APPVEYOR": "1",
                "APPVEYOR_PULL_REQUEST_NUMBER": "1",
                "APPVEYOR_REPO_COMMIT_MESSAGE": "msg",
                "APPVEYOR_REPO_BRANCH": "mybranch",
        }):
            manager = CIManager(self.printer)
            self.assertIsNone(manager.get_branch())
            self.assertEquals(manager.get_commit_msg(), "msg")

        # Circle CI
        with tools.environment_append({
                "CIRCLECI": "1",
                "CIRCLE_BRANCH": "mybranch",
        }):
            manager = CIManager(self.printer)
            self.assertEquals(manager.get_branch(), "mybranch")
            self.assertIsNotNone(manager.get_commit_msg())

        # Gitlab
        with tools.environment_append({
                "GITLAB_CI": "1",
                "CI_BUILD_REF_NAME": "mybranch",
        }):
            manager = CIManager(self.printer)
            self.assertEquals(manager.get_branch(), "mybranch")
            self.assertIsNotNone(manager.get_commit_msg())

        # Jenkins
        with tools.environment_append({
                "JENKINS_URL": "1",
                "BRANCH_NAME": "mybranch",
        }):
            manager = CIManager(self.printer)
            self.assertEquals(manager.get_branch(), "mybranch")
            self.assertIsNotNone(manager.get_commit_msg())