public void DayResultsTest()
        {
            var result       = _controller.DayResults(1).Result;
            var objectResult = result as ObjectResult;

            // Assert
            Assert.NotNull(result);
            Assert.NotNull(objectResult);
            Assert.Equal(200, objectResult.StatusCode);
        }
        public void Get_ShouldReturnPanelAnalyticsDay()
        {
            // Arrange

            // Act
            var _actionResult = _analyticsController.DayResults("12");

            // Assert
            Assert.NotNull(_actionResult);
        }
Esempio n. 3
0
        public async Task Retrieve_DayResultsAnalystics()
        {
            string panelId = "AAAA1111BBBB2222";

            var mockPanels = new List <Panel>()
            {
                new Panel
                {
                    Brand     = "Areva",
                    Latitude  = 12.345678,
                    Longitude = 98.765543,
                    Serial    = panelId
                }
            }.AsQueryable().BuildMock();

            _panelRepositoryMock.Setup(m => m.Query()).Returns(mockPanels.Object);

            var mockOneDayElectricities = new List <OneHourElectricity>()
            {
                new OneHourElectricity()
                {
                    Id       = 3,
                    PanelId  = panelId,
                    DateTime = new DateTime(2018, 7, 5),
                    KiloWatt = 100
                },
                new OneHourElectricity()
                {
                    Id       = 4,
                    PanelId  = panelId,
                    DateTime = new DateTime(2018, 7, 6),
                    KiloWatt = 200
                },
                new OneHourElectricity()
                {
                    Id       = 5,
                    PanelId  = panelId,
                    DateTime = new DateTime(2018, 7, 7),
                    KiloWatt = 300
                }
            }.AsQueryable().BuildMock();

            _analyticsRepositoryMock.Setup(m => m.Query()).Returns(mockOneDayElectricities.Object);

            // Act
            var result = await _analyticsController.DayResults(panelId);

            // Assert
            Assert.NotNull(result);

            var okResult = result as OkObjectResult;

            Assert.NotNull(okResult);
            Assert.Equal(200, okResult.StatusCode);
        }
Esempio n. 4
0
        public async void AnalyticsControllerTests_Day()
        {
            //insert pannel
            var panel = new PanelModel
            {
                Brand     = "Areva",
                Latitude  = 12.345678,
                Longitude = 98.7655432,
                Serial    = "AAAA1111BBBB2222"
            };


            var result = await _panelController.Register(panel);

            // Assert
            Assert.NotNull(result);

            var createdResult = result as CreatedResult;

            Assert.NotNull(createdResult);
            Assert.Equal(201, createdResult.StatusCode);
            var createdpanel = createdResult.Value as Panel;
            int panelId      = createdpanel.Id;

            //inserting  records  to table

            await _anlyticsController.Post(panelId, new OneHourElectricityModel()
            {
                KiloWatt = 100,
                DateTime = date1_t1
            });


            await _anlyticsController.Post(panelId, new OneHourElectricityModel()
            {
                KiloWatt = 200,
                DateTime = date1_t2
            });


            var day1Result = _anlyticsController.DayResults(panelId, date1).Result;

            Assert.IsType <OkObjectResult>(day1Result);
            var day1records = day1Result as OkObjectResult;

            Assert.True(day1records.StatusCode == (int)HttpStatusCode.OK);
            Assert.IsAssignableFrom <IEnumerable <OneDayElectricityModel> >(day1records.Value);
            Assert.True((day1records.Value as IEnumerable <OneDayElectricityModel>).Count() == 1);
            var day1Record = (day1records.Value as IEnumerable <OneDayElectricityModel>).Single();

            Assert.Equal(150, day1Record.Average);
            Assert.Equal(100, day1Record.Minimum);
            Assert.Equal(200, day1Record.Maximum);
        }
        public async Task DayResult_ShouldGetDetails()
        {
            // Arrange

            // Act

            var result = await _analyticsController.DayResults("08-07-2018");

            // Assert
            Assert.NotNull(result);
        }
Esempio n. 6
0
        public async Task DayResultsReturnsOneDayElectricityModelOK()
        {
            // Arrange


            // Act
            var result = await _analyticsController.DayResults("1");

            //Assert
            Assert.NotNull(result);
            Assert.IsType <OkObjectResult>(result);;
        }
        public async Task DayResults()
        {
            int panelId = 1;
            var result  = await _analyticsController.DayResults(panelId);

            Assert.NotNull(result);

            var objectResult = result as ObjectResult;

            Assert.NotNull(objectResult);
            Assert.Equal(200, objectResult.StatusCode);
        }
