Exemplo n.º 1
0
 public void TearDown()
 {
     ValidationPortalDbContextMock.Reset();
     DbContextFactoryMock.Reset();
     HttpContextProviderMock.Reset();
     LoggingServiceMock.Reset();
 }
        public void DeleteAnnouncement_Should_DeleteTheAnnouncement()
        {
            var announcement = new Announcement {
                Id = 12345, Message = "test contact info"
            };
            var announcements = new List <Announcement>(new[] { announcement });

            var announcementDbSetMock = EntityFrameworkMocks.GetQueryableMockDbSet(announcements);

            EntityFrameworkMocks.SetupMockDbSet(
                announcementDbSetMock,
                ValidationPortalDbContextMock,
                x => x.Announcements,
                x => x.Announcements = It.IsAny <DbSet <Announcement> >(),
                announcements);

            DbContextFactoryMock.Setup(x => x.Create()).Returns(ValidationPortalDbContextMock.Object);

            var announcementService = new AnnouncementService(DbContextFactoryMock.Object, AppUserServiceMock.Object, LoggingServiceMock.Object);

            announcementService.DeleteAnnouncement(announcement.Id);

            announcementDbSetMock.Verify(x => x.Remove(announcement), Times.Once);
            ValidationPortalDbContextMock.Verify(x => x.SaveChanges(), Times.Once);
        }
Exemplo n.º 3
0
        public void UpdateFocusedSchoolYear_Should_FailSilentlyBecauseItJustDoes()
        {
            var announcements = new List <Announcement>();

            EntityFrameworkMocks.SetupMockDbSet(
                EntityFrameworkMocks.GetQueryableMockDbSet(announcements),
                ValidationPortalDbContextMock,
                x => x.Announcements,
                x => x.Announcements = It.IsAny <DbSet <Announcement> >(),
                announcements);

            var oldFocusedSchoolYear = 12345;
            var newFocusedSchoolYear = 23456;
            var appUserSessionId     = 123;

            var schoolYears = new List <SchoolYear>(new[]
            {
                new SchoolYear
                {
                    Id      = newFocusedSchoolYear,
                    Enabled = true
                }
            });

            EntityFrameworkMocks.SetupMockDbSet(
                EntityFrameworkMocks.GetQueryableMockDbSet(schoolYears),
                ValidationPortalDbContextMock,
                x => x.SchoolYears,
                x => x.SchoolYears = It.IsAny <DbSet <SchoolYear> >(),
                schoolYears);

            var userIdentity = new ValidationPortalIdentity();

            var appUserSession = new AppUserSession
            {
                Id = appUserSessionId.ToString(),
                FocusedSchoolYearId = oldFocusedSchoolYear,
                UserIdentity        = userIdentity
            };

            DbContextFactoryMock.Setup(x => x.Create()).Returns(ValidationPortalDbContextMock.Object);

            var httpContext = new HttpContext(
                new HttpRequest(string.Empty, "http://wearedoubleline.com", string.Empty),
                new HttpResponse(new StringWriter()));

            httpContext.Items[AppUserService.SessionItemName] = null;
            HttpContextProviderMock.SetupGet(x => x.CurrentHttpContext).Returns(httpContext);

            LoggingServiceMock.Setup(x => x.LogDebugMessage(It.IsAny <string>()));

            var appUserService = new AppUserService(
                DbContextFactoryMock.Object,
                HttpContextProviderMock.Object,
                LoggingServiceMock.Object);

            appUserService.UpdateFocusedSchoolYear(newFocusedSchoolYear);

            ValidationPortalDbContextMock.Verify(x => x.SaveChanges(), Times.Never);
        }
