示例#1
0
        public void GlucoseCollectionChangedReplaceTest()
        {
            ModelProvider modelController = new ModelProvider();
            var           glucose         = new GlucoseItem(DateTime.Now, 9.0f);

            modelController.Glucoses[0] = glucose;

            Assert.IsTrue(modelController.GlucoseDataPoints.Contains(glucose.GetDataPoint()));

            CheckGlucosesSorted(modelController);
        }
示例#2
0
 public Task <int> SaveGlucoseItemAsync(GlucoseItem item)
 {
     if (item.Id != -1)
     {
         return(_database.UpdateAsync(item));
     }
     else
     {
         return(_database.InsertAsync(item));
     }
 }
示例#3
0
        public void GlucoseCollectionChangedAddTest()
        {
            ModelProvider modelController = new ModelProvider();
            GlucoseItem   value           = new GlucoseItem(DateTime.Now, 9.0f);

            modelController.Glucoses.Add(value);
            DataPoint point = value.GetDataPoint();

            Assert.IsTrue(modelController.GlucoseDataPoints.Contains(point));

            CheckGlucosesSorted(modelController);
        }
示例#4
0
        public GlucoseItemDetailPage()
        {
            InitializeComponent();

            var glucoseItem = new GlucoseItem
            {
                Date   = DateTime.MinValue,
                Amount = 0
            };

            viewModel      = new GlucoseItemDetailViewModel(glucoseItem);
            BindingContext = viewModel;
        }
示例#5
0
        public NewGlucoseItemPage()
        {
            InitializeComponent();

            GlucoseItem = new GlucoseItem
            {
                Id     = -1,
                Date   = DateTime.Now,
                Amount = 0
            };

            BindingContext = this;
        }
示例#6
0
        private ObservableCollection <GlucoseItem> GetGlucosesFromDb(MySqlConnection conn)
        {
            try
            {
                ObservableCollection <GlucoseItem> glucoses = new ObservableCollection <GlucoseItem>();
                using (MySqlCommand cmd = conn.CreateCommand())
                {
                    cmd.CommandText = GlucoseTable.SelectAll;
                    var reader = cmd.ExecuteReader();

                    if (!reader.HasRows)
                    {
                        return(null);
                    }

                    while (reader.Read())
                    {
                        var         id       = reader.GetInt32("_id");
                        var         dateTime = DateTime.Parse(reader.GetString("timestamp"));
                        var         value    = reader.GetFloat("value");
                        GlucoseItem glucose  = new GlucoseItem(id,
                                                               dateTime,
                                                               value);
                        glucose.GenerateDataPoint();
                        glucose.PropertyChanged += GlucoseOnPropertyChanged;

                        try
                        {
                            glucoses.Add(glucose);
                        }
                        catch (ArgumentException e)
                        {
                            LOG.Warn(e.ToString());
                        }
                    }
                }

                return(glucoses);
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                return(null);
            }
        }
 public GlucoseItemDetailViewModel(GlucoseItem glucoseItem = null)
 {
     Title       = glucoseItem?.Amount.ToString() + " " + glucoseItem?.Date.ToString();
     GlucoseItem = glucoseItem;
 }
示例#8
0
 public Task <int> DeleteGlucoseItemAsync(GlucoseItem item)
 {
     return(_database.DeleteAsync(item));
 }