示例#1
0
        public void TryRead_should_return_expected_results()
        {
            var fileResolver = new FileResolver();
            var tempFile     = Path.Combine(Path.GetTempPath(), $"BICEP_TEST_{Guid.NewGuid()}");

            File.WriteAllText(tempFile, "abcd\r\ndef");
            fileResolver.TryRead(tempFile, out var failureMessage).Should().Equals("abc\r\ndef");
            failureMessage.Should().BeNull();

            File.Delete(tempFile);

            fileResolver.TryRead(tempFile, out failureMessage).Should().BeNull();
            failureMessage.Should().NotBeNullOrWhiteSpace();
        }
示例#2
0
        public void TryRead_should_return_expected_results()
        {
            var fileResolver = new FileResolver();
            var tempFile     = Path.Combine(Path.GetTempPath(), $"BICEP_TEST_{Guid.NewGuid()}");
            var tempFileUri  = PathHelper.FilePathToFileUrl(tempFile);

            File.WriteAllText(tempFile, "abcd\r\ndef");
            fileResolver.TryRead(tempFileUri, out var fileContents, out var failureMessage).Should().BeTrue();
            fileContents.Should().Be("abcd\r\ndef");
            failureMessage.Should().BeNull();

            File.Delete(tempFile);

            fileResolver.TryRead(tempFileUri, out fileContents, out failureMessage).Should().BeFalse();
            fileContents.Should().BeNull();
            failureMessage.Should().NotBeNull();
        }
示例#3
0
        public void TryReadWithLimit_should_return_expected_results()
        {
            var fileResolver = new FileResolver();
            var tempFile     = Path.Combine(Path.GetTempPath(), $"BICEP_TEST_{Guid.NewGuid()}");
            var tempFileUri  = PathHelper.FilePathToFileUrl(tempFile);

            File.WriteAllText(tempFile, "abcd\r\ndef");

            fileResolver.TryRead(tempFileUri, out var fileContents, out var failureMessage, Encoding.UTF8, 6, out var _).Should().BeFalse();
            fileContents.Should().BeNull();
            failureMessage.Should().NotBeNull();
            Core.Diagnostics.DiagnosticBuilder.DiagnosticBuilderInternal diag = new(new Core.Parsing.TextSpan(0, 5));
            var err = failureMessage !.Invoke(diag);

            err.Message.Should().Contain($"6 characters");

            File.Delete(tempFile);

            fileResolver.TryRead(tempFileUri, out fileContents, out failureMessage, Encoding.UTF8, 6, out var _).Should().BeFalse();
            fileContents.Should().BeNull();
            failureMessage.Should().NotBeNull();
        }