public void ShouldInsertPeoples() { // Given var db = new DataBaseMicrosoft(DataBasesTypes.MicrosoftAccess, TestHelper.CreateTempFile()); var peoples = new[] { new People("Акакий", "Программист"), new People("Генка", "Плотник") }; var expected = new[] { new People("Иванов Иван", "Плотник"), new People("Князь Владимир", "Программист"), new People("Петров Петр", "Плотник"), new People("Клинт Бартон", "Программист"), new People("Акакий", "Программист"), new People("Генка", "Плотник") }; // When foreach (var people in peoples) { db.ExecuteCommand(Parameters.Insert, people); } var actual = db.GetElements<People>(); TestHelper.DeleteTemp(); // Then Assert.AreEqual(expected.Length, actual.Length); Assert.IsInstanceOf<People>(actual[0]); CollectionAssert.AreEqual(expected, actual); }
public void ShouldInsertTests() { // Given var db = new DataBaseMicrosoft(DataBasesTypes.MicrosoftAccess, TestHelper.CreateTempFile()); var test = new Test("Пробный Тест", 70); var questions = new[] { new Question("Вопрос 1"), new Question("Вопрос 2") }; var expected = new[] { new Test("Первый тест", 100), new Test("Пробный Тест", 70) }; // When test.SetQuestions(questions); test.SetComponent(new Component("", 1)); questions[0].SetAssessments(new Assessments()); questions[1].SetAssessments(new Assessments()); var status = db.ExecuteCommand(Parameters.Insert, test); var actual = db.GetElements<Test>(); db.FillElement(actual[1]); TestHelper.DeleteTemp(); // Then Assert.AreEqual(0, status.ExitCode); Assert.IsNull(status.ErrorMessage); Assert.AreEqual(expected.Length, actual.Length); Assert.IsInstanceOf<Test>(actual[0]); CollectionAssert.AreEqual(expected, actual); CollectionAssert.AreEqual(questions, actual[1].Questions); }
public void Execute(Dictionary<string, List<string[]>> dictionary) { const string nameTest = nameof(GroupTest); dictionary[nameTest].Add(new[] { "Group count", "People count" }); var goupCounts = new[] { 5, 10, 50 }; var peopleCounts = new[] { 5, 50, 100 }; foreach (var goupCount in goupCounts) { foreach (var peopleCount in peopleCounts) { var db = new DataBaseMicrosoft(DataBasesTypes.MicrosoftAccess, TestHelper.CreateTempFile()); var watch = new Stopwatch(); var position = Guid.NewGuid().ToString(); var groups = GenerateGroupsWithPeoples(goupCount, peopleCount, position); db.CleanDataBase(); db.InsertPosition(position); watch.Start(); foreach (var group in groups) { db.ExecuteCommand(Parameters.Insert, group); } watch.Stop(); dictionary[nameTest].Add(new[] { $"{goupCount}", $"{peopleCount}", $"{watch.Elapsed.TotalMilliseconds}" }); } } }
public void ShouldInsertComponent() { // Given var db = new DataBaseMicrosoft(DataBasesTypes.MicrosoftAccess, TestHelper.CreateTempFile()); var generalComponents = new[] { new Component("ОбщийКомпонент№1"), new Component("ОбщийКомпонент№2"), new Component("ОбщийКомпонент№3") }; var component = new Component("Компонент1Уровня") { Components = { new Component("Компонент2Уровня№1") { Components = { new Component("Компонент3Уровня№1") { Components = { generalComponents[0], generalComponents[1], generalComponents[2] } }, new Component("Компонент3Уровня№2") { Components = { generalComponents[0], generalComponents[1], generalComponents[2] } } } } } }; // When db.ExecuteCommand(Parameters.Insert, component); var actual = db.GetElements<Component>().Last(); db.FillElement(actual); TestHelper.DeleteTemp(); // Then // Top Level Assert.AreEqual(component, actual); // 2 Level Assert.AreEqual(component.Components[0], actual.Components[0]); // 3 Level Assert.AreEqual(component.Components[0].Components[0], actual.Components[0].Components[0]); Assert.AreEqual(component.Components[0].Components[1], actual.Components[0].Components[1]); // General Assert.AreEqual(component.Components[0].Components[0].Components[0], actual.Components[0].Components[0].Components[0]); Assert.AreEqual(component.Components[0].Components[0].Components[1], actual.Components[0].Components[0].Components[1]); Assert.AreEqual(component.Components[0].Components[0].Components[2], actual.Components[0].Components[0].Components[2]); Assert.AreEqual(component.Components[0].Components[1].Components[0], actual.Components[0].Components[1].Components[0]); Assert.AreEqual(component.Components[0].Components[1].Components[1], actual.Components[0].Components[1].Components[1]); Assert.AreEqual(component.Components[0].Components[1].Components[2], actual.Components[0].Components[1].Components[2]); }