public void ConstructedWithoutEncoding_EmptyStream_DetectsEncoding() { // Arrange var content = TestRazorSourceDocument.CreateStreamContent(content: string.Empty, encoding: Encoding.UTF32); // Act var document = new StreamSourceDocument(content, null, RazorSourceDocumentProperties.Default); // Assert Assert.IsType <StreamSourceDocument>(document); Assert.Equal(Encoding.UTF32, document.Encoding); }
public void RelativePath_Null() { // Arrange var content = "Hello World!"; var stream = CreateBOMStream(content, Encoding.UTF8); // Act var document = new StreamSourceDocument(stream, Encoding.UTF8, new RazorSourceDocumentProperties(filePath: null, relativePath: null)); // Assert Assert.Null(document.RelativePath); }
public void FilePath() { // Arrange var content = "Hello World!"; var stream = CreateBOMStream(content, Encoding.UTF8); // Act var document = new StreamSourceDocument(stream, Encoding.UTF8, new RazorSourceDocumentProperties(filePath: "file.cshtml", relativePath: null)); // Assert Assert.Equal("file.cshtml", document.FilePath); }
public void ConstructedWithoutEncoding_EmptyStream_DetectsEncoding() { // Arrange var content = TestRazorSourceDocument.CreateStreamContent(content: string.Empty, encoding: Encoding.UTF32); // Act var document = new StreamSourceDocument(content, encoding: null, fileName: "file.cshtml"); // Assert Assert.IsType <StreamSourceDocument>(document); Assert.Equal("file.cshtml", document.FilePath); Assert.Equal(Encoding.UTF32, document.Encoding); }
public void GetChecksum_ComputesCorrectChecksum_UTF8() { // Arrange var content = "Hello World!"; var stream = CreateBOMStream(content, Encoding.UTF8); var document = new StreamSourceDocument(stream, Encoding.UTF8, RazorSourceDocumentProperties.Default); var expectedChecksum = new byte[] { 70, 180, 84, 105, 70, 79, 152, 31, 71, 157, 46, 159, 50, 83, 1, 243, 222, 48, 90, 18 }; // Act var checksum = document.GetChecksum(); // Assert Assert.Equal(expectedChecksum, checksum); }
public void GetChecksum_ComputesCorrectChecksum_UTF32AutoDetect() { // Arrange var content = "Hello World!"; var stream = CreateBOMStream(content, Encoding.UTF32); var document = new StreamSourceDocument(stream, null, RazorSourceDocumentProperties.Default); var expectedChecksum = new byte[] { 159, 154, 109, 89, 250, 163, 165, 108, 2, 112, 34, 4, 247, 161, 82, 168, 77, 213, 107, 71 }; // Act var checksum = document.GetChecksum(); // Assert Assert.Equal(expectedChecksum, checksum); }
public void GetChecksum_ReturnsCopiedChecksum() { // Arrange var content = "Hello World!"; var stream = CreateBOMStream(content, Encoding.UTF8); var document = new StreamSourceDocument(stream, null, RazorSourceDocumentProperties.Default); // Act var firstChecksum = document.GetChecksum(); var secondChecksum = document.GetChecksum(); // Assert Assert.Equal(firstChecksum, secondChecksum); Assert.NotSame(firstChecksum, secondChecksum); }
public void DetectsSizeOfStreamForLargeContent(int contentLength) { // Arrange var content = new string('a', contentLength); var stream = TestRazorSourceDocument.CreateStreamContent(content); // Act var document = new StreamSourceDocument(stream, null, RazorSourceDocumentProperties.Default); // Assert var streamDocument = Assert.IsType <StreamSourceDocument>(document); Assert.IsType <LargeTextSourceDocument>(streamDocument._innerSourceDocument); Assert.Same(Encoding.UTF8, document.Encoding); Assert.Equal(content, ReadContent(document)); }
public void DetectsSizeOfStreamForLargeContent(int contentLength) { // Arrange var content = new string('a', contentLength); var stream = TestRazorSourceDocument.CreateStreamContent(content); // Act var document = new StreamSourceDocument(stream, encoding: null, fileName: "file.cshtml"); // Assert var streamDocument = Assert.IsType <StreamSourceDocument>(document); Assert.IsType <LargeTextSourceDocument>(streamDocument._innerSourceDocument); Assert.Equal("file.cshtml", document.FilePath); Assert.Same(Encoding.UTF8, document.Encoding); Assert.Equal(content, ReadContent(document)); }