/// <summary> /// Gets the AnalyticsRepository singleton instance. AnalyticsRepository is endpoint for all cinema analytics related queries /// </summary> /// <returns></returns> public AnalyticsRepository GetAnalyticsRepositoryInstance() { AnalyticsRepository ar = AnalyticsRepository.Instance; ar.SetAuthToken(_authToken); return(ar); }
public async Task Register_ShouldGetDayResult() { Mock <DbSet <Panel> > mockPanel = MockPanelRepository(); Mock <DbSet <OneHourElectricity> > mockOneHourElectricity = MockDayResult(); var mockContext = new Mock <CrossSolarDbContext>(); mockContext.Setup(c => c.Set <Panel>()).Returns(mockPanel.Object); mockContext.Setup(c => c.Set <OneHourElectricity>()).Returns(mockOneHourElectricity.Object); var entityRepository = new PanelRepository(mockContext.Object); var analyticsRepository = new AnalyticsRepository(mockContext.Object); var _analyticsController = new AnalyticsController(analyticsRepository, entityRepository); // Act var result = await _analyticsController.DayResults("AAAA1111BBBB2222"); // Assert Assert.NotNull(result); var createdResult = result as OkObjectResult; Assert.NotNull(createdResult); Assert.Equal(200, createdResult.StatusCode); }
public async Task <IActionResult> VolunteersBlueShirt([FromQuery] DateModel model) { var user = await userManager.GetUserAsync(User); if (user == null || !(await userManager.IsInRoleAsync(user, UserHelpers.UserRoles.Staff.ToString()))) { return(Utilities.ErrorJson("Not authorized.")); } if (model.Date == DateTime.MinValue) { return(Utilities.GenerateMissingInputMessage("date")); } try { AnalyticsRepository repo = new AnalyticsRepository(configModel.ConnectionString); return(new JsonResult(new { Count = repo.GetNumBlueShirtVolunteers(model) })); } catch (Exception exc) { return(new JsonResult(new { Error = exc.Message, })); } }
/// <summary> /// Creates an incident and a report. /// </summary> public void CreateReportAndIncident(out int reportId, out int incidentId) { using (var uow = CreateUnitOfWork()) { CreateUserAndApplication(uow, out var accountId, out var applicationId); var report = new ErrorReportEntity(applicationId, Guid.NewGuid().ToString("N"), DateTime.UtcNow, new ErrorReportException(new Exception("mofo")), new List <ErrorReportContext> { new ErrorReportContext("Maps", new Dictionary <string, string>()) }) { Title = "Missing here" }; report.Init(report.GenerateHashCodeIdentifier()); var incident = new IncidentBeingAnalyzed(report); var incRepos = new AnalyticsRepository(new AnalysisDbContext(uow), ConfigStore); incRepos.CreateIncident(incident); incidentId = incident.Id; report.IncidentId = incident.Id; incRepos.CreateReport(report); reportId = report.Id; uow.SaveChanges(); } }
public void AnalyticsRepositoryTests() { var dbMock = new Mock <CrossSolarDbContext>(); AnalyticsRepository analyticsRepository = new AnalyticsRepository(dbMock.Object); Assert.NotNull(analyticsRepository); }
public async Task <IActionResult> ChildrenByAge() { var user = await userManager.GetUserAsync(User); if (user == null || !(await userManager.IsInRoleAsync(user, UserHelpers.UserRoles.Staff.ToString()))) { return(Utilities.ErrorJson("Not authorized.")); } try { AnalyticsRepository repo = new AnalyticsRepository(configModel.ConnectionString); return(new JsonResult(new { ChildrenByAge = repo.GetChildrenByAge() })); } catch (Exception exc) { return(new JsonResult(new { Error = exc.Message, })); } }
/// <summary> /// Creates an incident and a report. /// </summary> public void CreateReportAndIncident(out int reportId, out int incidentId) { ErrorReportEntity report; using (var uow = CreateUnitOfWork()) { report = new ErrorReportEntity(ApplicationId, Guid.NewGuid().ToString("N"), DateTime.UtcNow, new ErrorReportException(new Exception("mofo")), new List <ErrorReportContextCollection> { new ErrorReportContextCollection("Maps", new Dictionary <string, string>()) }) { Title = "Missing here" }; report.Init(report.GenerateHashCodeIdentifier()); uow.SaveChanges(); } using (var dbContext = CreateUnitOfWork()) { var incident = new IncidentBeingAnalyzed(report); var incRepos = new AnalyticsRepository(dbContext); incRepos.CreateIncident(incident); incidentId = incident.Id; report.IncidentId = incident.Id; incRepos.CreateReport(report); reportId = report.Id; dbContext.SaveChanges(); } }
public void ReadCaatSearchableDocuments_FilterOutBadPopTables() { //Arrange var workspaceId = -343; var connectionFactoryMock = new Mock <IConnectionFactory>(); var aRepo = new AnalyticsRepository(connectionFactoryMock.Object, null); //Act var caatPopTables = new List <string>(); var badPopTables = new[] { "asdf", "Zca_POP_2", "Zca_POP_asdf_123" }; var popTablesDontMatchIndexes = new[] { "Zca_POP_999_123", "Zca_POP_123_123" }; caatPopTables.AddRange(badPopTables); caatPopTables.AddRange(popTablesDontMatchIndexes); var indexes = new List <Int32>() { 1, 2 }; var result1 = aRepo.ReadCaatSearchableDocuments(workspaceId, caatPopTables, indexes); var result2 = aRepo.ReadCaatTrainingDocuments(workspaceId, caatPopTables, indexes); //Assert Assert.That(result1.Count, Is.EqualTo(0)); Assert.That(result2.Count, Is.EqualTo(0)); }
public AnalyticsWindow() { empRepo = new EmployeeRepository(); anaRepo = new AnalyticsRepository(); viewHelper = new ViewGeneratorHelper(empRepo); InitializeComponent(); PopulateDate(); }
public void Setup() { var options = new DbContextOptionsBuilder <Context>() .UseInMemoryDatabase(databaseName: "test") .Options; _context = new Context(options); _analyticsRepository = new AnalyticsRepository(_context); }
public void ReadCaatIndexes() { // TODO -- ? Do these need to target workspace? //Arrange var aRepo = new AnalyticsRepository(connectionFactory, null); //Act var result = aRepo.ReadCaatIndexes(Config.WorkSpaceId); //Assert Assert.That(result.Count(), Is.GreaterThan(0)); }
public void SaveAnalyticsRecommendation() { //Arrange var ecRepo = new EnvironmentCheckRepository(connectionFactory); var aRepo = new AnalyticsRepository(connectionFactory, ecRepo); //Act aRepo.SaveAnalyticsRecommendation(new Server() { ServerName = "localhost" }, Guid.Parse("AB10EDAE-67F9-4636-A4C6-94D7EF20D705"), "asdf"); //Assert }
public ActionResult Details(string id) { Request request = RequestRepository.GetRequest(id); if (request == null) { throw new ApplicationException("Selected request does not exist any more."); } AnalyticsRepository.RegisterView(Helper.GenerateRequestKey(id), HttpContext.Request.RawUrl, HttpContext.Request.UserHostName); return(View(request)); }
public void ReadCaatSearchableDocuments_NoCaatPopTables() { //Arrange var aRepo = new AnalyticsRepository(connectionFactory, null); //Act var caatPopTables = new List <string>(); var indexes = aRepo.ReadCaatIndexes(Config.WorkSpaceId); var result1 = aRepo.ReadCaatSearchableDocuments(Config.WorkSpaceId, caatPopTables, indexes); var result2 = aRepo.ReadCaatTrainingDocuments(Config.WorkSpaceId, caatPopTables, indexes); //Assert Assert.That(result1.Count, Is.EqualTo(0)); Assert.That(result2.Count, Is.EqualTo(0)); }
public void ReadCaatSearchableDocuments_NoCaatIndexesOrPopTables() { //Arrange var workspaceId = -343; var connectionFactoryMock = new Mock <IConnectionFactory>(); var aRepo = new AnalyticsRepository(connectionFactoryMock.Object, null); //Act var caatPopTables = new List <string>(); var indexes = new List <Int32>(); var result1 = aRepo.ReadCaatSearchableDocuments(workspaceId, caatPopTables, indexes); var result2 = aRepo.ReadCaatTrainingDocuments(workspaceId, caatPopTables, indexes); //Assert Assert.That(result1.Count, Is.EqualTo(0)); Assert.That(result2.Count, Is.EqualTo(0)); }
public void ReadCaatPopTables() { //Arrange var aRepo = new AnalyticsRepository(connectionFactory, null); //Act var result = aRepo.ReadCaatPopTables(Config.WorkSpaceId); result.ToList(); result.ToList(); result.ToList(); result.ToList(); result.ToList(); //Assert Assert.That(result.Count(), Is.GreaterThan(0)); }
public void TestAnalyticsRepository() { IAnalyticsRepository analytics = new AnalyticsRepository(new CrossSolarDbContext()); OneHourElectricity oneHourElectricity = new OneHourElectricity() { DateTime = DateTime.Now, KiloWatt = 312, PanelId = "12" }; analytics.InsertAsync(oneHourElectricity); var result = analytics.GetByPanelIdAsync("12"); Assert.NotNull(result); }
public AnalyticsControllerTests() { var panelmockSet = new Mock <DbSet <Panel> >(); panelmockSet.As <IAsyncEnumerable <Panel> >() .Setup(m => m.GetEnumerator()) .Returns(new TestAsyncEnumerator <Panel>(_panels.GetEnumerator())); panelmockSet.As <IQueryable <Panel> >() .Setup(m => m.Provider) .Returns(new TestAsyncQueryProvider <Panel>(_panels.Provider)); panelmockSet.As <IQueryable <Panel> >().Setup(m => m.Expression).Returns(_panels.Expression); panelmockSet.As <IQueryable <Panel> >().Setup(m => m.ElementType).Returns(_panels.ElementType); panelmockSet.As <IQueryable <Panel> >().Setup(m => m.GetEnumerator()).Returns(_panels.GetEnumerator()); var electricitymockSet = new Mock <DbSet <OneHourElectricity> >(); electricitymockSet.As <IAsyncEnumerable <OneHourElectricity> >() .Setup(m => m.GetEnumerator()) .Returns(new TestAsyncEnumerator <OneHourElectricity>(_electricitys.GetEnumerator())); electricitymockSet.As <IQueryable <Panel> >() .Setup(m => m.Provider) .Returns(new TestAsyncQueryProvider <OneHourElectricity>(_electricitys.Provider)); electricitymockSet.As <IQueryable <OneHourElectricity> >().Setup(m => m.Expression) .Returns(_electricitys.Expression); electricitymockSet.As <IQueryable <OneHourElectricity> >().Setup(m => m.ElementType) .Returns(_electricitys.ElementType); electricitymockSet.As <IQueryable <OneHourElectricity> >().Setup(m => m.GetEnumerator()) .Returns(() => _electricitys.GetEnumerator()); var contextOptions = new DbContextOptions <CrossSolarDbContext>(); var mockContext = new Mock <CrossSolarDbContext>(contextOptions); mockContext.Setup(c => c.Set <Panel>()).Returns(panelmockSet.Object); mockContext.Setup(c => c.Set <OneHourElectricity>()).Returns(electricitymockSet.Object); var panelsRepository = new PanelRepository(mockContext.Object); var analyticsRepository = new AnalyticsRepository(mockContext.Object); _analyticsController = new AnalyticsController(analyticsRepository: analyticsRepository, panelRepository: panelsRepository); }
public void CreateUserAndApp() { using (var uow = CreateUnitOfWork()) { var accountRepos = new AccountRepository(uow); var account = new Account("arne", "123456") { Email = "*****@*****.**" }; accountRepos.Create(account); var userRepos = new UserRepository(uow); var user = new User(account.Id, "arne") { EmailAddress = "*****@*****.**" }; userRepos.CreateAsync(user).GetAwaiter().GetResult(); var appRepos = new ApplicationRepository(uow); var app = new Application(account.Id, "MinApp"); appRepos.CreateAsync(app).GetAwaiter().GetResult(); var member = new ApplicationTeamMember(app.Id, account.Id, "Admin"); appRepos.CreateAsync(member).GetAwaiter().GetResult(); var report = new ErrorReportEntity(app.Id, Guid.NewGuid().ToString("N"), DateTime.UtcNow, new ErrorReportException(new Exception("mofo")), new List <ErrorReportContext> { new ErrorReportContext("Maps", new Dictionary <string, string>()) }); report.Title = "Missing here"; report.Init(report.GenerateHashCodeIdentifier()); var incident = new ReportAnalyzer.Domain.Incidents.IncidentBeingAnalyzed(report); var incRepos = new AnalyticsRepository(new AnalysisDbContext(uow), ConfigStore); incRepos.CreateIncident(incident); report.IncidentId = incident.Id; incRepos.CreateReport(report); uow.SaveChanges(); } }
public void Should_load_ignored_state_into_class_correctly() { var report = new ErrorReportEntity(FirstApplicationId, Guid.NewGuid().ToString("N"), DateTime.UtcNow, new ErrorReportException(new Exception("mofo")), new List <ErrorReportContext> { new ErrorReportContext("Maps", new Dictionary <string, string>()) }) { Title = "Missing here" }; report.Init(report.GenerateHashCodeIdentifier()); using (var uow = new AnalysisDbContext(CreateUnitOfWork())) { var incident = new IncidentBeingAnalyzed(report); var incRepos = new AnalyticsRepository(uow, new TestConfigStore()); incRepos.CreateIncident(incident); report.IncidentId = incident.Id; incRepos.CreateReport(report); } }
public IndexModel(SignInManager <Employee> signInManager, CompanyRepository companies, UserManager <Employee> userManager, RoleManager <EmployeeRole> roleManager, IFeedService feeds, ISettings settings, IDistributedCache cache, AnalyticsRepository analytics) { this.userManager = userManager; this.companies = companies; this.signInManager = signInManager; this.roleManager = roleManager; this.feeds = feeds; this.settings = settings; this.cache = cache; this.analytics = analytics; this.jsonSerializerSettings = new JsonSerializerSettings { ContractResolver = new CamelCasePropertyNamesContractResolver() }; }
public void InitRepositories() { EnvironmentCheckRepository = new EnvironmentCheckRepository(this.connectionFactory); _dataRepositories.AddRange(new IDbRepository[] { ReportRepository = new ReportRepository(this.connectionFactory), EnvironmentCheckRepository, AnalyticsRepository = new AnalyticsRepository(this.connectionFactory, EnvironmentCheckRepository), FileLatencyRepository = new FileLatencyRepository(this.connectionFactory), PDBNotificationRepository = new PDBNotificationRepository(this.connectionFactory), ResourceServerRepository = new ResourceServerRepository(this.connectionFactory), DeploymentRepository = new DeploymentRepository(this.connectionFactory), PerformanceSummaryRepository = new PerformanceSummaryRepository(this.connectionFactory), ConfigurationRepository = new ConfigurationRepository(this.connectionFactory), PrimarySqlServerRepository = new PrimarySqlServerRepository(this.connectionFactory), PerformanceServerRepository = new ServerRepository(this.connectionFactory), AgentRepository = new AgentRepository(this.connectionFactory), SampleHistoryRepository = new SampleHistoryRepository(this.connectionFactory), BackfillRepository = new BackfillRepository(this.connectionFactory), EventRepository = new EventRepository(this.connectionFactory), LogRepository = new LogRepository(this.connectionFactory), ProcessControlRepository = new ProcessControlRepository(this.connectionFactory), ConfigurationAuditRepository = new ConfigurationAuditRepository(this.connectionFactory), }); }
public async Task <IActionResult> ChildrenByClassForDay([FromQuery] DateModel Date) { var user = await userManager.GetUserAsync(User); if (user == null || !(await userManager.IsInRoleAsync(user, UserHelpers.UserRoles.Staff.ToString())) || await userManager.IsInRoleAsync(user, UserHelpers.UserRoles.Volunteer.ToString())) { return(Utilities.ErrorJson("Not authorized.")); } VolunteerRepository volunteerRepo = new VolunteerRepository(configModel.ConnectionString); // Volunteers must be teachers to have access if (User.IsInRole(UserHelpers.UserRoles.Volunteer.ToString()) && !volunteerRepo.VolunteerIsClassTeacher(user.VolunteerId)) { return(Utilities.ErrorJson("Not authorized.")); } try { AnalyticsRepository repo = new AnalyticsRepository(configModel.ConnectionString); return(new JsonResult(new { ChildrenByBus = repo.GetChildrenByClassForDay(Date) })); } catch (Exception exc) { return(new JsonResult(new { Error = exc.Message, })); } }
//a little hack, but it does the job of incrementing the number of views even for download only entity sets public void IncrementView() { string baseUri = System.Configuration.ConfigurationManager.AppSettings["serviceUri"]; AnalyticsRepository.RegisterView(EntitySet.ContainerAlias + "||" + EntitySet.EntitySetName, baseUri, ""); }
public void RegisterDownload(string downloadID) { string baseUri = System.Configuration.ConfigurationManager.AppSettings["serviceUri"]; AnalyticsRepository.RegisterDownload(EntitySet.EntityId + "||" + downloadID); }
public void Constructor_WorksFine() { AnalyticsRepository analyticsRepository = new AnalyticsRepository(new CrossSolarDbContext()); Assert.NotNull(analyticsRepository); }
public AnalyticsRepositoryTest() { _repository = new AnalyticsRepository(_crossSolarDbContext); }
public AnalyticsController(AnalyticsRepository repository) { _repository = repository; }
public AnalyticsRepositoryTest() { CrossSolarInMemoryDbContextProvider contextProvider = new CrossSolarInMemoryDbContextProvider(); _repository = new AnalyticsRepository(contextProvider.GetInMemoryContext()); }
public AnalyticsController(AnalyticsDbContext _context) { this.context = _context; this.analyticsRepo = new AnalyticsRepository(_context); }