public void CanAddChartItemToChart()
        {
            //arrange
            ChartRepository chartRepo = new ChartRepository(mockContext.Object);

            Chart myChart = new Chart { ChartId = 1, OwnerId = owner.Id };
            City myCity = new City { CityId = 1 };
            ChartItem newItem = new ChartItem { City = myCity };
            ChartItem newItem2 = new ChartItem { City = myCity };

            myCharts.Add(myChart);

            ConnectMocksToDataSource();

            //act
            var result = chartRepo.AddChartItem(1, newItem);
            var result2 = chartRepo.AddChartItem(1, newItem2);

            //assert
            Assert.IsTrue(result && result2);
        }
        public void CanUpdateCityPriorityInChart()
        {
            //arrange
            ChartRepository chartRepo = new ChartRepository(mockContext.Object);

            Chart myChart = new Chart { ChartId = 1, OwnerId = owner.Id };
            City myCity = new City { CityId = 1 };
            City myCity2 = new City { CityId = 2 };
            City myCity3 = new City { CityId = 3 };
            ChartItem newItem = new ChartItem { City = myCity };
            ChartItem newItem2 = new ChartItem { City = myCity2 };
            ChartItem newItem3 = new ChartItem { City = myCity3 };

            myCharts.Add(myChart);

            ConnectMocksToDataSource();

            var result = chartRepo.AddChartItem(1, newItem);
            var result2 = chartRepo.AddChartItem(1, newItem2);
            var result3 = chartRepo.AddChartItem(1, newItem3);

            //act
            var result4 = chartRepo.RearrangeChartItems(1, newItem2, 0);

            //assert
            Assert.IsTrue(result4);
            Assert.AreEqual(myChart.ChartItems[0].City.CityId, newItem2.City.CityId);
            Assert.AreEqual(myChart.ChartItems[1].City.CityId, newItem.City.CityId);
            Assert.AreEqual(myChart.ChartItems[2].City.CityId, newItem3.City.CityId);
        }