示例#1
0
class RemoteManagerTest(unittest.TestCase):
    """Unit test"""
    def setUp(self):
        self.conan_reference = ConanFileReference.loads(
            "openssl/2.0.3@lasote/testing")
        self.package_reference = PackageReference(self.conan_reference,
                                                  "123123123")
        self.remote_client = MockRemoteClient()
        self.output = TestBufferConanOutput()
        self.paths = ConanPaths(temp_folder(), temp_folder(), self.output)
        self.remotes = [("default", "url1"), ("other", "url2"),
                        ("last", "url3")]
        self.manager = RemoteManager(self.paths, self.remote_client,
                                     self.output)

    def test_no_remotes(self):
        client = TestClient()
        files = cpp_hello_conan_files("Hello0", "0.1")
        client.save(files)
        client.run("export lasote/stable")
        client.run("upload Hello0/0.1@lasote/stable", ignore_error=True)
        self.assertIn("ERROR: No default remote defined", client.user_io.out)

    def remote_selection_test(self):
        # If no remote is specified will look to first
        self.assertRaises(NotFoundException, self.manager.upload_conan,
                          self.conan_reference, Remote("other", "url"))

        # If remote is specified took it
        self.assertRaises(NotFoundException, self.manager.upload_conan,
                          self.conan_reference, Remote("other", "url"))

    def method_called_test(self):
        self.assertFalse(self.remote_client.upload_package.called)
        self.manager.upload_package(self.package_reference,
                                    Remote("other", "url"))
        self.assertTrue(self.remote_client.upload_package.called)

        self.assertFalse(self.remote_client.get_conan_digest.called)
        self.manager.get_conan_digest(self.conan_reference,
                                      Remote("other", "url"))
        self.assertTrue(self.remote_client.get_conan_digest.called)

        self.assertFalse(self.remote_client.get_conanfile.called)
        self.manager.get_conanfile(self.conan_reference,
                                   Remote("other", "url"))
        self.assertTrue(self.remote_client.get_conanfile.called)

        self.assertFalse(self.remote_client.get_package.called)
        self.manager.get_package(self.package_reference,
                                 Remote("other", "url"))
        self.assertTrue(self.remote_client.get_package.called)
示例#2
0
class RemoteManagerTest(unittest.TestCase):
    """Unit test"""

    def setUp(self):
        self.conan_reference = ConanFileReference.loads("openssl/2.0.3@lasote/testing")
        self.package_reference = PackageReference(self.conan_reference, "123123123")
        self.remote_client = MockRemoteClient()
        self.output = TestBufferConanOutput()
        self.paths = ConanPaths(temp_folder(), temp_folder(), self.output)
        self.remotes = [("default", "url1"), ("other", "url2"), ("last", "url3")]
        self.manager = RemoteManager(self.paths, self.remotes, self.remote_client, self.output)

    def test_no_remotes(self):
        client = TestClient()
        files = cpp_hello_conan_files("Hello0", "0.1")
        client.save(files)
        client.run("export lasote/stable")
        client.run("upload Hello0/0.1@lasote/stable", ignore_error=True)
        self.assertIn("ERROR: There is no configured default remote", client.user_io.out)

    def test_properties(self):
        # Remote names
        self.assertEquals(self.manager.remote_names, ["default", "other", "last"])
        # Remote url
        self.assertEquals(self.manager.remote_url("default"), "url1")
        self.assertEquals(self.manager.remote_url("other"), "url2")

    def remote_selection_test(self):
        # If no remote is specified will look to first
        self.assertRaises(NotFoundException, self.manager.upload_conan, self.conan_reference)

        # If remote is specified took it
        self.assertRaises(NotFoundException,
                          self.manager.upload_conan, self.conan_reference, "other")

    def method_called_test(self):
        self.assertFalse(self.remote_client.upload_package.called)
        self.manager.upload_package(self.package_reference, "other")
        self.assertTrue(self.remote_client.upload_package.called)

        self.assertFalse(self.remote_client.get_conan_digest.called)
        self.manager.get_conan_digest(self.conan_reference)
        self.assertTrue(self.remote_client.get_conan_digest.called)

        self.assertFalse(self.remote_client.get_conanfile.called)
        self.manager.get_conanfile(self.conan_reference)
        self.assertTrue(self.remote_client.get_conanfile.called)

        self.assertFalse(self.remote_client.get_package.called)
        self.manager.get_package(self.package_reference)
        self.assertTrue(self.remote_client.get_package.called)
