public void Test_Save(int[] eNodebIds, int[] townIds, byte[] sectorIds, int[] kpis, int[] resultTownIds, int[] resultKpis, int count) { eNodebs = eNodebIds.Select((e, i) => new ENodeb { ENodebId = e, TownId = townIds[i] }); SaveTimeTownStatsService <FakeTownTimeStat, FakeCell> service = new SaveTimeTownStatsService <FakeTownTimeStat, FakeCell>(repository.Object, eNodebs); List <FakeCell> infos = eNodebIds.Select((c, i) => new FakeCell { CellId = c, SectorId = sectorIds[i], Kpi = kpis[i], StatTime = DateTime.Today }).ToList(); int resultCount = service.Save(infos); Assert.AreEqual(resultCount, count); for (int i = 0; i < count; i++) { FakeTownTimeStat stat = repository.Object.Stats.ElementAt(i); Assert.AreEqual(stat.TownId, resultTownIds[i]); Assert.AreEqual(stat.Kpi, resultKpis[i]); } }
public void Test_Save_ExistedDateConsidered( int[] eNodebIds, int[] townIds, byte[] sectorIds, int[] kpis, string[] dateStrings, int[] resultTownIds, int[] resultKpis, string[] resultDates, string[] existedDates, int count) { eNodebs = eNodebIds.Select((e, i) => new ENodeb { ENodebId = e, TownId = townIds[i] }); repository.SetupGet(x => x.Stats).Returns(existedDates.Select(x => new FakeTownTimeStat { StatTime = DateTime.Parse(x), TownId = 101, Kpi = 1002 }).AsQueryable()); SaveTimeTownStatsService <FakeTownTimeStat, FakeCell> service = new SaveTimeTownStatsService <FakeTownTimeStat, FakeCell>(repository.Object, eNodebs); List <FakeCell> infos = eNodebIds.Select((c, i) => new FakeCell { CellId = c, SectorId = sectorIds[i], Kpi = kpis[i], StatTime = DateTime.Parse(dateStrings[i]) }).ToList(); int resultCount = service.Save(infos); Assert.AreEqual(resultCount, count); for (int i = 0; i < count; i++) { FakeTownTimeStat stat = repository.Object.Stats.ElementAt(i + existedDates.Length); Assert.AreEqual(stat.TownId, resultTownIds[i]); Assert.AreEqual(stat.Kpi, resultKpis[i]); Assert.AreEqual(stat.StatTime, DateTime.Parse(resultDates[i])); } }