// using CanvasModel.Courses; // using CanvasModel.EnrollmentTerms; // using FluentAssertions; // using Moq; // using RestSharp; // using System.Net; // namespace Management.Test; // public class ICanvasServiceTests // { // [Test] // public async Task CanReadCanvasSemesters() // { // var expectedTerms = new EnrollmentTermModel[] { // new EnrollmentTermModel( // Id: 1, // Name: "one", // StartAt: new DateTime(2022, 1, 1), // EndAt: new DateTime(2022, 2, 1) // ), // }; // Mock mockRequestor = getTermsMock(expectedTerms); // var service = new ICanvasService(mockRequestor.Object); // var canvasTerms = await service.GetTerms(); // canvasTerms.Should().BeEquivalentTo(expectedTerms); // } // [Test] // public async Task CanGetActiveTerms() // { // var expectedTerms = new EnrollmentTermModel[] { // new EnrollmentTermModel( // Id: 1, // Name: "one", // StartAt: new DateTime(2022, 5, 1), // EndAt: new DateTime(2022, 7, 1) // ), // new EnrollmentTermModel( // Id: 2, // Name: "two", // StartAt: new DateTime(2022, 7, 1), // EndAt: new DateTime(2022, 9, 1) // ), // new EnrollmentTermModel( // Id: 3, // Name: "three", // StartAt: new DateTime(2022, 9, 1), // EndAt: new DateTime(2022, 10, 1) // ), // new EnrollmentTermModel( // Id: 4, // Name: "four", // StartAt: new DateTime(2022, 10, 1), // EndAt: new DateTime(2022, 11, 1) // ), // }; // Mock mockRequestor = getTermsMock(expectedTerms); // var service = new ICanvasService(mockRequestor.Object); // var queryDate = new DateTime(2022, 6, 1); // var canvasTerms = await service.GetCurrentTermsFor(queryDate); // canvasTerms.Count().Should().Be(3); // var termIds = canvasTerms.Select(t => t.Id); // var expectedIds = new int[] { 1, 2, 3 }; // termIds.Should().BeEquivalentTo(expectedIds); // } // private static Mock getTermsMock(EnrollmentTermModel[] expectedTerms) // { // var data = new RedundantEnrollmentTermsResponse(EnrollmentTerms: expectedTerms); // var response = new RestResponse(); // response.Data = data; // var mockRequestor = new Mock(); // mockRequestor // .Setup(s => s.GetAsync(It.IsAny())) // .ReturnsAsync(response); // return mockRequestor; // } // }