Exemplo n.º 4
0
        public void UpdateFocusedSchoolYear_WithInvalidYear_Should_LogError()
        {
            var newFocusedSchoolYear = 23456;
            var appUserSessionId     = 123;

            var appUserSession = new AppUserSession
            {
                Id           = appUserSessionId.ToString(),
                UserIdentity = null
            };

            DbContextFactoryMock.Setup(x => x.Create()).Returns(ValidationPortalDbContextMock.Object);

            var httpContext = new HttpContext(
                new HttpRequest(string.Empty, "http://wearedoubleline.com", string.Empty),
                new HttpResponse(new StringWriter()));

            httpContext.Items[AppUserService.SessionItemName] = appUserSession;
            HttpContextProviderMock.SetupGet(x => x.CurrentHttpContext).Returns(httpContext);

            LoggingServiceMock.Setup(x => x.LogDebugMessage(It.IsAny <string>()));
            LoggingServiceMock.Setup(x => x.LogErrorMessage(It.IsAny <string>()));

            var appUserService = new AppUserService(
                DbContextFactoryMock.Object,
                HttpContextProviderMock.Object,
                LoggingServiceMock.Object);

            appUserService.UpdateFocusedSchoolYear(newFocusedSchoolYear);

            ValidationPortalDbContextMock.Verify(x => x.SaveChanges(), Times.Never);
            LoggingServiceMock.Verify(x => x.LogErrorMessage(It.IsAny <string>()), Times.Once());
        }
Exemplo n.º 5
0
        public void SetUp()
        {
            EntityFrameworkMocks.SetupValidationPortalDbContext(ValidationPortalDbContextMock);

            TestSchoolYears = new List <SchoolYear>(new[]
            {
                new SchoolYear("2017", "2018", false)
                {
                    Id = 0
                },
                new SchoolYear("2018", "2019", true)
                {
                    Id = 1
                },
                new SchoolYear("2019", "2020", true)
                {
                    Id = 2
                },
            });

            EntityFrameworkMocks.SetupMockDbSet(
                EntityFrameworkMocks.GetQueryableMockDbSet(TestSchoolYears),
                ValidationPortalDbContextMock,
                x => x.SchoolYears,
                x => x.SchoolYears = It.IsAny <DbSet <SchoolYear> >(),
                TestSchoolYears);

            ValidationPortalDbContextMock.As <IDisposable>().Setup(x => x.Dispose());

            DbContextFactoryMock.Setup(x => x.Create()).Returns(ValidationPortalDbContextMock.Object);
        }
 public void TearDown()
 {
     ValidationPortalDbContextMock.Reset();
     DbContextFactoryMock.Reset();
     AnnouncementServiceMock.Reset();
     AppUserServiceMock.Reset();
     LoggingServiceMock.Reset();
 }
Exemplo n.º 7
0
        public void UpdateFocusedEdOrg_Should_FailSilentlyBecauseItJustDoes()
        {
            var authorizedEdOrgId = 12345;

            DefaultTestAppUserSession.UserIdentity.AuthorizedEdOrgs.Add(new EdOrg {
                Id = authorizedEdOrgId
            });

            var announcements = new List <Announcement>();

            EntityFrameworkMocks.SetupMockDbSet(
                EntityFrameworkMocks.GetQueryableMockDbSet(announcements),
                ValidationPortalDbContextMock,
                x => x.Announcements,
                x => x.Announcements = It.IsAny <DbSet <Announcement> >(),
                announcements);

            var oldFocusedEdOrg       = 12345;
            var newFocusedEdOrg       = 23456;
            var randomAuthorizedEdOrg = newFocusedEdOrg + 1;
            var appUserSessionId      = 123;

            var userIdentity = new ValidationPortalIdentity
            {
                AuthorizedEdOrgs = new List <EdOrg>(new[] { new EdOrg {
                                                                Id = randomAuthorizedEdOrg
                                                            } })
            };

            var appUserSession = new AppUserSession
            {
                Id             = appUserSessionId.ToString(),
                FocusedEdOrgId = oldFocusedEdOrg,
                UserIdentity   = userIdentity
            };

            DbContextFactoryMock.Setup(x => x.Create()).Returns(ValidationPortalDbContextMock.Object);

            var httpContext = new HttpContext(
                new HttpRequest(string.Empty, "http://wearedoubleline.com", string.Empty),
                new HttpResponse(new StringWriter()));

            httpContext.Items[AppUserService.SessionItemName] = appUserSession;
            HttpContextProviderMock.SetupGet(x => x.CurrentHttpContext).Returns(httpContext);

            LoggingServiceMock.Setup(x => x.LogDebugMessage(It.IsAny <string>()));

            var appUserService = new AppUserService(
                DbContextFactoryMock.Object,
                HttpContextProviderMock.Object,
                LoggingServiceMock.Object);

            appUserService.UpdateFocusedEdOrg(newFocusedEdOrg.ToString());

            ValidationPortalDbContextMock.Verify(x => x.SaveChanges(), Times.Never);
        }
