""" Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: MIT-0 """ from test.unit.rules import BaseRuleTestCase from cfnlint.rules.functions.Join import Join # pylint: disable=E0401 class TestRulesJoin(BaseRuleTestCase): """Test Rules Get Att""" def setUp(self): """Setup""" super(TestRulesJoin, self).setUp() self.collection.register(Join()) self.success_templates = [ "test/fixtures/templates/good/functions/join.yaml", ] def test_functions(self): """Test some of the base functions""" rule = Join() output = rule._normalize_getatt("Resource.Output") self.assertEqual(output[0], "Resource") self.assertEqual(output[1], "Output") output = rule._normalize_getatt("Resource.Outputs.Output") self.assertEqual(output[0], "Resource") self.assertEqual(output[1], "Outputs.Output") output = rule._normalize_getatt(["Resource", "Output"]) self.assertEqual(output[0], "Resource") self.assertEqual(output[1], "Output") def test_file_positive(self): """Test Positive""" self.helper_file_positive() def test_file_negative(self): """Test failure""" self.helper_file_negative("test/fixtures/templates/bad/functions/join.yaml", 11)