public ParagraphMission DuplicateParagraphMission(ParagraphMission paragraphMission, DateTime dateNewCreated) { object result = DoLockedProcess(() => { return(client.SendCommand("dpm", new string[] { DBHelper.Login, DBHelper.Password, paragraphMission.Id.ToString(), dateNewCreated.Day.ToString(), dateNewCreated.Month.ToString(), dateNewCreated.Year.ToString() })); }); if (result != null) { if (result is string res) { string[] strIds = res.Split('|'); int[] ids = new int[strIds.Length]; for (int i = 0; i < ids.Length; ++i) { ids[i] = int.Parse(strIds[i]); } List <Point> items = new List <Point>(); for (int i = 0; i < paragraphMission.Paragraph.Items.Count; ++i) { items.Add(new Point(ids[i + 4], paragraphMission.Paragraph.Items[i].Text, paragraphMission.Paragraph.Items[i].IsChecked)); } return(new ParagraphMission(ids[2], new Paragraph(ids[3], items), ids[1], ids[0], 1, paragraphMission.Name, paragraphMission.Text, dateNewCreated, DateTime.Now, DateTime.MinValue, DateTime.MaxValue, true)); } } throw new ArgumentException(); }
public void GetChangesTest(string name, string text, string[] points, bool[] isCheckeds, string name2, string text2, string[] points2, bool[] isCheckeds2) { ParagraphMission oldPm = new ParagraphMission(name, text, DateTime.Now, true); ParagraphMission newPm = new ParagraphMission(name2, text2, DateTime.Now); for (int i = 0; i < points.Length; ++i) { Point point = new Point(points[i], true); oldPm.Paragraph.AddPoint(point); Thread.Sleep(100); point.IsChecked = isCheckeds[i]; newPm.Paragraph.Items.Add(new Point(point.Id, point.Text, point.IsChecked)); } for (int i = 0; i < points.Length; ++i) { newPm.Paragraph.Items[i].Text = points2[i]; newPm.Paragraph.Items[i].IsChecked = isCheckeds2[i]; } List <KeyValuePair <string, string[]> > expectedResult = new List <KeyValuePair <string, string[]> >(); for (int i = 0; i < oldPm.Paragraph.Count; ++i) { if (newPm.Paragraph.Items .Where((x) => { Point p = oldPm.Paragraph.Items[i]; return(x.Id == p.Id && x.Text != p.Text); }) .Count() == 1) { expectedResult.Add(new KeyValuePair <string, string[]>("cpt", new string[] { newPm.Paragraph.Items[i].Id.ToString(), newPm.Paragraph.Items[i].Text })); } if (newPm.Paragraph.Items .Where((x) => { Point p = oldPm.Paragraph.Items[i]; return(x.Id == p.Id && x.IsChecked != p.IsChecked); }) .Count() == 1) { expectedResult.Add(new KeyValuePair <string, string[]>("scp", new string[] { oldPm.Paragraph.Items[i].Id.ToString(), newPm.Paragraph.Items[i].IsChecked.ToString() })); } } List <KeyValuePair <string, string[]> > result = ParagraphMission.GetChanges(newPm, oldPm); Assert.AreEqual(expectedResult.Count, result.Count); for (int i = 0; i < expectedResult.Count; ++i) { Assert.AreEqual(expectedResult[i].Key, result[i].Key); Assert.AreEqual(expectedResult[i].Value.Length, result[i].Value.Length); for (int j = 0; j < expectedResult[i].Value.Length; ++j) { Assert.AreEqual(expectedResult[i].Value[j], result[i].Value[j]); } } }
public void InitializationTest(int id, int cid, int aid, int nid, int sid, string name, string text, int[] ids, string[] items, bool[] isCheckeds) { ParagraphMission mission = new ParagraphMission(id, cid, aid, nid, sid, name, text, DateTime.Now, DateTime.Now, DateTime.Now, DateTime.Now); Assert.AreEqual(id, mission.Id); Assert.AreEqual(cid, mission.ContextId); Assert.AreEqual(aid, mission.ActionId); Assert.AreEqual(nid, mission.NoteId); Assert.AreEqual(sid, mission.StereotypeId); Assert.AreEqual(name, mission.Name); Assert.AreEqual(text, mission.Text); Assert.IsTrue(mission is IMission && mission is Mission && mission.Type == MissionType.Paragraph); List <Point> points = new List <Point>(); for (int i = 0; i < items.Length; ++i) { points.Add(new Point(ids[i], items[i], isCheckeds[i])); } Paragraph paragraph = new Paragraph(cid, points); ParagraphMission mission2 = new ParagraphMission(id, paragraph, aid, nid, sid, name, text, DateTime.Now, DateTime.Now, DateTime.Now, DateTime.Now); Assert.AreEqual(items.Length, mission2.Context.Count); Assert.AreEqual(paragraph, mission2.Context); Assert.AreEqual(paragraph, mission2.Paragraph); for (int i = 0; i < items.Length; ++i) { Assert.AreEqual(ids[i], ((Paragraph)mission2.Context).Items[i].Id); Assert.AreEqual(items[i], ((Paragraph)mission2.Context).Items[i].Text); Assert.AreEqual(isCheckeds[i], ((Paragraph)mission2.Context).Items[i].IsChecked); } }
public void IdSetTest(int id, int newId) { ParagraphMission mission = new ParagraphMission(id, new Paragraph(), 0, 0, 0, "", "", DateTime.Now, DateTime.Now, DateTime.Now, DateTime.Now); mission.Id = newId; Assert.AreEqual(id > 0 ? id : newId, mission.Id); }
public void AutoRemovingPointTest(string[] points, int id) { ParagraphMission mission = new ParagraphMission("name", "text", DateTime.Now, true); ServerRealization.Database.Context.Mission dbMission = DBContext.Missions.Where(x => x.Id == mission.Id).First(); int dbId = -1; for (int i = 0; i < points.Length; ++i) { mission.Paragraph.AddPoint(new Point(points[i], true)); if (id == i) { dbId = mission.Paragraph.Items.Last().Id; } } Assert.AreEqual(1, DBContext.Points.Where(x => x.Id == dbId).Count()); Assert.AreEqual(points.Length, mission.Paragraph.Count); Assert.AreEqual(points.Length, DBContext.Collections.Where(x => x.Id == mission.Paragraph.Id).First().Count); mission.Paragraph.RemovePoint(dbId); Assert.AreEqual(0, DBContext.Points.Where(x => x.Id == dbId).Count()); Assert.AreEqual(points.Length - 1, mission.Paragraph.Count); Assert.AreEqual(points.Length - 1, DBContext.Collections.Where(x => x.Id == mission.Paragraph.Id).First().Count); }
public int[] CreateParagraphMission(ParagraphMission paragraphMission) { object result = DoLockedProcess(() => { return(client.SendCommand("cnpm", new string[] { Login, Password, paragraphMission.Name, paragraphMission.Text, paragraphMission.Created.Year.ToString(), paragraphMission.Created.Month.ToString(), paragraphMission.Created.Day.ToString() })); }); if (result != null) { if (result is string res) { if (res.Split('|').Length == 4) { if (int.TryParse(res.Split('|')[0], out int r1)) { if (int.TryParse(res.Split('|')[1], out int r2)) { if (int.TryParse(res.Split('|')[2], out int r3)) { if (int.TryParse(res.Split('|')[3], out int r4)) { if (r1 > 0 && r2 > 0 && r3 > 0 && r4 > 0) { return new int[] { r1, r2, r3, r4 } } } } } } } } } ; throw new ArgumentException(); }
public void AutoTimingTest(string name, string text, int day, int month, int year, string[] points, bool[] isCheckeds, string newName, string newText, string[] newPoints, bool[] newIsCheckeds) { ParagraphMission mission = new ParagraphMission(name, text, new DateTime(year, month, day), true); for (int i = 0; i < points.Length; ++i) { mission.Paragraph.AddPoint(new Point(points[i], isCheckeds[i], true)); } ServerRealization.Database.Context.Mission dbMission = DBContext.Missions.Where(x => x.Id == mission.Id).First(); Assert.AreEqual(mission.Name, dbMission.Action.Note.Name); Assert.AreEqual(mission.Text, dbMission.Action.Note.Text); Assert.AreEqual(mission.Created, dbMission.Action.Note.Created); List <Point> paragraph = mission.Paragraph.Items; List <ServerRealization.Database.Context.Point> dbParagraph = DBContext.Points .Where(y => y.ParagraphId == DBContext.Collections .Where(x => x.Id == mission.Paragraph.Id) .First().Id) .ToList(); for (int i = 0; i < points.Length; ++i) { Point point = paragraph[i]; ServerRealization.Database.Context.Point dbPoint = dbParagraph.Where(x => x.Id == point.Id).First(); Assert.AreEqual(point.Text, dbPoint.Name); Assert.AreEqual(point.IsChecked, dbPoint.IsChecked); } mission.Name = newName; mission.Text = newText; for (int i = 0; i < points.Length; ++i) { mission.Paragraph.Items[i].Text = newPoints[i]; mission.Paragraph.Items[i].IsChecked = newIsCheckeds[i]; } Thread.Sleep(11000); dbMission = DBContext.Missions.Where(x => x.Id == mission.Id).First(); Assert.AreEqual(mission.Name, dbMission.Action.Note.Name); Assert.AreEqual(mission.Text, dbMission.Action.Note.Text); Assert.AreEqual(mission.Created, dbMission.Action.Note.Created); paragraph = mission.Paragraph.Items; dbParagraph = DBContext.Points .Where(y => y.ParagraphId == DBContext.Collections .Where(x => x.Id == mission.Paragraph.Id) .First().Id) .ToList(); for (int i = 0; i < points.Length; ++i) { Point point = paragraph[i]; ServerRealization.Database.Context.Point dbPoint = dbParagraph.Where(x => x.Id == point.Id).First(); Assert.AreEqual(point.Text, dbPoint.Name); Assert.AreEqual(point.IsChecked, dbPoint.IsChecked); } }
public void SetCheckedPointTest(bool isChecked) { ParagraphMission mission = new ParagraphMission("", "", DateTime.Now, true); mission.Paragraph.AddPoint(new Point("", true)); Assert.IsFalse(mission.Paragraph.Items.First().IsChecked); Assert.IsTrue(DBHelper.SetCheckedPointStatic(mission.Paragraph.Items.First(), isChecked)); Assert.AreEqual(isChecked, DBContext.Points.Where(x => x.Id == mission.Paragraph.Items.First().Id).First().IsChecked); Assert.IsTrue(helper.SetCheckedPoint(mission.Paragraph.Items.First(), !isChecked)); Assert.AreEqual(!isChecked, DBContext.Points.Where(x => x.Id == mission.Paragraph.Items.First().Id).First().IsChecked); }
public static int[] CreateParagraphMissionStatic(ParagraphMission paragraphMission) { DBHelper helper = new DBHelper(lastSettings); try { return(helper.CreateParagraphMission(paragraphMission)); } catch { return(new int[] { -3, -3, -3, -3 }); } }
public void AddPointToParagraphMissionTest(string[] points) { ParagraphMission paragraphMission = new ParagraphMission("name", "text", DateTime.Now, true); for (int i = 0; i < points.Length; ++i) { int id = helper.AddPointToParagraphMission(paragraphMission, new Point(points[i], false)); Assert.AreEqual(points[i], DBContext.Points.Where(x => x.Id == id).First().Name); id = DBHelper.AddPointToParagraphMissionStatic(paragraphMission, new Point(points[i], false)); Assert.AreEqual(points[i], DBContext.Points.Where(x => x.Id == id).First().Name); } Thread.Sleep(server.Stop() * 2); }
public int AddPointToParagraphMission(ParagraphMission paragraphMission, Point point) { object result = DoLockedProcess(() => { return(client.SendCommand("aptpm", new string[] { Login, Password, paragraphMission.Id.ToString(), point.Text })); }); if (result != null) { if (result is string res) { if (int.TryParse(res, out int r)) { if (r > 0) { return(r); } } } } throw new ArgumentException(); }
public void GetDayAsyncTest(string login, string password, int day, int month, int year) { GenerateTestNotes(); List <Note> expectedResult = null; try { expectedResult = helper.GetDay(login, password, day, month, year); } catch (ArgumentException) { expectedResult = new List <Note>(); } List <Note> result = null; try { result = DBHelper.GetDayAsync(login, password, day, month, year).Result; } catch (ArgumentException) { result = new List <Note>(); } Assert.AreEqual(expectedResult.Count, result.Count); for (int i = 0; i < result.Count; ++i) { if (expectedResult[i] is ParagraphMission) { Assert.IsTrue(result[i] is ParagraphMission); ParagraphMission expectedMission = (ParagraphMission)expectedResult[i], mission = (ParagraphMission)result[i]; Assert.AreEqual(expectedMission.Context.Count, mission.Context.Count); Assert.AreEqual(expectedMission.ContextId, mission.ContextId); for (int j = 0; j < mission.Context.Count; ++j) { Assert.AreEqual(expectedMission.Paragraph.Items[j].Id, mission.Paragraph.Items[j].Id); Assert.AreEqual(expectedMission.Paragraph.Items[j].Text, mission.Paragraph.Items[j].Text); Assert.AreEqual(expectedMission.Paragraph.Items[j].IsChecked, mission.Paragraph.Items[j].IsChecked); } Assert.AreEqual(expectedMission.Id, mission.Id); Assert.AreEqual(expectedMission.ActionId, mission.ActionId); Assert.AreEqual(expectedMission.Start, expectedMission.Start); Assert.AreEqual(expectedMission.End, expectedMission.End); } Assert.AreEqual(expectedResult[i].Id, result[i].Id); Assert.AreEqual(expectedResult[i].Name, result[i].Name); Assert.AreEqual(expectedResult[i].Text, result[i].Text); Assert.AreEqual(expectedResult[i].LastChanged, result[i].LastChanged); Assert.AreEqual(expectedResult[i].Created, result[i].Created); Assert.AreEqual(expectedResult[i].StereotypeId, result[i].StereotypeId); } }
public void AutoCreatingTest(string name, string text, int day, int month, int year) { ParagraphMission mission = new ParagraphMission(name, text, new DateTime(year, month, day)); Assert.IsTrue(mission.Id < 1); mission = new ParagraphMission(name, text, new DateTime(year, month, day), true); Thread.Sleep(500); Assert.IsTrue(mission.Id > 0); Assert.IsTrue(DBContext.Missions.Where(x => x.Id == mission.Id).Count() == 1); ServerRealization.Database.Context.Mission dbMission = DBContext.Missions.Where(x => x.Id == mission.Id).First(); Assert.AreEqual(mission.ActionId, dbMission.ActionId); Assert.AreEqual(mission.NoteId, dbMission.Action.NoteId); Assert.AreEqual(mission.Paragraph.Id, dbMission.ContextId); Assert.AreEqual(mission.Name, dbMission.Action.Note.Name); Assert.AreEqual(mission.Text, dbMission.Action.Note.Text); Assert.AreEqual(mission.Created, dbMission.Action.Note.Created); }
public void CreateNewParagraphMissionTest(string name, string text, int day, int month, int year) { ParagraphMission paragraphMission = new ParagraphMission(name, text, new DateTime(year, month, day)); int[] ids = helper.CreateParagraphMission(paragraphMission); Thread.Sleep(500); Assert.IsTrue(ids.Length == 4); Assert.IsTrue(DBContext.Notes.Where(x => x.Id == ids[0]).Count() == 1); Assert.IsTrue(DBContext.Actions.Where(x => x.Id == ids[1]).Count() == 1); Assert.IsTrue(DBContext.Missions.Where(x => x.Id == ids[2]).Count() == 1); Assert.IsTrue(DBContext.Collections.Where(x => x.Id == ids[3]).Count() == 1); ServerRealization.Database.Context.Mission mission = DBContext.Missions.Where(x => x.Id == ids[2]).First(); Assert.AreEqual(mission.Action.NoteId, ids[0]); Assert.AreEqual(mission.Action.Id, ids[1]); Assert.AreEqual(mission.ContextId, ids[3]); Assert.AreEqual(name, mission.Action.Note.Name); Assert.AreEqual(text, mission.Action.Note.Text); Assert.AreEqual(new DateTime(year, month, day), mission.Action.Note.Created); }
public void AutoAddingPointTest(string[] points) { ParagraphMission mission = new ParagraphMission("name", "text", DateTime.Now, true); Thread.Sleep(500); ServerRealization.Database.Context.Mission dbMission = DBContext.Missions.Where(x => x.Id == mission.Id).First(); for (int i = 0; i < points.Length; ++i) { mission.Paragraph.AddPoint(new Point(points[i], true)); Thread.Sleep(500); Assert.AreEqual(i + 1, mission.Paragraph.Count); Assert.AreEqual(i + 1, ((ServerRealization.Database.Context.Collection)dbMission.Context).Count); Point point = mission.Paragraph.Items.Last(); Assert.IsTrue(point.Id > 0); Assert.AreEqual(points[i], point.Text); Assert.AreEqual(false, point.IsChecked); ServerRealization.Database.Context.Point dbPoint = DBContext.Points.Where(x => x.Id == point.Id).First(); Assert.AreEqual(points[i], dbPoint.Name); Assert.AreEqual(false, dbPoint.IsChecked); } }
public void RemovePointTest(string[] points, int id) { ParagraphMission paragraphMission = new ParagraphMission("", "", DateTime.Now, true); int dbId = -1; for (int i = 0; i < points.Length; ++i) { Point point = new Point(points[i], true); point.Id = helper.AddPointToParagraphMission(paragraphMission, point); paragraphMission.Paragraph.Items.Add(point); if (id == i) { dbId = point.Id; } } Assert.AreEqual(1, DBContext.Points.Where(x => x.Id == dbId).Count()); Assert.AreEqual(points.Length, paragraphMission.Paragraph.Count); Assert.AreEqual(points.Length, DBContext.Collections.Where(x => x.Id == paragraphMission.Paragraph.Id).First().Count); Assert.IsTrue(DBHelper.RemovePointStatic(paragraphMission.Paragraph.Items.Where(x => x.Id == dbId).First())); Assert.AreEqual(0, DBContext.Points.Where(x => x.Id == dbId).Count()); Assert.AreEqual(points.Length - 1, DBContext.Collections.Where(x => x.Id == paragraphMission.Paragraph.Id).First().Count); }
public static ParagraphMission DuplicateParagraphMissionStatic(ParagraphMission paragraphMission, DateTime dateNewCreated) => new DBHelper(lastSettings).DuplicateParagraphMission(paragraphMission, dateNewCreated);
public static int AddPointToParagraphMissionStatic(ParagraphMission paragraphMission, Point point) => new DBHelper(lastSettings).AddPointToParagraphMission(paragraphMission, point);
public void SetIntervalTimingTest(int mls) { ParagraphMission mission = new ParagraphMission("", "", DateTime.Now, true); ServerRealization.Database.Context.Mission dbMission = DBContext.Missions.Where(x => x.Id == mission.Id).First(); mission.SetIntervalTiming(mls); DateTime start = DateTime.Now; mission.Name = "test"; while (mission.Name != dbMission.Action.Note.Name) { Thread.Sleep(100); } DateTime end = DateTime.Now; Assert.IsTrue(mls > (int)(end - start).TotalMilliseconds - 150); Assert.IsTrue(mls < (int)(end - start).TotalMilliseconds + 150); mission = new ParagraphMission("", "", DateTime.Now, true); mission.SetIntervalTiming(mls); dbMission = DBContext.Missions.Where(x => x.Id == mission.Id).First(); start = DateTime.Now; mission.Text = "test"; while (mission.Text != dbMission.Action.Note.Text) { Thread.Sleep(100); } end = DateTime.Now; Assert.IsTrue(mls > (int)(end - start).TotalMilliseconds - 150); Assert.IsTrue(mls < (int)(end - start).TotalMilliseconds + 150); mission = new ParagraphMission("", "", DateTime.Now, true); mission.SetIntervalTiming(mls); dbMission = DBContext.Missions.Where(x => x.Id == mission.Id).First(); Point point = new Point("", true); mission.Paragraph.AddPoint(point); ServerRealization.Database.Context.Point dbPoint = DBContext.Points.Where(x => x.Id == point.Id).First(); start = DateTime.Now; point.Text = "test"; while (point.Text != dbPoint.Name) { Thread.Sleep(100); } end = DateTime.Now; Assert.IsTrue(mls > (int)(end - start).TotalMilliseconds - 150); Assert.IsTrue(mls < (int)(end - start).TotalMilliseconds + 150); mission = new ParagraphMission("", "", DateTime.Now, true); mission.SetIntervalTiming(mls); dbMission = DBContext.Missions.Where(x => x.Id == mission.Id).First(); point = new Point("", true); mission.Paragraph.AddPoint(point); dbPoint = DBContext.Points.Where(x => x.Id == point.Id).First(); start = DateTime.Now; point.IsChecked = true; while (point.IsChecked != dbPoint.IsChecked) { Thread.Sleep(100); } end = DateTime.Now; Assert.IsTrue(mls > (int)(end - start).TotalMilliseconds - 150); Assert.IsTrue(mls < (int)(end - start).TotalMilliseconds + 150); }
public void DuplicateParagraphMissionTest(string name, string text, string[] points, bool[] isCheckeds, string createdDay, string createdMonth, string createdYear, string newDay, string newMonth, string newYear, string expectedResult) { ParagraphMission paragraphMission = new ParagraphMission(name, text, DateTime.Parse(createdDay + "." + createdMonth + "." + createdYear), true); int[] ids = new int[] { paragraphMission.NoteId, paragraphMission.ActionId, paragraphMission.Id, paragraphMission.Paragraph.Id }; for (int i = 0; i < points.Length; ++i) { helper.AddPointToParagraphMission(paragraphMission, new Point(points[i], isCheckeds[i])); } DateTime before = DateTime.Now; ParagraphMission dParagraphMission = helper.DuplicateParagraphMission(paragraphMission, DateTime.Parse(newDay + "." + newMonth + "." + newYear)); DateTime after = DateTime.Now; int[] newIds = new int[] { dParagraphMission.NoteId, dParagraphMission.ActionId, dParagraphMission.Id, dParagraphMission.Paragraph.Id }; ServerRealization.Database.Context.Note noteDb = DBContext.Notes.Where(x => x.Id == ids[0]).First(); ServerRealization.Database.Context.Note newNoteDb = DBContext.Notes.Where(x => x.Id == newIds[0]).First(); ServerRealization.Database.Context.Action actionDb = DBContext.Actions.Where(x => x.Id == ids[1]).First(); ServerRealization.Database.Context.Action newActionDb = DBContext.Actions.Where(x => x.Id == newIds[1]).First(); ServerRealization.Database.Context.Mission missionDb = DBContext.Missions.Where(x => x.Id == ids[2]).First(); ServerRealization.Database.Context.Mission newMissionDb = DBContext.Missions.Where(x => x.Id == newIds[2]).First(); ServerRealization.Database.Context.Collection paragraphDb = DBContext.Collections.Where(x => x.Id == ids[3]).First(); ServerRealization.Database.Context.Collection newParagraphDb = DBContext.Collections.Where(x => x.Id == newIds[3]).First(); List <ServerRealization.Database.Context.Point> pointsDb = DBContext.Points.Where(x => x.ParagraphId == ids[3]).ToList(); List <ServerRealization.Database.Context.Point> newPointsDb = DBContext.Points.Where(x => x.ParagraphId == newIds[3]).ToList(); Assert.AreNotEqual(noteDb.Id, newNoteDb.Id); Assert.AreEqual(noteDb.UserId, newNoteDb.UserId); Assert.AreEqual(noteDb.Name, newNoteDb.Name); Assert.AreEqual(noteDb.Text, newNoteDb.Text); Assert.AreNotEqual(noteDb.Created, newNoteDb.Created); Assert.AreEqual(newDay, newNoteDb.Created.Day.ToString()); Assert.AreEqual(newMonth, newNoteDb.Created.Month.ToString()); Assert.AreEqual(newYear, newNoteDb.Created.Year.ToString()); Assert.IsTrue(before <= newNoteDb.LastChanged && newNoteDb.LastChanged <= after); Assert.AreNotEqual(actionDb.Id, newActionDb.Id); Assert.AreNotEqual(actionDb.NoteId, newActionDb.NoteId); Assert.AreEqual(newNoteDb.Id, newActionDb.NoteId); Assert.AreEqual(actionDb.Start, newActionDb.Start); Assert.AreEqual(actionDb.End, newActionDb.End); Assert.AreNotEqual(missionDb.Id, newMissionDb.Id); Assert.AreNotEqual(missionDb.ActionId, newMissionDb.ActionId); Assert.AreEqual(newActionDb.Id, newMissionDb.Id); Assert.AreEqual(false, newMissionDb.IsProgressType); Assert.AreNotEqual(missionDb.ContextId, newMissionDb.ContextId); Assert.AreEqual(newParagraphDb.Id, newMissionDb.ContextId); Assert.AreNotEqual(paragraphDb.Id, newParagraphDb.Id); Assert.AreEqual(paragraphDb.Count, newParagraphDb.Count); Assert.AreEqual(pointsDb.Count, newPointsDb.Count); for (int i = 0; i < pointsDb.Count; ++i) { Assert.AreNotEqual(pointsDb[i].Id, newPointsDb[i].Id); Assert.AreEqual(newParagraphDb.Id, newPointsDb[i].ParagraphId); Assert.AreEqual(pointsDb[i].Name, newPointsDb[i].Name); Assert.AreEqual(pointsDb[i].IsChecked, newPointsDb[i].IsChecked); } }
public void GetDayTest(string login, string password, int day, int month, int year) { GenerateTestNotes(); string expectedResultString = server.ExecuteCommand("gd", new string[] { login, password, day.ToString(), month.ToString(), year.ToString() }); try { List <Note> result = helper.GetDay(login, password, day, month, year); List <Note> expectedResult = new List <Note>(); string[] erss = StringsHelper.Split("\b<sgd>\b", expectedResultString); for (int i = 0; i < erss.Length; ++i) { if (Mission.IsStringMission(erss[i])) { expectedResult.Add((ParagraphMission)Mission.CreateNew(erss[i])); } else { expectedResult.Add(new Note(erss[i])); } } Assert.AreEqual(expectedResult.Count, result.Count); for (int i = 0; i < result.Count; ++i) { if (expectedResult[i] is ParagraphMission) { Assert.IsTrue(result[i] is ParagraphMission); ParagraphMission expectedMission = (ParagraphMission)expectedResult[i], mission = (ParagraphMission)result[i]; Assert.AreEqual(expectedMission.Context.Count, mission.Context.Count); Assert.AreEqual(expectedMission.ContextId, mission.ContextId); for (int j = 0; j < mission.Context.Count; ++j) { Assert.AreEqual(expectedMission.Paragraph.Items[j].Id, mission.Paragraph.Items[j].Id); Assert.AreEqual(expectedMission.Paragraph.Items[j].Text, mission.Paragraph.Items[j].Text); Assert.AreEqual(expectedMission.Paragraph.Items[j].IsChecked, mission.Paragraph.Items[j].IsChecked); } Assert.AreEqual(expectedMission.Id, mission.Id); Assert.AreEqual(expectedMission.ActionId, mission.ActionId); Assert.AreEqual(expectedMission.Start, expectedMission.Start); Assert.AreEqual(expectedMission.End, expectedMission.End); } Assert.AreEqual(expectedResult[i].Id, result[i].Id); Assert.AreEqual(expectedResult[i].Name, result[i].Name); Assert.AreEqual(expectedResult[i].Text, result[i].Text); Assert.AreEqual(expectedResult[i].LastChanged, result[i].LastChanged); Assert.AreEqual(expectedResult[i].Created, result[i].Created); Assert.AreEqual(expectedResult[i].StereotypeId, result[i].StereotypeId); } } catch (ArgumentException) { Assert.IsTrue(expectedResultString == "ae"); } finally { server.Stop(); } }
public void InitializationTestParagraph(int id, int actionId, int noteId, string name, string text, string[] points, bool[] isCheckeds) { Random random = new Random(); DateTime created = DateTime.Now.AddDays(random.NextDouble() * -1); DateTime lastChanged = DateTime.Now; DateTime startT = new DateTime(random.Next()); DateTime endT = new DateTime(random.Next()); if (startT > endT) { DateTime t = startT; startT = endT; endT = t; } ServerRealization.Database.Context.User dbUser = new ServerRealization.Database.Context.User("Name", "Login", "Password", DateTime.Now); DBContext.Users.Add(dbUser); ServerRealization.Database.Context.Note dbNote = new ServerRealization.Database.Context.Note(noteId, dbUser, new ServerRealization.Database.Context.Collection(), name, text, created, lastChanged); DBContext.Notes.Add(dbNote); ServerRealization.Database.Context.Action dbAction = new ServerRealization.Database.Context.Action(actionId, dbNote, startT, endT); DBContext.Actions.Add(dbAction); ServerRealization.Database.Context.Collection dbParagraph = new ServerRealization.Database.Context.Collection(points.Length); DBContext.Collections.Add(dbParagraph); for (int i = 0; i < points.Length; ++i) { ServerRealization.Database.Context.Point dbPoint = new ServerRealization.Database.Context.Point(dbParagraph, points[i], isCheckeds[i]); DBContext.Points.Add(dbPoint); } ServerRealization.Database.Context.Mission dbMission = new ServerRealization.Database.Context.Mission(id, dbAction, false, dbParagraph); ParagraphMission mission = (ParagraphMission)Mission.CreateNew(dbMission.ToString()); Assert.AreEqual(id, mission.Id); Assert.AreEqual(actionId, mission.ActionId); Assert.AreEqual(noteId, mission.NoteId); Assert.AreEqual(name, mission.Name); Assert.AreEqual(text, mission.Text); Assert.AreEqual(points.Length, mission.Paragraph.Count); for (int i = 0; i < mission.Paragraph.Count; ++i) { Assert.AreEqual(points[i], mission.Paragraph.Items[i].Text); Assert.AreEqual(isCheckeds[i], mission.Paragraph.Items[i].IsChecked); } if (created > mission.Created) { Assert.IsTrue((created - mission.Created).TotalSeconds < 1); } else if (mission.Created > created) { Assert.IsTrue((mission.Created - created).TotalSeconds < 1); } if (lastChanged > mission.LastChanged) { Assert.IsTrue((lastChanged - mission.LastChanged).TotalSeconds < 1); } else if (mission.LastChanged > lastChanged) { Assert.IsTrue((mission.LastChanged - lastChanged).TotalSeconds < 1); } if (startT > mission.Start) { Assert.IsTrue((startT - mission.Start).TotalSeconds < 1); } else if (mission.Start > startT) { Assert.IsTrue((mission.Start - startT).TotalSeconds < 1); } if (endT > mission.End) { Assert.IsTrue((endT - mission.End).TotalSeconds < 1); } else if (mission.End > endT) { Assert.IsTrue((mission.End - endT).TotalSeconds < 1); } }