示例#3
0
class RemoteManagerTest(unittest.TestCase):
    """Unit test"""
    def setUp(self):
        self.conan_reference = ConanFileReference.loads(
            "openssl/2.0.3@lasote/testing")
        self.package_reference = PackageReference(self.conan_reference,
                                                  "123123123")
        self.remote_client = MockRemoteClient()
        self.output = TestBufferConanOutput()
        self.paths = ConanPaths(temp_folder(), None, self.output)
        self.remotes = [("default", "url1"), ("other", "url2"),
                        ("last", "url3")]
        self.manager = RemoteManager(self.paths, self.remotes,
                                     self.remote_client, self.output)

    def test_properties(self):
        # Remote names
        self.assertEquals(self.manager.remote_names,
                          ["default", "other", "last"])
        # Remote url
        self.assertEquals(self.manager.remote_url("default"), "url1")
        self.assertEquals(self.manager.remote_url("other"), "url2")

    def remote_selection_test(self):
        # If no remote is specified will look to first
        self.assertRaises(NotFoundException, self.manager.upload_conan,
                          self.conan_reference)

        # If remote is specified took it
        self.assertRaises(NotFoundException, self.manager.upload_conan,
                          self.conan_reference, "other")

    def method_called_test(self):
        self.assertFalse(self.remote_client.upload_package.called)
        self.manager.upload_package(self.package_reference, "other")
        self.assertTrue(self.remote_client.upload_package.called)

        self.assertFalse(self.remote_client.get_conan_digest.called)
        self.manager.get_conan_digest(self.conan_reference)
        self.assertTrue(self.remote_client.get_conan_digest.called)

        self.assertFalse(self.remote_client.get_conanfile.called)
        self.manager.get_conanfile(self.conan_reference)
        self.assertTrue(self.remote_client.get_conanfile.called)

        self.assertFalse(self.remote_client.get_package.called)
        self.manager.get_package(self.package_reference)
        self.assertTrue(self.remote_client.get_package.called)
示例#4
0
class RemoteManagerTest(unittest.TestCase):
    """Unit test"""

    def setUp(self):
        self.conan_reference = ConanFileReference.loads("openssl/2.0.3@lasote/testing")
        self.package_reference = PackageReference(self.conan_reference, "123123123")
        self.remote_client = MockRemoteClient()
        self.output = TestBufferConanOutput()
        self.paths = ConanPaths(temp_folder(), None, self.output)
        self.remotes = [("default", "url1"), ("other", "url2"), ("last", "url3")]
        self.manager = RemoteManager(self.paths, self.remotes, self.remote_client, self.output)

    def test_properties(self):
        # Remote names
        self.assertEquals(self.manager.remote_names, ["default", "other", "last"])
        # Remote url
        self.assertEquals(self.manager.remote_url("default"), "url1")
        self.assertEquals(self.manager.remote_url("other"), "url2")

    def remote_selection_test(self):
        # If no remote is specified will look to first
        self.assertRaises(NotFoundException, self.manager.upload_conan, self.conan_reference)

        # If remote is specified took it
        self.assertRaises(NotFoundException,
                          self.manager.upload_conan, self.conan_reference, "other")

    def method_called_test(self):
        self.assertFalse(self.remote_client.upload_package.called)
        self.manager.upload_package(self.package_reference, "other")
        self.assertTrue(self.remote_client.upload_package.called)

        self.assertFalse(self.remote_client.get_conan_digest.called)
        self.manager.get_conan_digest(self.conan_reference)
        self.assertTrue(self.remote_client.get_conan_digest.called)

        self.assertFalse(self.remote_client.get_conanfile.called)
        self.manager.get_conanfile(self.conan_reference)
        self.assertTrue(self.remote_client.get_conanfile.called)

        self.assertFalse(self.remote_client.get_package.called)
        self.manager.get_package(self.package_reference)
        self.assertTrue(self.remote_client.get_package.called)