Esempio n. 8
0
        public async Task DayResults_ShouldReturnOneDayElectricityListModel()
        {
            // Act
            var result = await _analyticsController.DayResults("AAAA1111BBBB2222");

            // Assert
            Assert.NotNull(result);
            var createdResult = result as CreatedResult;

            Assert.NotNull(createdResult);
            Assert.Equal(201, createdResult.StatusCode);
        }
        public async Task DayResults_ShouldGetList()
        {
            // Act
            var result = await _analyticsController.DayResults("1");

            // Assert
            Assert.NotNull(result);

            var OkResult = result as StatusCodeResult;

            Assert.NotNull(OkResult);
            Assert.Equal(404, OkResult.StatusCode);
        }
        public async Task GetAnalyticsDayResults()
        {
            string panelId = "AAAA1111BBBB2222";

            var result = await _analyticsController.DayResults(panelId);

            // Assert
            Assert.NotNull(result);

            var createdResult = result as CreatedResult;

            Assert.NotNull(createdResult);
            Assert.Equal(201, createdResult.StatusCode);
        }
        public async Task DayResultsAnalytics_WithValidPanelIdShouldReturnList()
        {
            var result = await _analyticsController.DayResults("SSSS22225555TTTT");

            Assert.NotNull(result);

            var okResult = result as OkObjectResult;

            Assert.NotNull(okResult);
            Assert.Equal(200, okResult.StatusCode);
            var dayResultEnumerable = okResult.Value as IEnumerable <OneDayElectricityModel>;

            Assert.NotNull(dayResultEnumerable);
            var dayResult = dayResultEnumerable.ToList();

            Assert.NotNull(dayResult);
            Assert.True(dayResult.Count == 2);
            Assert.True(dayResult[0].DateTime.Date == DateTime.Now.Date);
            Assert.True(dayResult[0].Average == (double)_oneHrElectricities[0].KiloWatt / 24d);
            Assert.True(dayResult[0].Minimum == (double)_oneHrElectricities[0].KiloWatt);
            Assert.True(dayResult[0].Maximum == (double)_oneHrElectricities[0].KiloWatt);
            Assert.True(dayResult[0].Sum == (double)_oneHrElectricities[0].KiloWatt);
        }
        public async Task DayResult_ShouldReturn()
        {
            // Assign:

            // Act
            var dayResults = await _analyticsController.DayResults(2);

            // Assert
            Assert.NotNull(dayResults);

            var okResult = dayResults as OkResult;

            Assert.NotNull(okResult);
            Assert.Equal(200, okResult.StatusCode);
        }
        public async Task Get_DayResultsList()
        {
            // Act
            var result = await _analyticsController.DayResults("AAAA1111BBBB2222");

            // Assert
            Assert.NotNull(result);

            var createdResult = result as OkObjectResult;

            Assert.NotNull(createdResult);
            var results = createdResult.Value as List <OneDayElectricityModel>;

            Assert.Single(results);
        }
        public async Task Get_ShouldGetDayResult()
        {
            // Arrange
            _panelRepositoryMock.Setup(mock => mock.Query()).Returns(panels);
            _analyticsRepositoryMock.Setup(mock => mock.Query())
            .Returns(oneHourElectricitys);

            // Act
            var result = await _analyticsController.DayResults(panelId);

            // Assert
            Assert.NotNull(result);

            var dayResult = result as OkObjectResult;

            Assert.NotNull(dayResult);
            Assert.Equal(200, dayResult.StatusCode);
        }
Esempio n. 15
0
        public async Task DayResults_ShouldGetDayResults()
        {
            // Arrange
            var panel = new PanelModel
            {
                Brand     = "Areva",
                Latitude  = 12.345678,
                Longitude = 98.7655432,
                Serial    = "AAAA1111BBBB2222"
            };

            await _panelController.Register(panel);

            var panelId = "AAAA1111BBBB2222";
            OneHourElectricityModel value = new OneHourElectricityModel
            {
                KiloWatt = 10,
                DateTime = new System.DateTime()
            };
            var temp = new OneDayElectricityModel()
            {
                Sum      = 1,
                Average  = 1,
                Maximum  = 1,
                Minimum  = 1,
                DateTime = new System.DateTime()
            };
            await _analyticsController.Post(panelId, value);


            // Act
            var result = await _analyticsController.DayResults(panelId);



            // Assert
            Assert.NotNull(result);

            var createdResult = result as OkObjectResult;

            Assert.NotNull(createdResult);
            Assert.Equal(200, createdResult.StatusCode);
        }
