public void Should_Stringify_ReturnArgName_If_NullParameters()
        {
            var translation = new Dictionary <string, string>()
            {
                ["key1"] = "value1",
                ["key2"] = "value2",
            };

            var arg = new TranslationArg(translation);

            var name = arg.ToString(null);

            name.Should().Be("_translation");
        }
        public void Should_Stringify_UsingDictionary_And_Key()
        {
            var translation = new Dictionary <string, string>()
            {
                ["key1"] = "value1",
                ["key2"] = "value2",
            };

            var arg = new TranslationArg(translation);

            var key1 = arg.ToString(new Dictionary <string, string>()
            {
                ["key"] = "key1",
            });

            var key2 = arg.ToString(new Dictionary <string, string>()
            {
                ["key"] = "key2",
            });

            key1.Should().Be("value1");
            key2.Should().Be("value2");
        }
        public void Should_Stringify_ReturnKey_If_KeyNotInTranslation()
        {
            var translation = new Dictionary <string, string>()
            {
                ["key1"] = "value1",
                ["key2"] = "value2",
            };

            var arg = new TranslationArg(translation);

            var key1 = arg.ToString(new Dictionary <string, string>()
            {
                ["key"] = "invalid",
            });

            var key2 = arg.ToString(new Dictionary <string, string>()
            {
                ["key"] = "KEY1",
            });

            key1.Should().Be("invalid");
            key2.Should().Be("KEY1");
        }
        public void Should_Stringify_ReturnArgName_If_InvalidParameterName()
        {
            var translation = new Dictionary <string, string>()
            {
                ["key1"] = "value1",
                ["key2"] = "value2",
            };

            var arg = new TranslationArg(translation);

            var key = new Dictionary <string, string>()
            {
                ["invalid_key"] = "value1"
            };

            var name = arg.ToString(key);

            name.Should().Be("_translation");
        }