Exemplo n.º 1
0
    def test_transform_dict_to_yaml_lines_list_accepts_joins(self):
        input = {
            "source": {"Fn::Join": [":", ["my-registry/my-app", {"Ref": "appVersion"}]]}
        }

        expected = [
            {
                "Fn::Join": [
                    ": ",
                    [
                        "source",
                        {
                            "Fn::Join": [
                                ":",
                                [
                                    "my-registry/my-app",
                                    {
                                        "Ref": "appVersion"
                                    }
                                ]
                            ]
                        }
                    ]
                ]
            }
        ]

        result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list(input)
        self.assertEqual(expected, result)
Exemplo n.º 2
0
    def test_transform_dict_to_yaml_lines_list_accepts_joins(self):
        input = {
            "source": {
                "Fn::Join":
                [":", ["my-registry/my-app", {
                    "Ref": "appVersion"
                }]]
            }
        }

        expected = [{
            "Fn::Join": [
                ": ",
                [
                    "source", {
                        "Fn::Join":
                        [":", ["my-registry/my-app", {
                            "Ref": "appVersion"
                        }]]
                    }
                ]
            ]
        }]

        result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list(
            input)
        self.assertEqual(expected, result)
Exemplo n.º 3
0
    def test_transform_dict_to_yaml_lines(self):
        input = {
            "docker-compose": {
                "version": "2",
                "services": {
                    "grafana": {
                        "environment": {
                            "GF_SECURITY_ADMIN_PASSWORD": {
                                "Ref": "grafanaAdminPassword"
                            }
                        },
                        "ports": ["3000:3000"],
                        "restart": "always"
                    }
                }
            }
        }

        expected = [
            "docker-compose:", "  services:", "    grafana:",
            "      environment:", "        GF_SECURITY_ADMIN_PASSWORD:"******"Fn::Join":
                ["", ["          ", {
                    "Ref": "grafanaAdminPassword"
                }]]
            }, "      ports:", "        - '3000:3000'",
            "      restart: 'always'", "  version: '2'"
        ]

        result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list(
            input)
        print(json.dumps(result, indent=4))
        self.assertEqual(expected, result)
Exemplo n.º 4
0
    def test_transform_dict_to_yaml_lines_list_returns_stable_order(self):
        input = {
            'd': 'd',
            'a': 'a',
            'e': 'e',
            'b': {
                'f': 'f',
                'c': 'c',
                'a': 'a'
            },
            "#": "3"
        }

        expected = [{
            'Fn::Join': [': ', ['#', '3']]
        }, {
            'Fn::Join': [': ', ['a', 'a']]
        }, 'b:', {
            'Fn::Join': [': ', ['  a', 'a']]
        }, {
            'Fn::Join': [': ', ['  c', 'c']]
        }, {
            'Fn::Join': [': ', ['  f', 'f']]
        }, {
            'Fn::Join': [': ', ['d', 'd']]
        }, {
            'Fn::Join': [': ', ['e', 'e']]
        }]

        result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list(
            input)
        self.assertEqual(expected, result)
Exemplo n.º 5
0
def test_transform_dict_to_yaml_lines_list_returns_stable_order(self):
    input = {
        "d": "d",
        "a": "a",
        "e": "e",
        "b": {
            "f": "f",
            "c": "c",
            "a": "a"
        },
        "#": "3"
    }

    expected = [{
        "Fn::Join": [": ", ["#", "3"]]
    }, {
        "Fn::Join": [": ", ["a", "a"]]
    }, "b:", {
        "Fn::Join": [": ", ["  a", "a"]]
    }, {
        "Fn::Join": [": ", ["  c", "c"]]
    }, {
        "Fn::Join": [": ", ["  f", "f"]]
    }, {
        "Fn::Join": [": ", ["d", "d"]]
    }, {
        "Fn::Join": [": ", ["e", "e"]]
    }]

    result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list(
        input)
    self.assertEqual(expected, result)
Exemplo n.º 6
0
    def test_transform_dict_to_yaml_lines_list_accepts_int_key_value(self):
        input = {'ports': {8080: 9000}}

        result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list(
            input)
        expected = ["ports:", {"Fn::Join": [": ", ["  8080", 9000]]}]

        self.assertEqual(expected, result)
Exemplo n.º 7
0
    def test_transform_dict_to_yaml_lines_preserves_boolean_values(self):
        input = {"a": True}
        expected = ["a: True"]

        result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list(
            input)
        print(json.dumps(result, indent=4))
        self.assertEqual(expected, result)
Exemplo n.º 8
0
 def test_transform_dict_to_yaml_lines_list_indents_sub_dicts(self):
     result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list(
         {'my-key': {
             'my-sub-key': 'value'
         }})
     self.assertEqual(
         ['my-key:', {
             'Fn::Join': [': ', ['  my-sub-key', 'value']]
         }], result)
