public async Task SarifFileWithContents_OpensEmbeddedNonFileUriBinaryFile()
        {
            string mockContent    = null;
            var    mockFileSystem = new Mock <IFileSystem>();

            mockFileSystem
            .Setup(fs => fs.FileExists(It.IsAny <string>()))
            .Returns((string path) => false);
            mockFileSystem
            .Setup(fs => fs.FileWriteAllText(It.IsAny <string>(), It.IsAny <string>()))
            .Callback((string path, string content) => mockContent = content);
            mockFileSystem
            .Setup(fs => fs.FileSetAttributes(It.IsAny <string>(), FileAttributes.ReadOnly))
            .Verifiable();
            CodeAnalysisResultManager.Instance = new CodeAnalysisResultManager(mockFileSystem.Object);

            await TestUtilities.InitializeTestEnvironmentAsync(this.testLog);

            string rebaselinedFile = CodeAnalysisResultManager.Instance.CreateFileFromContents(this.CurrentRunIndex, Key8);

            Models.ArtifactDetailsModel fileDetail = this.CurrentRunDataCache.FileDetails[Key8];
            string fileText = mockContent;

            fileDetail.Sha256Hash.Should().Be(ExpectedHashValue2);
            fileText.Should().Be(ExpectedContents2);
        }
        public void SarifFileWithContents_HandlesEmptyTextContents()
        {
            Models.ArtifactDetailsModel fileDetail = this.CurrentRunDataCache.FileDetails[Key6];
            string contents = fileDetail.GetContents();

            fileDetail.Sha256Hash.Should().Be(EmptyStringHash);
            contents.Should().Be(string.Empty);
        }
        public async Task SarifFileWithContents_DecodesTextContents()
        {
            await TestUtilities.InitializeTestEnvironmentAsync(this.testLog);

            Models.ArtifactDetailsModel fileDetail = this.CurrentRunDataCache.FileDetails[Key3];
            string contents = fileDetail.GetContents();

            contents.Should().Be(ExpectedContents1);
        }
        public async Task SarifFileWithContents_GeneratesHash()
        {
            await TestUtilities.InitializeTestEnvironmentAsync(this.testLog);

            Models.ArtifactDetailsModel fileDetail = this.CurrentRunDataCache.FileDetails[Key1];
            string contents = fileDetail.GetContents();

            fileDetail.Sha256Hash.Should().Be(ExpectedHashValue1);
            contents.Should().Be(ExpectedContents1);
        }
        public async Task SarifFileWithContents_HandlesEmptyBinaryContents()
        {
            await TestUtilities.InitializeTestEnvironmentAsync(this.testLog);

            Models.ArtifactDetailsModel fileDetail = this.CurrentRunDataCache.FileDetails[Key5];
            string contents = fileDetail.GetContents();

            fileDetail.Sha256Hash.Should().Be(EmptyStringHash);
            contents.Should().Be(string.Empty);
        }