コード例 #1
0
 def test_no_domains(self):
     """
     When we have an app containing no domains, an empty list is returned.
     """
     mlb_utils = MLBDomainUtils()
     apps = [mkapp("/my-app_1", group=None, HAPROXY_0_VHOST="example.com")]
     assert sorted(mlb_utils._apps_acme_domains(apps)) == []
コード例 #2
0
 def test_one_app_one_domain(self):
     """
     When we have one app with one domain, just that domain is returned.
     """
     mlb_utils = MLBDomainUtils()
     apps = [mkapp("/my-app_1", MARATHON_ACME_0_DOMAIN="example.com")]
     assert sorted(mlb_utils._apps_acme_domains(apps)) == ["example.com"]
コード例 #3
0
 def test_empty_domain(self):
     """
     When we have an app containing an empty domain label, an empty list is
     returned.
     """
     mlb_utils = MLBDomainUtils()
     apps = [mkapp("/my-app_1", MARATHON_ACME_0_DOMAIN="")]
     assert sorted(mlb_utils._apps_acme_domains(apps)) == []
コード例 #4
0
 def test_one_domain_when_multiple_disallowed(self):
     """
     When we have a label containing one domain and we disallow multiple
     certs, the one domain is returned.
     """
     mlb_utils = MLBDomainUtils(allow_multiple_certs=False)
     apps = [mkapp("/my-app_1", MARATHON_ACME_0_DOMAIN="example.com")]
     assert sorted(mlb_utils._apps_acme_domains(apps)) == ["example.com"]
コード例 #5
0
 def test_multiple_domains_in_one_label_when_disallowed(self):
     """
     When we have a label containing multiple domains and we disallow
     multiple certs, only the first is returned.
     """
     mlb_utils = MLBDomainUtils(allow_multiple_certs=False)
     apps = [mkapp("/my-app_1", MARATHON_ACME_0_DOMAIN="ex.com,ex2.com")]
     assert sorted(mlb_utils._apps_acme_domains(apps)) == ["ex.com"]
コード例 #6
0
 def test_multiple_domains_in_one_label(self):
     """
     When we have a label containing multiple domains, all are returned.
     """
     mlb_utils = MLBDomainUtils()
     apps = [mkapp("/my-app_1", MARATHON_ACME_0_DOMAIN="ex.com,ex2.com")]
     assert sorted(mlb_utils._apps_acme_domains(apps)) == [
         "ex.com",
         "ex2.com",
     ]
コード例 #7
0
 def test_two_apps(self):
     """
     When we have two apps, domains for both are returned.
     """
     mlb_utils = MLBDomainUtils()
     apps = [
         mkapp("/my-app_1", MARATHON_ACME_0_DOMAIN="example.com"),
         mkapp("/my-app_2", MARATHON_ACME_0_DOMAIN="example2.com"),
     ]
     assert sorted(mlb_utils._apps_acme_domains(apps)) == [
         "example.com",
         "example2.com",
     ]
コード例 #8
0
 def test_port_group_mismatch(self):
     """
     When we have an app containing a different group name for the only port
     with a domain, an empty list is returned.
     """
     mlb_utils = MLBDomainUtils()
     apps = [
         mkapp(
             "/my-app_1",
             HAPROXY_0_GROUP="internal",
             HAPROXY_0_VHOST="example.com",
             MARATHON_ACME_0_DOMAIN="example.com",
         )
     ]
     assert sorted(mlb_utils._apps_acme_domains(apps)) == []
コード例 #9
0
 def test_one_app_two_domains(self):
     """
     When we have one app with two domains, both domains are returned.
     """
     mlb_utils = MLBDomainUtils()
     apps = [
         mkapp(
             "/my-app_1",
             ports=[9000, 9001],
             MARATHON_ACME_0_DOMAIN="example.com",
             MARATHON_ACME_1_DOMAIN="example2.com",
         )
     ]
     assert sorted(mlb_utils._apps_acme_domains(apps)) == [
         "example.com",
         "example2.com",
     ]
コード例 #10
0
 def test_common_domains(self):
     """
     When we have multiple common domains, all copies are returned.
     """
     mlb_utils = MLBDomainUtils()
     apps = [
         mkapp(
             "/my-app_1",
             ports=[9000, 9001],
             MARATHON_ACME_0_DOMAIN="example.com",
             MARATHON_ACME_1_DOMAIN="example.com",
         ),
         mkapp(
             "/my-app_2",
             ports=[8000],
             MARATHON_ACME_0_DOMAIN="example.com",
         ),
     ]
     assert sorted(mlb_utils._apps_acme_domains(apps)) == [
         "example.com",
         "example.com",
         "example.com",
     ]