public void TestInitialize()
 {
     var fixture = new Fixture();
     factories = Substitute.For<Factories>();
     navigator = Substitute.For<Navigator>();
     stateProvider = Substitute.For<StateProvider>();
     facade = Substitute.For<ReplacementBuilderAndSugarEstimatorFacade>();
     clipboard = Substitute.For<Clipboard>();
     messageDialog = Substitute.For<MessageDialog>();
     navigation = new InsulinEditingViewModel.Navigation();
     CreateSut();
     insulin = fixture.Create<Insulin>();
     insulin.InitializeCircumstances(new List<Guid>());
     insulin.SetOwner(factories);
     sugar = new Sugar();
     sugar.SetOwner(factories);
     factories.InsulinCircumstances.Returns(fixture.CreateMany<InsulinCircumstance>().ToList());
     factories.CreateSugar().Returns(sugar);
     settings = new Settings { MaxBolus = 5 };
     factories.Settings.Returns(settings);
     meal = fixture.Create<Meal>();
     factories.Finder.FindMealByInsulin(insulin).Returns(meal);
     factories.Finder.FindInsulinById(insulin.Id).Returns(insulin);
     var replacementAndEstimatedSugars = new ReplacementAndEstimatedSugars();
     replacementAndEstimatedSugars.EstimatedSugars = new List<Sugar>();
     replacementAndEstimatedSugars.Replacement
         = new Replacement { InsulinTotal = new Insulin(), Items = new List<ReplacementItem>() };
     facade.GetReplacementAndEstimatedSugars(Arg.Any<Meal>(), Arg.Any<Insulin>(), Arg.Any<Sugar>())
             .Returns(replacementAndEstimatedSugars);
     factories.MealNames.Returns(new List<MealName>());
     stateProvider.State.Returns(new Dictionary<string, object>());
 }
 public void UsesRelatedMealIdWhenProvided()
 {
     var relatedMeal = new Meal { Id = Guid.NewGuid() };
     navigation.RelatedMealId = relatedMeal.Id;
     factories.Finder.FindMealById(relatedMeal.Id).Returns(relatedMeal);
     InitializeViewModel();
     var replacementAndEstimatedSugars = new ReplacementAndEstimatedSugars
     {
         Replacement = new Replacement
         {
             InsulinTotal = new Insulin { NormalBolus = 1.5f },
             Items = this.replacementAndEstimatedSugars.Replacement.Items
         },
         EstimatedSugars = this.replacementAndEstimatedSugars.EstimatedSugars
     };
     facade.GetReplacementAndEstimatedSugars(relatedMeal, Arg.Any<Insulin>(), Arg.Any<Sugar>())
         .Returns(replacementAndEstimatedSugars);
     sut.CurrentSugar.BloodSugar = "100";
     Assert.AreEqual(1.5f, sut.Calculated.Insulin.NormalBolus);
 }
 public new void TestInitialize()
 {
     replacementAndEstimatedSugars = new ReplacementAndEstimatedSugars
     {
         Replacement = new Replacement
         {
             Items = new List<ReplacementItem> { new ReplacementItem() },
             InsulinTotal
                 = new Insulin { NormalBolus = 2.5f, SquareWaveBolus = 2, SquareWaveBolusHours = 3 }
         },
         EstimatedSugars
             = new List<Sugar> { new Sugar { BloodSugar = 100, DateTime = DateTime.Now.AddHours(2) },
                                 new Sugar { BloodSugar = 110, DateTime = DateTime.Now.AddHours(1) } }
     };
     meal.DateTime = DateTime.UtcNow.AddHours(0.5);
     facade.GetReplacementAndEstimatedSugars(meal,
         Arg.Is<Insulin>(temp => temp.Id == insulin.Id),
         Arg.Is<Sugar>(temp => temp.BloodSugar == 100f))
         .Returns(replacementAndEstimatedSugars);
 }