Ejemplo n.º 1
0
        public void ThenTheStudentIsMarkedAgainstClass()
        {
            var response = ApiCaller.Get <List <UserModel> >(Routes.GetClassAttendance(ScenarioCache.GetId(ModelIdKeys.ClassId)));

            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
            Assert.Contains(ScenarioCache.GetId(ModelIdKeys.UserId), response.Data.Select(x => x.Id).ToList());
        }
        public void WhenTheBlockRoomUnassignmentIsRequested()
        {
            var blockId  = ScenarioCache.GetId(ModelIdKeys.BlockId);
            var response = ApiCaller.Delete <ActionReponse <BlockModel> >(Routes.GetBlockRoom(blockId));

            ScenarioCache.StoreActionResponse(response);
        }
Ejemplo n.º 3
0
        public void ThenTheUserDoesntHaveAPass()
        {
            var response = ApiCaller.Get <List <PassModel> >(Routes.GetUserPasses(ScenarioCache.GetId(ModelIdKeys.UserId)));

            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
            Assert.IsEmpty(response.Data);
        }
Ejemplo n.º 4
0
        public void ThenTheStudentIsMarkedAgainstTheEvent()
        {
            var response = ApiCaller.Get <StandAloneEventModel>(Routes.GetById(Routes.StandAloneEvent, ScenarioCache.GetId(ModelIdKeys.StandAloneEventId)));

            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
            Assert.Contains(ScenarioCache.GetId(ModelIdKeys.UserId), response.Data.ActualStudents.Select(x => x.Id).ToList());
        }
Ejemplo n.º 5
0
        public void ThenBlockCanBeRetrieved()
        {
            var response = ApiCaller.Get <BlockModel>(Routes.GetById(Routes.Blocks, ScenarioCache.GetId(ModelIdKeys.BlockId)));

            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
            Assert.IsNotNull(response.Data);
        }
Ejemplo n.º 6
0
        public void ThenTheBlockIsNotInviteOnly()
        {
            var response = ApiCaller.Get <BlockModel>(Routes.GetById(Routes.Blocks, ScenarioCache.GetId(ModelIdKeys.BlockId)));

            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
            Assert.IsFalse(response.Data.IsInviteOnly);
        }
Ejemplo n.º 7
0
        public void ThenTheBlockClassCapacityIs(int classCapacity)
        {
            var block = ApiCaller.Get <BlockModel>(Routes.GetById(Routes.Blocks, ScenarioCache.GetId(ModelIdKeys.BlockId))).Data;

            Assert.AreEqual(classCapacity, block.ClassCapacity);
            ScenarioCache.Store(ModelKeys.Block, block);
        }
        public void WhenTheClassRoomUnassignmentIsRequested()
        {
            var classId  = ScenarioCache.GetId(ModelIdKeys.ClassId);
            var response = ApiCaller.Delete <ActionReponse <ClassModel> >(Routes.GetClassRoom(classId));

            ScenarioCache.StoreActionResponse(response);
        }
Ejemplo n.º 9
0
        public void WhenTheBlockIsDeleted()
        {
            var blockId  = ScenarioCache.GetId(ModelIdKeys.BlockId);
            var response = ApiCaller.Delete <ActionReponse <BlockModel> >(Routes.GetById(Routes.Blocks, blockId));

            ScenarioCache.StoreActionResponse(response);
        }
Ejemplo n.º 10
0
        public void ThenTheBlockDetailsHasTheRoom()
        {
            var block  = ApiCaller.Get <BlockModel>(Routes.GetById(Routes.Blocks, ScenarioCache.GetId(ModelIdKeys.BlockId))).Data;
            var roomId = ScenarioCache.GetId(ModelIdKeys.RoomId);

            Assert.IsNotNull(block.Room);
            Assert.AreEqual(roomId, block.Room.Id);
        }
Ejemplo n.º 11
0
        public void ThenTheClassDetailsHasTheRoom()
        {
            var theClass = ApiCaller.Get <ClassModel>(Routes.GetById(Routes.Classes, ScenarioCache.GetId(ModelIdKeys.ClassId))).Data;
            var roomId   = ScenarioCache.GetId(ModelIdKeys.RoomId);

            Assert.IsNotNull(theClass.Room);
            Assert.AreEqual(roomId, theClass.Room.Id);
        }
Ejemplo n.º 12
0
        public void ThenTheUserHasAPass()
        {
            var response = ApiCaller.Get <List <PassModel> >(Routes.GetUserPasses(ScenarioCache.GetId(ModelIdKeys.UserId)));

            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
            Assert.IsNotEmpty(response.Data);

            ScenarioCache.Store(ModelKeys.Pass, response.Data.Single());
        }