Exemplo n.º 9
0
    def test_transform_dict_to_yaml_lines_list_accepts_multiple_sub_dicts(
            self):
        input = {"foo": {"baa": {"key": "value"}}}
        expected = ["foo:", "  baa:", "    key: 'value'"]

        result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list(
            input)
        print(json.dumps(result, indent=4))
        self.assertEqual(expected, result)
Exemplo n.º 10
0
    def test_transform_dict_to_yaml_lines_list_accepts_int_key_value(self):
        input = {'ports': {8080: 9000}}

        result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list(input)
        expected = [
            "ports:",
            {"Fn::Join": [": ", ["  8080", 9000]]}
        ]

        self.assertEqual(expected, result)
Exemplo n.º 11
0
    def test_transform_dict_to_yaml_lines_list_accepts_multiple_sub_dicts(
            self):
        input = {"foo": {'baa': {'key': 'value'}}}
        expected = [
            'foo:', '  baa:', {
                'Fn::Join': [': ', ['    key', 'value']]
            }
        ]

        result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list(
            input)
        self.assertEqual(expected, result)
Exemplo n.º 12
0
    def test_transform_dict_to_yaml_lines_list_returns_stable_order(self):
        input = {'d': 'd', 'a': 'a', 'e': 'e', 'b': {'f': 'f', 'c': 'c', 'a': 'a'}, "#": "3"}

        expected = [{'Fn::Join': [': ', ['#', '3']]},
                    {'Fn::Join': [': ', ['a', 'a']]},
                    'b:',
                    {'Fn::Join': [': ', ['  a', 'a']]},
                    {'Fn::Join': [': ', ['  c', 'c']]},
                    {'Fn::Join': [': ', ['  f', 'f']]},
                    {'Fn::Join': [': ', ['d', 'd']]},
                    {'Fn::Join': [': ', ['e', 'e']]}]

        result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list(input)
        self.assertEqual(expected, result)
Exemplo n.º 13
0
    def test_transform_dict_to_yaml_lines_list_accepts_multiple_sub_dicts(self):
        input = {
            "foo": {
                'baa': {'key': 'value'}
            }
        }
        expected = [
            'foo:',
            '  baa:',
            {'Fn::Join': [': ', ['    key', 'value']]}

        ]

        result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list(input)
        self.assertEqual(expected, result)
Exemplo n.º 14
0
 def test_transform_dict_to_yaml_lines_list_with_simple_kv(self):
     result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list(
         {"my-key": "my-value"})
     self.assertEqual(["my-key: 'my-value'"], result)
Exemplo n.º 15
0
 def test_transform_dict_to_yaml_lines_list_accepts_list_values(self):
     result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list(
         {'my-key': ['a', 'b']})
     self.assertEqual(['my-key:', '- a', '- b'], result)
Exemplo n.º 16
0
 def test_transform_dict_to_yaml_lines_list_accepts_list_values(self):
     result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list({'my-key': ['a', 'b']})
     self.assertEqual(['my-key:', '- a', '- b'], result)
Exemplo n.º 17
0
 def test_transform_dict_to_yaml_lines_list_accepts_integer_values(self):
     result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list({'my-key': 3})
     self.assertEqual([{'Fn::Join': [': ', ['my-key', 3]]}], result)
Exemplo n.º 18
0
 def test_transform_dict_to_yaml_lines_list_indents_sub_dicts(self):
     result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list(
         {'my-key': {'my-sub-key': 'value'}})
     self.assertEqual(['my-key:', {'Fn::Join': [': ', ['  my-sub-key', 'value']]}], result)
Exemplo n.º 19
0
 def test_transform_dict_to_yaml_lines_list_indents_sub_dicts(self):
     result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list(
         {"my-key": {
             "my-sub-key": "v"
         }})
     self.assertEqual(["my-key:", "  my-sub-key: 'v'"], result)
Exemplo n.º 20
0
 def test_transform_dict_to_yaml_lines_list_accepts_integer_values(self):
     result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list(
         {"my-key": 3})
     self.assertEqual(["my-key: 3"], result)
Exemplo n.º 21
0
 def test_transform_dict_to_yaml_lines_list(self):
     result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list(
         {'my-key': 'my-value'})
     self.assertEqual([{
         'Fn::Join': [': ', ['my-key', 'my-value']]
     }], result)
Exemplo n.º 22
0
 def test_transform_dict_to_yaml_lines_list(self):
     result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list({'my-key': 'my-value'})
     self.assertEqual([{'Fn::Join': [': ', ['my-key', 'my-value']]}], result)
Exemplo n.º 23
0
 def test_transform_dict_to_yaml_lines_list_accepts_integer_values(self):
     result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list(
         {'my-key': 3})
     self.assertEqual([{'Fn::Join': [': ', ['my-key', 3]]}], result)
Exemplo n.º 24
0
    def test_transform_dict_to_yaml_lines_preserves_double_values(self):
        input = {"a": 2.3}
        expected = ["a: 2.3"]

        result = CloudFormationTemplateTransformer.transform_dict_to_yaml_lines_list(input)
        self.assertEqual(expected, result)