コード例 #1
0
        public async Task GetTrainingProgrammes_WithMultipleStandardAndOneFrameworks_ShouldReturnAll(bool populateCache)
        {
            // Arrange
            var fixtures = new TrainingProgrammeApiClientTestFixtures()
                           .WithFramework("123")
                           .WithFramework("124")
                           .WithFramework("125")
                           .WithStandard("456")
                           .WithStandard("457")
                           .WithStandard("458");

            if (populateCache)
            {
                fixtures.WithPopulatedCache();
            }

            var client = fixtures.CreateClient();

            // Act
            var trainingProgrammes = await client.GetTrainingProgrammes();

            // Assert
            const int expectedCount = 6;

            Assert.AreEqual(expectedCount, trainingProgrammes.Count);
        }
コード例 #2
0
        private async Task CheckCallReturnsExpectedTypes(Func <TrainingProgrammeApiClient, Task <IReadOnlyList <ITrainingProgramme> > > getter, bool addFramework, bool addStandard, bool expectFramework, bool expectStandard)
        {
            // Arrange
            var fixtures = new TrainingProgrammeApiClientTestFixtures();

            if (addFramework)
            {
                fixtures.WithFramework("123");
            }
            if (addStandard)
            {
                fixtures.WithStandard("456");
            }

            var client = fixtures.CreateClient();

            // Act
            var trainingProgrammes = await getter(client);

            var actualFramework = trainingProgrammes.Any(tp => tp.ProgrammeType == ProgrammeType.Framework);
            var actualStandard  = trainingProgrammes.Any(tp => tp.ProgrammeType == ProgrammeType.Standard);

            // Assert
            Assert.AreEqual(expectFramework, actualFramework, $"Framework result not correct: expected={expectFramework} actual:{actualFramework}");
            Assert.AreEqual(expectStandard, actualStandard, $"Standard result not correct: expected={expectStandard} actual:{actualStandard}");
        }
コード例 #3
0
        public async Task GetTrainingProgrammes_WithNoProgrammes_ShouldReturnEmptyCollection()
        {
            // Arrange
            var fixtures = new TrainingProgrammeApiClientTestFixtures();
            var client   = fixtures.CreateClient();

            // Act
            var trainingProgrammes = await client.GetTrainingProgrammes();

            // Assert
            Assert.IsNotNull(trainingProgrammes);
            const int expectedCount = 0;

            Assert.AreEqual(expectedCount, trainingProgrammes.Count);
        }
コード例 #4
0
        public async Task GetTrainingProgramme_WithIdDefinedForFramework_ShouldReturnFramework()
        {
            // Arrange
            const string id       = "123";
            var          fixtures = new TrainingProgrammeApiClientTestFixtures().WithFramework(id);
            var          client   = fixtures.CreateClient();

            // Act
            var trainingProgramme = await client.GetTrainingProgramme(id);

            // Assert
            Assert.IsNotNull(trainingProgramme);
            Assert.AreEqual(id, trainingProgramme.Id);
            Assert.AreEqual(ProgrammeType.Framework, trainingProgramme.ProgrammeType);
        }
コード例 #5
0
        public async Task GetTrainingProgrammes_WithOneStandardAndOneFramework_ShouldReturnBoth()
        {
            // Arrange
            var fixtures = new TrainingProgrammeApiClientTestFixtures()
                           .WithFramework("123")
                           .WithStandard("456");

            var client = fixtures.CreateClient();

            // Act
            var trainingProgrammes = await client.GetTrainingProgrammes();

            // Assert
            const int expectedCount = 2;

            Assert.AreEqual(expectedCount, trainingProgrammes.Count);
        }
コード例 #6
0
        public void Constructor_ValidCall_ShouldThrowException()
        {
            var fixtures = new TrainingProgrammeApiClientTestFixtures();

            fixtures.CreateClient();
        }