public void SetUp()
 {
     _collector = Substitute.For<IItemCollector>();
     _scheduler = Substitute.For<IScheduler>();
     _loginModel = Substitute.For<ILoginModel>();
     _uut = new ScheduledShoppingListModel(_collector, _scheduler, _loginModel);
 }
        /// <summary>
        /// Sets up the ScheduledShoppingListModel with constructorinjection
        /// </summary>
        /// <param name="itemCollector"></param>
        /// <param name="scheduler"></param>
        /// <param name="loginModel"></param>
        public ScheduledShoppingListModel(IItemCollector itemCollector, IScheduler scheduler, ILoginModel loginModel)
        {
            if (itemCollector == null) throw new ArgumentNullException();
            if (scheduler == null) throw new ArgumentNullException();

            _shoppingList = new List<Item>();
            _itemCollector = itemCollector;
            _scheduler = scheduler;
            _loginModel = loginModel;
            UpdateShoppingList();

            _scheduler.Tick += UpdateShoppingList;
            _scheduler.Start();
        }
        public void SetUp()
        {
            //Setup mocks
            _userCollector = Substitute.For<IUserCollector>();
            _userCollector.GetShoppinglistId("").ReturnsForAnyArgs(5);
            _itemCollector = Substitute.For<IItemCollector>();

            //Setup reals
            _scheduler = new TimerScheduler(2);
            _loginModel = new LoginModel(_userCollector);
            _shoppingListModel = new ScheduledShoppingListModel(_itemCollector, _scheduler, _loginModel);
            _sut = new ShoppingListViewModel(_shoppingListModel);

            //Login with Henrik
            _userCollector.DoesUserExist("", "").ReturnsForAnyArgs(true);
            _loginModel.Login("Henrik", "secret");
        }
        public void SetUp()
        {
            _recipeSizeWidth = 220;
            //Setup mocks
            _foodplanCollector = Substitute.For<IFoodplanCollector>();
            _recipeCollector = Substitute.For<IRecipeCollector>();
            _msgService = Substitute.For<IMessageBoxService>();
            _itemCollector = Substitute.For<IItemCollector>();
            _userCollector = Substitute.For<IUserCollector>();
            _shoppingListModel = Substitute.For<IShoppingListModel>();

            //Setup reals
            _loginModel = new LoginModel(_userCollector);
            _recipeListModel = new RecipeListModel(_recipeCollector);
            _foodplanModel = new FoodplanModel(_foodplanCollector, _shoppingListModel, _recipeListModel, _loginModel, _msgService);
            _foodplanModel.Foodplan.RecipeList = new List<Tuple<Recipe, DateTime>>();
            _sut = new RecipeListViewModel(_recipeListModel, _recipeSizeWidth, _foodplanModel, _msgService);

            //Login with Henrik
            _userCollector.DoesUserExist("", "").ReturnsForAnyArgs(true);
            _loginModel.Login("Henrik", "secret");
        }
        public void SetUp()
        {
            //Setup mocks
            _foodplanCollector = Substitute.For<IFoodplanCollector>();
            _recipeCollector = Substitute.For<IRecipeCollector>();
            _msgService = Substitute.For<IMessageBoxService>();
            _itemCollector = Substitute.For<IItemCollector>();
            _userCollector = Substitute.For<IUserCollector>();

            //Setup reals
            _scheduler = new TimerScheduler(2);
            _loginModel = new LoginModel(_userCollector);
            _recipeListModel = new RecipeListModel(_recipeCollector);
            _shoppingListModel = new ScheduledShoppingListModel(_itemCollector, _scheduler, _loginModel);
            _foodplanModel = new FoodplanModel (_foodplanCollector, _shoppingListModel, _recipeListModel, _loginModel, _msgService);
            _sut = new FoodplanViewModel(_foodplanModel) { Foodplan = new ObservableCollection<Recipe>() };
            _foodplanModel.Foodplan.RecipeList = new List<Tuple<Recipe, DateTime>>();

            //Login with Henrik
            _userCollector.DoesUserExist("", "").ReturnsForAnyArgs(true);
            _loginModel.Login("Henrik", "secret");
        }