public void ShouldRetainEncodingIfNoneSet()
        {
            var filePath  = GetFixtureResource("Samples", "UTF16LE.ini");
            var variables = new CalamariVariables
            {
                ["LocalCacheFolderName"] = "SpongeBob"
            };

            var result = PerformTest(filePath, variables);

            var input = FileSystem.ReadFile(filePath, out var inputEncoding);

            Assert.AreEqual("utf-16", inputEncoding.WebName);
            Assert.AreEqual("utf-16", result.encoding.WebName);
            Assert.AreEqual(2, result.encoding.GetPreamble().Length); // BOM detected
            result.text.Should().Contain("banknames.ora");
            result.text.Should().MatchRegex(@"\r\n");                 // DOS CRLF
            result.text.Should().Be(input.Replace("#{LocalCacheFolderName}", "SpongeBob"));
        }
Beispiel #2
0
        public void ShouldRetainEncodingIfNoneSet()
        {
            var filePath  = GetFixtureResouce("Samples", "UTF16LE.ini");
            var variables = new VariableDictionary();

            variables["LocalCacheFolderName"] = "SpongeBob";

            var result = PerformTest(filePath, variables);

            Encoding encoding;

            FileSystem.ReadFile(filePath, out encoding);
            Assert.AreEqual(Encoding.Unicode, encoding);
            Assert.AreEqual(Encoding.Unicode, result.Encoding);
            Assert.True(Regex.Match(result.Text, "\\bLocalCacheFolderName=SpongeBob\\b").Success);
        }