Ejemplo n.º 13
0
        public void WhenTheTeacherUnchecksTheStudentIntoTheEvent()
        {
            var response =
                ApiCaller.Delete <ActionReponse <StandAloneEventModel> >(
                    Routes.GetAttendEvent(ScenarioCache.GetId(ModelIdKeys.StandAloneEventId),
                                          ScenarioCache.GetId(ModelIdKeys.UserId)));

            ScenarioCache.StoreActionResponse(response);
        }
Ejemplo n.º 14
0
        public void GivenThePendingBlockIsToBeHeldInTheRoom()
        {
            var block  = ScenarioCache.Get <BlockModel>(ModelKeys.Block);
            var roomId = ScenarioCache.GetId(ModelIdKeys.RoomId);

            block.Room = new RoomModel(roomId);

            ScenarioCache.Store(ModelKeys.Block, block);
        }
Ejemplo n.º 15
0
        public void WhenTheClassTeachersAreChanged()
        {
            var classId = ScenarioCache.GetId(ModelIdKeys.ClassId);

            var response = ApiCaller.Put <ActionReponse <ClassModel> >(ScenarioCache.Get <List <int> >(NewTeacherIdsKey),
                                                                       Routes.GetChangeClassTeachers(ScenarioCache.GetId(ModelIdKeys.ClassId)));

            ScenarioCache.StoreActionResponse(response);
        }
Ejemplo n.º 16
0
        public void ThenTheCorrectNumberOfClassesAreCreated()
        {
            var response = ApiCaller.Get <BlockModel>(Routes.GetById(Routes.Blocks, ScenarioCache.GetId(ModelIdKeys.BlockId)));
            var block    = response.Data;

            var expectedBlock = ScenarioCache.Get <BlockModel>(ModelKeys.Block);

            Assert.AreEqual(expectedBlock.NumberOfClasses, block.Classes.Count);
        }
Ejemplo n.º 17
0
        public void WhenTheTeacherUnchecksTheStudentIn()
        {
            var response =
                ApiCaller.Delete <ActionReponse <ClassModel> >(
                    Routes.GetAttendClass(ScenarioCache.GetId(ModelIdKeys.ClassId),
                                          ScenarioCache.GetId(ModelIdKeys.UserId)));

            ScenarioCache.StoreActionResponse(response);
        }
Ejemplo n.º 18
0
        public void ThenAllTheClassesInTheBlockDoesNotHaveTheRoom()
        {
            var block = ApiCaller.Get <BlockModel>(Routes.GetById(Routes.Blocks, ScenarioCache.GetId(ModelIdKeys.BlockId))).Data;

            foreach (var classModel in block.Classes)
            {
                Assert.IsNull(classModel.Room);
            }
        }
Ejemplo n.º 19
0
        public void ThenTheBlocksDatesAreInUtc()
        {
            var response = ApiCaller.Get <BlockModel>(Routes.GetById(Routes.Blocks, ScenarioCache.GetId(ModelIdKeys.BlockId)));

            var originalBlock = ScenarioCache.Get <BlockModel>(ModelKeys.Block);

            Assert.AreNotEqual(originalBlock.StartDate.Offset, response.Data.StartDate.Offset);
            Assert.AreEqual(originalBlock.StartDate.ToUniversalTime(), response.Data.StartDate.ToUniversalTime());
            Assert.AreEqual(originalBlock.StartDate.ToLocalTime(), response.Data.StartDate.ToLocalTime());
        }
Ejemplo n.º 20
0
        public void WhenTheBlockDetailsReportIsRequested()
        {
            var blockId = ScenarioCache.GetId(ModelIdKeys.BlockId);

            var url      = Routes.GetBlockDetailsReport(blockId);
            var response = ApiCaller.Get <BlockDetailsResponse>(url);

            ScenarioCache.StoreResponse(response);
            ScenarioCache.Store(ModelKeys.BlockDetailsReport, response.Data);
        }
        public void ThenTheUserIsRegisteredInTheStandAloneEvent()
        {
            var response = ApiCaller.Get <StandAloneEventModel>(Routes.GetById(Routes.StandAloneEvent, ScenarioCache.GetId(ModelIdKeys.StandAloneEventId)));

            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);

            var user = response.Data.RegisteredStudents.Single();

            Assert.AreEqual(ScenarioCache.GetId(ModelIdKeys.UserId), user.Id);
        }
Ejemplo n.º 22
0
        public void ThenTheUserIsEnroledInTheBlock()
        {
            var response = ApiCaller.Get <BlockForRegistrationModel>(Routes.GetById(Routes.Blocks, ScenarioCache.GetId(ModelIdKeys.BlockId)));

            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);

            var user = response.Data.EnroledStudents.Single();

            Assert.AreEqual(ScenarioCache.GetId(ModelIdKeys.UserId), user.Id);
        }
