def test_sanitize_tag_string(self):
     self.assertEqual(sanitize_aws_tag_string("serverless"), "serverless")
     # Don't replace : \ / . in middle of string
     self.assertEqual(sanitize_aws_tag_string("ser-/.ver_less"),
                      "ser-/.ver_less")
     # Remove invalid characters
     self.assertEqual(sanitize_aws_tag_string("s+e@rv_erl_ess"),
                      "s_e_rv_erl_ess")
     # Dedup underscores
     self.assertEqual(sanitize_aws_tag_string("serverl___ess"),
                      "serverl_ess")
     # Keep colons when remove_colons=False
     self.assertEqual(sanitize_aws_tag_string("serv:erless:"),
                      "serv:erless:")
     # Substitute colon when remove_colons=True
     self.assertEqual(
         sanitize_aws_tag_string("serv:erless:", remove_colons=True),
         "serv_erless")
     # Convert to lower
     self.assertEqual(sanitize_aws_tag_string("serVerLess"), "serverless")
     self.assertEqual(sanitize_aws_tag_string(""), "")
     self.assertEqual(sanitize_aws_tag_string("6.6.6"), ".6.6")
     self.assertEqual(
         sanitize_aws_tag_string("6.6.6", remove_leading_digits=False),
         "6.6.6")
 def test_sanitize_tag_string(self):
     self.assertEqual(sanitize_aws_tag_string("serverless"), "serverless")
     self.assertEqual(sanitize_aws_tag_string("ser:ver_less"),
                      "ser_ver_less")
     self.assertEqual(sanitize_aws_tag_string("s-erv:erl_ess"),
                      "s_erv_erl_ess")