public async Task DownloadSubmissionsAsync_ValidSubmission_DownloadsSubmission() { var classroom = GetClassroom(); var project = GetProject(classroom); var checkpoint = GetCheckpoint(project); var student = GetStudent(classroom, "Student1"); var studentRepo = new RepositoryContents ( "Project1_Student1", "Checkpoint1", ArchiveStore.FileSystem ); var repoClient = GetMockGitHubRepositoryClient(studentRepo); var repoMetadataRetriever = GetMockRepositoryMetadataRetriever(); var downloader = GetSubmissionDownloader ( repoClient, repoMetadataRetriever ); var result = await downloader.DownloadSubmissionsAsync ( checkpoint, Collections.CreateList ( new StudentDownloadRequest(student, submitted: true) ) ); Assert.Single(result); Assert.Equal(student, result[0].Student); Assert.Equal(studentRepo.Contents, result[0].Contents); }
public async Task DownloadSubmissionsAsync_ValidSubmission_DownloadsSubmission() { var classroom = GetClassroom(); var project = GetProject(classroom); var checkpoint = GetCheckpoint(project); var student = GetStudent(classroom, "Student1"); var studentRepo = new RepositoryContents ( "Project1_Student1", "Checkpoint1", ArchiveStore.FileSystem ); var repoClient = GetMockGitHubRepositoryClient(studentRepo); var repoMetadataRetriever = GetMockRepositoryMetadataRetriever(); var downloader = GetSubmissionDownloader ( repoClient, repoMetadataRetriever ); var result = await downloader.DownloadSubmissionsAsync ( checkpoint, Collections.CreateList ( new StudentDownloadRequest(student, submitted: true) ) ); Assert.Equal(1, result.Count); Assert.Equal(student, result[0].Student); Assert.Equal(studentRepo.Contents, result[0].Contents); }
public async Task DownloadProjectTemplateAsync_DownloadsTemplate() { var classroom = GetClassroom(); var project = GetProject(classroom); var templateRepo = new RepositoryContents ( "Project1_Template", null /*branchName*/, ArchiveStore.Memory ); var repoClient = GetMockGitHubRepositoryClient(templateRepo); var downloader = GetSubmissionDownloader(repoClient); var result = await downloader.DownloadTemplateContentsAsync(project); Assert.Equal(result, templateRepo.Contents); }