def test_bundle_icons_exact_match(self): data = copy.deepcopy(bundle_data) data["Id"] = "~containers/kubeapi-load-balancer-613" bundle = models.Bundle(data) self.assertTrue(bundle.icons[0].endswith( "~containers/kubeapi-load-balancer-613/icon.svg")) self.assertTrue( bundle.icons[1].endswith("~containers/easyrsa-231/icon.svg"))
def test_bundle_icons_no_match(self): data = copy.deepcopy(bundle_data) data["Id"] = "cs:nothing-here-123" bundle = models.Bundle(data) self.assertTrue( bundle.icons[0].endswith("~containers/easyrsa-231/icon.svg")) self.assertTrue( bundle.icons[1].endswith("~containers/etcd-411/icon.svg"))
def test_bundle_icons_only_one(self): data = copy.deepcopy(bundle_data) data["Meta"]["bundle-metadata"]["applications"] = { "kubernetes-master": { "Charm": "cs:~containers/kubernetes-master-636" } } bundle = models.Bundle(data) self.assertEqual(len(bundle.icons), 1) self.assertTrue(bundle.icons[0].endswith( "~containers/kubernetes-master-636/icon.svg"))
def test_bundle_supported(self): data = copy.deepcopy(bundle_data) data["Meta"]["extra-info"]["supported"] = "true" data["Meta"]["extra-info"]["price"] = "99" data["Meta"]["extra-info"][ "description"] = "Great ol' bundle\nthis one" bundle = models.Bundle(data) self.assertTrue(bundle.supported) self.assertEqual(bundle.supported_price, "99") self.assertEqual(bundle.supported_description, "<p>Great ol' bundle\nthis one</p>")
def test_bundle(self): bundle = models.Bundle(bundle_data) self.assertTrue( bundle.archive_url.endswith( "bundle/canonical-kubernetes-466/archive")) self.assertTrue( bundle.bundle_visualisation.endswith( "bundle/canonical-kubernetes-466/diagram.svg")) self.assertEqual(bundle.bugs_url, "https://bugs.launchpad.net/charmed-kubernetes") self.assertEqual(bundle.card_id, "bundle/canonical-kubernetes-466") self.assertEqual( bundle.channels, [ { "Channel": "stable", "Current": False }, { "Channel": "candidate", "Current": False }, { "Channel": "beta", "Current": False }, { "Channel": "edge", "Current": False }, ], ) self.assertEqual( bundle.description, "<p>A highly-available, production-grade Kubernetes cluster.</p>", ) self.assertEqual(bundle.display_name, "The Charmed Distribution of Kubernetes") self.assertEqual(bundle.homepage, "https://www.ubuntu.com/kubernetes/docs") self.assertEqual(bundle.id, "cs:bundle/canonical-kubernetes-466") self.assertFalse(bundle.is_charm) self.assertEqual(bundle.owner, "containers") self.assertIsNone(bundle.promulgated) self.assertEqual(bundle.revision_number, 466) self.assertEqual(bundle.series, ["bionic"]) self.assertIsNone(bundle.tags) self.assertEqual(bundle.units, 10) self.assertEqual(bundle.url, "canonical-kubernetes/bundle/466")
def test_bundle_icons(self): bundle = models.Bundle(bundle_data) self.assertTrue(bundle.icons[0].endswith( "~containers/kubernetes-master-636/icon.svg")) self.assertTrue(bundle.icons[1].endswith( "~containers/kubernetes-worker-502/icon.svg"))