Exemplo n.º 8
0
 public void TearDown()
 {
     EngineConfigMock.Reset();
     AppUserServiceMock.Reset();
     EdOrgServiceMock.Reset();
     SchoolYearServiceMock.Reset();
     LoggingServiceMock.Reset();
     ValidationPortalDbContextMock.Reset();
     OdsConfigurationValuesMock.Reset();
     SchoolYearDbContextFactoryMock.Reset();
     DbContextFactoryMock.Reset();
     SchoolYearDbContextMock.Reset();
 }
Exemplo n.º 9
0
        public void UpdateFocusedEdOrg_Should_LogException()
        {
            var announcements = new List <Announcement>();

            EntityFrameworkMocks.SetupMockDbSet(
                EntityFrameworkMocks.GetQueryableMockDbSet(announcements),
                ValidationPortalDbContextMock,
                x => x.Announcements,
                x => x.Announcements = It.IsAny <DbSet <Announcement> >(),
                announcements);

            var oldFocusedEdOrg  = 12345;
            var newFocusedEdOrg  = 23456;
            var appUserSessionId = 123;

            var appUserSession = new AppUserSession
            {
                Id             = appUserSessionId.ToString(),
                FocusedEdOrgId = oldFocusedEdOrg,
                UserIdentity   = null
            };

            DbContextFactoryMock.Setup(x => x.Create()).Returns(ValidationPortalDbContextMock.Object);

            var httpContext = new HttpContext(
                new HttpRequest(string.Empty, "http://wearedoubleline.com", string.Empty),
                new HttpResponse(new StringWriter()));

            httpContext.Items[AppUserService.SessionItemName] = appUserSession;
            HttpContextProviderMock.SetupGet(x => x.CurrentHttpContext).Returns(httpContext);

            LoggingServiceMock.Setup(x => x.LogDebugMessage(It.IsAny <string>()));
            LoggingServiceMock.Setup(x => x.LogErrorMessage(It.IsAny <string>()));

            var appUserService = new AppUserService(
                DbContextFactoryMock.Object,
                HttpContextProviderMock.Object,
                LoggingServiceMock.Object);

            appUserService.UpdateFocusedEdOrg(newFocusedEdOrg.ToString());

            ValidationPortalDbContextMock.Verify(x => x.SaveChanges(), Times.Never);
            LoggingServiceMock.Verify(x => x.LogErrorMessage(It.IsAny <string>()), Times.Once());
        }
        public void SaveNewAnnouncement_Should_SaveAnnouncement()
        {
            var announcement =
                new Announcement
            {
                Id          = 0,
                Priority    = 1,
                Message     = "test message",
                ContactInfo = "3-2-1, contact",
                LinkUrl     = "http://wearedoubleline.com",
                Expiration  = DateTime.Now.AddMonths(1)
            };

            var announcements = new List <Announcement>(new[] { announcement });

            var dbSetMock = EntityFrameworkMocks.GetQueryableMockDbSet(announcements);

            EntityFrameworkMocks.SetupMockDbSet <ValidationPortalDbContext, Announcement>(
                dbSetMock,
                ValidationPortalDbContextMock,
                x => x.Announcements,
                x => x.Announcements = It.IsAny <DbSet <Announcement> >(),
                announcements);

            DbContextFactoryMock.Setup(x => x.Create()).Returns(ValidationPortalDbContextMock.Object);

            var announcementService = new AnnouncementService(
                DbContextFactoryMock.Object,
                AppUserServiceMock.Object,
                LoggingServiceMock.Object);

            announcementService.SaveAnnouncement(
                announcement.Id,
                announcement.Priority,
                announcement.Message,
                announcement.ContactInfo,
                announcement.LinkUrl,
                announcement.Expiration);

            dbSetMock.Verify(x => x.Add(It.Is <Announcement>(y => y.Id == announcement.Id)), Times.Once);
            ValidationPortalDbContextMock.Verify(x => x.SaveChanges(), Times.Once);
        }