public async Task CanInsertScheduledShift()
        {
            var before = new ScheduledShift()
            {
                StartsAt = new DateTime(2001, 1, 1, 8, 0, 0),
                EndsAt   = new DateTime(2001, 1, 1, 14, 0, 0),
                GroupId  = null,
                PatrolId = 1,
                ShiftId  = null
            };

            await _shiftRepository.InsertScheduledShift(before);

            var after = await _shiftRepository.GetScheduledShift(before.Id);

            Assert.AreEqual(before.StartsAt, after.StartsAt);
            Assert.AreEqual(before.EndsAt, after.EndsAt);
            Assert.AreEqual(before.GroupId, after.GroupId);
            Assert.AreEqual(before.PatrolId, after.PatrolId);
            Assert.AreEqual(before.ShiftId, after.ShiftId);
        }
Esempio n. 2
0
        public async Task CanInsertTimeEntryScheduledShiftAssignment()
        {
            var now      = new DateTime(2001, 1, 1);
            int userId   = 1;
            int patrolId = 1;

            var entry = new TimeEntry()
            {
                ClockIn  = now,
                PatrolId = patrolId,
                UserId   = userId
            };
            await _timeEntryRepository.InsertTimeEntry(entry);

            var scheduledShift = new ScheduledShift()
            {
                StartsAt        = now,
                EndsAt          = now + new TimeSpan(1, 0, 0),
                DurationSeconds = (int)(new TimeSpan(1, 0, 0)).TotalSeconds,
                PatrolId        = patrolId,
            };
            await _shiftRepository.InsertScheduledShift(scheduledShift);

            var scheduledShiftAssignment = new ScheduledShiftAssignment()
            {
                AssignedUserId   = userId,
                ScheduledShiftId = scheduledShift.Id,
                Status           = ShiftStatus.Assigned
            };
            await _shiftRepository.InsertScheduledShiftAssignment(scheduledShiftAssignment);

            var timeEntryScheduledShiftAssignment = new TimeEntryScheduledShiftAssignment()
            {
                ScheduledShiftAssignmentId = scheduledShiftAssignment.Id,
                TimeEntryId = entry.Id
            };
            await _timeEntryRepository.InsertTimeEntryScheduledShiftAssignment(timeEntryScheduledShiftAssignment);


            Assert.AreEqual(1, timeEntryScheduledShiftAssignment.Id);
        }