Ejemplo n.º 23
0
        public void ThenTheBlocksStartAndEndTimeIsUpdated()
        {
            var block = ApiCaller.Get <BlockModel>(Routes.GetById(Routes.Blocks, ScenarioCache.GetId(ModelIdKeys.BlockId))).Data;

            var expectedBlock = ScenarioCache.Get <BlockModel>(ModelKeys.Block);

            Assert.AreEqual(expectedBlock.StartDate, block.StartDate);
            Assert.AreEqual(expectedBlock.EndDate, block.EndDate);

            ScenarioCache.Store(ModelKeys.Block, block);
        }
Ejemplo n.º 24
0
        public void ThenTheRoomHasTheClassInItsSchedule()
        {
            var classId = ScenarioCache.GetId(ModelIdKeys.ClassId);
            var roomScheduleResponse =
                ApiCaller.Get <List <EventModel> >(
                    Routes.GetRoomUpcomingSchedule(ScenarioCache.GetId(ModelIdKeys.RoomId)));

            Assert.AreEqual(HttpStatusCode.OK, roomScheduleResponse.StatusCode);

            Assert.Contains(classId, roomScheduleResponse.Data.Select(x => x.Id).ToList());
        }
Ejemplo n.º 25
0
        public void ThenTheRoomDoesNotHaveTheClassInItsSchedule()
        {
            var classId = ScenarioCache.GetId(ModelIdKeys.ClassId);
            var roomScheduleResponse = ApiCaller.Get <List <EventModel> >(Routes.GetRoomUpcomingSchedule(ScenarioCache.GetId(ModelIdKeys.RoomId)));

            Assert.AreEqual(HttpStatusCode.OK, roomScheduleResponse.StatusCode);

            var matchingClass = roomScheduleResponse.Data.SingleOrDefault(x => x.Id == classId);

            Assert.IsNull(matchingClass);
        }
Ejemplo n.º 26
0
        public void ThenTheClassesHaveCorrectClassCapacity()
        {
            var response = ApiCaller.Get <BlockModel>(Routes.GetById(Routes.Blocks, ScenarioCache.GetId(ModelIdKeys.BlockId)));
            var block    = response.Data;

            var expectedBlock = ScenarioCache.Get <BlockModel>(ModelKeys.Block);

            Assert.IsTrue(block.Classes.All(x => x.ClassCapacity == block.ClassCapacity));

            Assert.AreEqual(expectedBlock.NumberOfClasses, block.Classes.Count);
        }
Ejemplo n.º 27
0
        public void ThenAllTheClassesInTheBlockHasTheRoom()
        {
            var block  = ApiCaller.Get <BlockModel>(Routes.GetById(Routes.Blocks, ScenarioCache.GetId(ModelIdKeys.BlockId))).Data;
            var roomId = ScenarioCache.GetId(ModelIdKeys.RoomId);

            foreach (var classModel in block.Classes)
            {
                Assert.IsNotNull(classModel.Room);
                Assert.AreEqual(roomId, classModel.Room.Id);
            }
        }
Ejemplo n.º 28
0
        public void ThenClassesAreCreatedForTheBlock()
        {
            var response = ApiCaller.Get <BlockModel>(Routes.GetById(Routes.Blocks, ScenarioCache.GetId(ModelIdKeys.BlockId)));
            var block    = response.Data;

            Assert.IsNotEmpty(block.Classes);

            foreach (var classModel in block.Classes)
            {
                Assert.AreEqual(classModel.StartTime.AddHours(1), classModel.EndTime);
            }
        }
Ejemplo n.º 29
0
        public void ThenTheRoomDoesNotHaveTheBlocksClassesInItsSchedule()
        {
            var block                = ApiCaller.Get <BlockModel>(Routes.GetById(Routes.Blocks, ScenarioCache.GetId(ModelIdKeys.BlockId))).Data;
            var blockClasses         = block.Classes;
            var roomScheduleResponse =
                ApiCaller.Get <List <EventModel> >(
                    Routes.GetRoomUpcomingSchedule(ScenarioCache.GetId(ModelIdKeys.RoomId)));

            Assert.AreEqual(HttpStatusCode.OK, roomScheduleResponse.StatusCode);

            Assert.IsEmpty(roomScheduleResponse.Data.Where(x => x.Id == blockClasses.First().Id));
        }
Ejemplo n.º 30
0
        public void ThenTheRoomHasTheClassesInItsSchedule()
        {
            var block                = ApiCaller.Get <BlockModel>(Routes.GetById(Routes.Blocks, ScenarioCache.GetId(ModelIdKeys.BlockId))).Data;
            var blockClasses         = block.Classes;
            var roomScheduleResponse =
                ApiCaller.Get <List <EventModel> >(
                    Routes.GetRoomUpcomingSchedule(ScenarioCache.GetId(ModelIdKeys.RoomId)));

            Assert.AreEqual(HttpStatusCode.OK, roomScheduleResponse.StatusCode);

            Assert.Contains(blockClasses.First().Id, roomScheduleResponse.Data.Select(x => x.Id).ToList());
        }