Esempio n. 16
0
        public async Task GetPanelDataDaysResult()
        {
            //string PanelID = "123AS";
            try
            {
                var result = await _AnalyticsController.DayResults(PanelID);

                // Assert
                Assert.NotNull(result);

                var createdResult = result as CreatedResult;
                Assert.NotNull(createdResult);
                Assert.Equal(201, createdResult.StatusCode);
            }
            catch (Exception)
            {
                throw;
            }
        }
        public async Task Get_ShouldGetOneDayElectricity()
        {
            // Arrange
            string panelId = 1.ToString();
            OneDayElectricityModel oneDayElectricityModel = new OneDayElectricityModel
            {
                Sum      = 0,
                Average  = 0,
                Maximum  = 0,
                Minimum  = 0,
                DateTime = new DateTime()
            };

            var oneDayElectricityModels = new List <OneDayElectricityModel>();

            try
            {
                // Act
                var result = await _analyticsController.DayResults(panelId);

                // Assert
                Assert.NotNull(result);

                var okResult = result as OkObjectResult;
                Assert.NotNull(okResult);
                Assert.Equal(200, okResult.StatusCode);

                var objectResult = okResult.Value as List <OneDayElectricityModel>;
                Assert.Equal(oneDayElectricityModels.ToString(), objectResult.ToString());
            }
            catch (Exception)
            {
                // exc.Message is "The provider for the source IQueryable doesn't implement IAsyncQueryProvider. Only providers that implement IEntityQueryProvider can be used for Entity Framework asynchronous operations."
                // This error is only present in unitTest, this error is not taken in the Crossolar endpoint.
            }
        }
Esempio n. 18
0
        public async Task AnalyticsDayResults()
        {
            Panel panel = new Panel
            {
                Brand     = "Brand12",
                Latitude  = 2.9998,
                Longitude = 33.887116,
                Serial    = "1234567890123477",
                Id        = 4
            };

            // Arrange

            // Act
            IActionResult result = await _analyticsController.DayResults(panel.Id.ToString());

            // Assert
            Assert.NotNull(result);

            var createdResult = result as CreatedResult;

            Assert.NotNull(createdResult);
            Assert.Equal(201, createdResult.StatusCode);
        }
Esempio n. 19
0
        public async Task DayResults_ReturnsBadRequest_WhenpanelIdIdIsNull()
        {
            var result = await _analyticsController.DayResults(panelId : null, It.IsAny <DateTime>());

            Assert.IsType <BadRequestResult>(result);
        }
Esempio n. 20
0
        public async Task DayResults_ShouldRetrieveSumMixMaxAvg()
        {
            //Setup Analytics Repository
            var day1 = DateTime.Now;
            var day2 = day1.AddDays(1);

            var e1_100KW_day1_hour1 = new OneHourElectricity()
            {
                Id       = 1,
                KiloWatt = 100,
                DateTime = day1,
                PanelId  = this.panelId,
            };

            var e1_150KW_day1_hour2 = new OneHourElectricity()
            {
                Id       = 2,
                KiloWatt = 150,
                DateTime = day1.AddHours(1),
                PanelId  = this.panelId,
            };

            var e1_200KW_day2_hour1 = new OneHourElectricity()
            {
                Id       = 3,
                KiloWatt = 200,
                DateTime = day2,
                PanelId  = this.panelId,
            };

            var e1_250KW_day2_hour2 = new OneHourElectricity()
            {
                Id       = 4,
                KiloWatt = 250,
                DateTime = day2.AddHours(1),
                PanelId  = this.panelId,
            };

            var analytics = new List <OneHourElectricity>()
            {
                e1_100KW_day1_hour1, e1_150KW_day1_hour2, e1_200KW_day2_hour1, e1_250KW_day2_hour2
            };

            _analyticsRepositoryMock.Setup(repo => repo.Query())
            .Returns(analytics.AsQueryable().BuildMock().Object);

            _anaController = new AnalyticsController(_analyticsRepositoryMock.Object, _panelRepositoryMock.Object);

            //Act
            var result = await _anaController.DayResults(panelId);

            //Asserts
            var okResult    = Assert.IsType <OkObjectResult>(result);
            var resultModel = Assert.IsType <List <OneDayElectricityModel> >(okResult.Value);

            Assert.Equal(2, resultModel.Count);

            var firstDay = resultModel.FirstOrDefault();//Check for the first day values

            Assert.NotNull(firstDay);

            Assert.Equal(day1.Date, firstDay.DateTime.Date);
            Assert.Equal(e1_100KW_day1_hour1.KiloWatt + e1_150KW_day1_hour2.KiloWatt, firstDay.Sum);
            Assert.Equal((e1_100KW_day1_hour1.KiloWatt + e1_150KW_day1_hour2.KiloWatt) / 2, firstDay.Average);
            Assert.Equal(e1_150KW_day1_hour2.KiloWatt, firstDay.Maximum);
            Assert.Equal(e1_100KW_day1_hour1.KiloWatt, firstDay.Minimum);
        }