public async Task OnRestoreCompleted_WhenRestoreFailed_IsUpToDate()
        {
            var restoreData = new RestoreData(string.Empty, DateTime.MinValue, succeeded: false);
            var snapshot    = IProjectSnapshot2Factory.Create();

            var result = await OnRestoreCompleted(snapshot, restoreData);

            Assert.True(result);
        }
        public async Task OnRestoreCompleted_WhenEvaluationIsMissingProjectAssetsFile_IsUpToDate()
        {
            string projectAssetsFile = @"C:\Project\obj\project.assets.json";

            var currentTimestamp = DateTime.Now;

            var restoreData = new RestoreData(projectAssetsFile, currentTimestamp);
            var snapshot    = IProjectSnapshot2Factory.Create();

            var result = await OnRestoreCompleted(snapshot, restoreData);

            Assert.True(result);
        }
        public async Task OnRestoreCompleted_WhenEvaluationRanSameAssetsFile_IsUpToDate()
        {
            string projectAssetsFile = @"C:\Project\obj\project.assets.json";

            var currentTimestamp    = DateTime.Now;
            var evaluationTimestamp = currentTimestamp;

            var restoreData = new RestoreData(projectAssetsFile, currentTimestamp);
            var snapshot    = IProjectSnapshot2Factory.WithAdditionalDependentFileTime(
                projectAssetsFile,
                evaluationTimestamp);

            var result = await OnRestoreCompleted(snapshot, restoreData);

            Assert.True(result);
        }