Beispiel #1
0
 public void OnWindowClosing(object sender, CancelEventArgs e)
 {
     CameraVM.Dispose();
     MeasurementVM.Dispose();
     AnalyzerVM.Dispose();
     App.Current.Shutdown();
 }
Beispiel #2
0
        public static void SaveMeasurement(String timeValue)
        {
            MeasurementsController measurementController = new MeasurementsController();

            MeasurementVM measurementdata = new MeasurementVM
            {
                TimeStampStr      = timeValue,
                MeasurementValues = PrepareMetricDataCollection()
            };
            var response = measurementController.SaveMeasurementsForTime(measurementdata);
        }
Beispiel #3
0
        /// <summary>
        /// Add/Update measurement for given timestamp
        /// </summary>
        /// <param name="measurement">return true if successfully save else false</param>
        public Boolean SaveMeasurement(MeasurementVM measurementVM)
        {
            bool isSaved   = false;
            var  timeStamp = GetDateTime(measurementVM.TimeStampStr);

            //Check if valid metricData collection && ValidDateTime
            if (measurementVM.MeasurementValues != null && measurementVM.MeasurementValues.Count > 1 && IsValidDate(timeStamp))
            {
                var measurement = CreateMeasurementObject(measurementVM.MeasurementValues, timeStamp);
                //Add measurement in cache
                MeasurementsRepository.SaveMeasurements((DateTime)timeStamp, measurement);
                isSaved = true;
            }
            return(isSaved);
        }
Beispiel #4
0
        public ApiResult <MeasurementVM> GetOne()
        {
            var model = new MeasurementVM()
            {
                Rows = _db.SensorMeasurement.OrderByDescending(w => w.id).Select(s => new MeasurementVM.Row
                {
                    Value      = s.Vrijednost,
                    SensorId   = s.SensorId,
                    SensorType = s.SensorType.ToString(),
                    Time       = s.Date
                }).Take(1).ToList()
            };

            return(ApiResult <MeasurementVM> .OK(model));
        }
        public void SaveMeasurementsForTime_BadRequest_ForNullObject()
        {
            // Arrange
            MeasurementsController measurementController = new MeasurementsController();

            // Act

            MeasurementVM measurementdata = null;
            var           response        = measurementController.SaveMeasurementsForTime(measurementdata);
            var           actualResponse  = response as BadRequestErrorMessageResult;


            //Assert
            Assert.IsNotNull(response);
            Assert.AreEqual(actualResponse.Message, "Measurement cannot be added with invalid values");
        }
        public IHttpActionResult SaveMeasurementsForTime(MeasurementVM measurement)
        {
            bool isSaved = false;

            if (measurement != null)
            {
                isSaved = _MeasurementsServices.SaveMeasurement(measurement);
            }

            if (isSaved)
            {
                return(Created("api/Measurements", measurement.TimeStampStr));
            }
            else
            {
                return(BadRequest("Measurement cannot be added with invalid values"));
            }
        }
        public void SaveMeasurementsForTime_BadRequest_ForNullMetricData()
        {
            // Arrange
            MeasurementsController measurementController = new MeasurementsController();

            // Act
            MeasurementsRepository.ClearAllMeasurements();

            var           metricDataList  = MockData.PrepareMetricDataCollection();
            MeasurementVM measurementdata = new MeasurementVM
            {
                TimeStampStr      = DateTime.UtcNow.ToString(),
                MeasurementValues = null
            };
            var response       = measurementController.SaveMeasurementsForTime(measurementdata);
            var actualResponse = response as BadRequestErrorMessageResult;

            //Assert
            Assert.IsNotNull(response);
            Assert.AreEqual(actualResponse.Message, "Measurement cannot be added with invalid values");
        }
        public void SaveMeasurementsForTime_Created()
        {
            // Arrange
            MeasurementsController measurementController = new MeasurementsController();

            // Act
            MeasurementsRepository.ClearAllMeasurements();

            var           metricDataList  = MockData.PrepareMetricDataCollection();
            var           timeValue       = DateTime.UtcNow.ToString();
            MeasurementVM measurementdata = new MeasurementVM
            {
                TimeStampStr      = timeValue,
                MeasurementValues = MockData.PrepareMetricDataCollection()
            };
            var response       = measurementController.SaveMeasurementsForTime(measurementdata);
            var actualResponse = response as CreatedNegotiatedContentResult <string>;

            //Assert
            Assert.IsNotNull(actualResponse);
            Assert.IsInstanceOfType(response, typeof(CreatedNegotiatedContentResult <string>));
            Assert.AreEqual(actualResponse.Location, "api/Measurements", "Route should be api/Measurements");
            Assert.AreEqual(actualResponse.Content, timeValue, $"Measurement should be save for {timeValue}");
        }
Beispiel #9
0
 public async Task <IActionResult> Edit(int id, [Bind(ATTRIBUTES_TO_BIND)] MeasurementVM measurementVM)
 {
     return(await ConfirmEdit(id, measurementVM, RefreshCollectionsAsync));
 }
Beispiel #10
0
 public async Task <IActionResult> Create([Bind(ATTRIBUTES_TO_BIND)] MeasurementVM measurementVM) => await ConfirmSave(measurementVM, RefreshCollectionsAsync);