Пример #1
0
 [HttpGet("Return_Task4")]//Задание №4 - Где живет самый богатый человек
 public IActionResult ReturnSqlLiteTask4()
 {
     using (connection)
     {
         connection.Open();
         using (var command = new SQLiteCommand(connection))
         {
             CreateSql(command);
             string readQuery   = "SELECT Prog_TestPeople.PPL_NAME AS name, Prog_TestPeople.PPL_PPL_CODE AS code, max(Prog_TestBlnc.BLNC_OSTATOK) AS ostatok, Prog_TestAddres.ADDR_CITY, Prog_TestAddres.ADDR_STREET, Prog_TestAddres.ADDR_HOUSE, Prog_TestAddres.ADDR_FLAT, Prog_TestBlnc.BLNC_ACCNT_CODE AS accnt_code FROM Prog_TestPeople INNER JOIN Prog_TestBlnc, Prog_TestAccnt, Prog_TestAddres ON Prog_TestPeople.PPL_CODE = Prog_TestAccnt.ACCNT_PPL_CODE AND Prog_TestAccnt.ACCNT_CODE  =  Prog_TestBlnc.BLNC_ACCNT_CODE AND Prog_TestPeople.PPL_CODE = Prog_TestAddres.ADDR_PPL_CODE ORDER BY Prog_TestPeople.PPL_NAME, Prog_TestPeople.PPL_PPL_CODE";
             var    returnArray = new Task3[4];
             command.CommandText = readQuery;
             using (SQLiteDataReader reader = command.ExecuteReader())
             {
                 var counter = 0;
                 while (reader.Read())
                 {
                     returnArray[counter] = new Task3
                     {
                         PPL_NAME        = reader.GetValue(0).ToString(),
                         PPL_PPL_CODE    = reader.GetInt32(1),
                         BLNC_OSTATOK    = reader.GetInt32(2),
                         ADDR_CITY       = reader.GetValue(3).ToString(),
                         ADDR_STREET     = reader.GetValue(4).ToString(),
                         ADDR_HOUSE      = reader.GetValue(5).ToString(),
                         ADDR_FLAT       = reader.GetValue(6).ToString(),
                         BLNC_ACCNT_CODE = reader.GetInt32(7)
                     };
                     counter++;
                 }
             }
             return(Ok(returnArray));
         }
     }
 }
Пример #2
0
        static void Main(string[] args)
        {
            next();
            { Task3 task = new Task3(); }

            next();
        }
Пример #3
0
        private static void DoTask3()
        {
            var list   = new List <string>();
            var random = new Random();

            for (int i = 0; i < 101; i++)
            {
                list.Add(Task3.GenerateString(random));
            }

            Console.WriteLine("Amount before changes: " + list.Count);
            Task3.Sort(ref list);
            Task3.DeleteSameInSortedList(ref list);
            Task3.DeleteStartsWithZ(ref list);
            Console.WriteLine("Amount after changes: " + list.Count);
            Console.WriteLine("Enter number of page:");
            int page;

            if (!int.TryParse(Console.ReadLine(), out page))
            {
                Environment.Exit(0);
            }

            Task3.DisplayPage(ref list, page);
        }
Пример #4
0
        static void Main(string[] args)
        {
Menu:
            int Menu_args;

            Console.WriteLine("Меню: \n");
            Console.WriteLine("1. Информация о дисках:");
            Console.WriteLine("2. Создание .txt файла:");
            Console.WriteLine("3. XML Файлы:");
            Console.WriteLine("4. JSON Файлы:");
            Console.WriteLine("5. ZIP - файлы:");
            Console.WriteLine("0. Выйти");
            Menu_args = Convert.ToInt32(Console.ReadLine());
            switch (Menu_args)
            {
            case 1: Task1.Main(); goto Menu;

            case 2: Task2.Main(); goto Menu;

            case 3: Task3.Main(); goto Menu;

            case 4: Task4.Main(); goto Menu;

            case 5: Task5.Main(); goto Menu;

            case 0: break;

            default: goto Menu;
            }
        }
Пример #5
0
        public void TestWithFiles()
        {
            string inputFolder = System.IO.Path.GetTempPath() + System.IO.Path.PathSeparator
                                 + Guid.NewGuid().ToString() + System.IO.Path.PathSeparator + "MyFolder";

            Directory.CreateDirectory(inputFolder);
            Directory.CreateDirectory(inputFolder + Path.PathSeparator + "a");
            File.Create(inputFolder + Path.PathSeparator + "a" + Path.PathSeparator + "a.txt");

            Directory.CreateDirectory(inputFolder + Path.PathSeparator + "a" + Path.PathSeparator + "b");
            File.Create(inputFolder + Path.PathSeparator + "a" + Path.PathSeparator + "b" + Path.PathSeparator + "b.txt");

            Directory.CreateDirectory(inputFolder + Path.PathSeparator + "a" + Path.PathSeparator + "b" + Path.PathSeparator + "c");
            Directory.CreateDirectory(inputFolder + Path.PathSeparator + "a" + Path.PathSeparator + "b" + Path.PathSeparator + "c" + Path.PathSeparator + "c.txt");

            Task3  t              = new Task3();
            string output         = t.readDirectory(inputFolder);
            string expectedOutput = "MyFolder" +
                                    "\ta" +
                                    "\t\ta.txt" +
                                    "\t\tb" +
                                    "\t\t\tb.txt" +
                                    "\t\t\tc" +
                                    "\t\t\t\tc.txt";

            Assert.AreEqual(expectedOutput, output);

            clearFolder(inputFolder);
        }
        public void Paged3()
        {
            for (int x = 0; x < 100; ++x)
            {
                Task3 TempTask = new Task3();
                TempTask.Description = "This is a test";
                TempTask.DueDate     = new DateTime(1900, 1, 1);
                TempTask.Name        = "Test task";
                TempTask.Save();
            }

            IEnumerable <Task3> TestObject = Task3.PagedCommand("SELECT * FROM Task3_ WHERE ID_>@ID", "", 25, 0, new EqualParameter <long>(50, "ID"));

            Assert.Equal(25, TestObject.Count());
            foreach (Task3 TestTask in TestObject)
            {
                Assert.InRange(TestTask.ID, 51, 75);
            }

            TestObject = Task3.PagedCommand("SELECT * FROM Task3_ WHERE ID_>@ID", "", 25, 1, new EqualParameter <long>(50, "ID"));
            Assert.Equal(25, TestObject.Count());
            foreach (Task3 TestTask in TestObject)
            {
                Assert.InRange(TestTask.ID, 76, 100);
            }

            TestObject = Task3.PagedCommand("SELECT * FROM Task3_ WHERE ID_>@ID", "", 25, 2, new EqualParameter <long>(50, "ID"));
            Assert.Equal(0, TestObject.Count());

            Assert.Equal(2, Task3.PageCount("SELECT * FROM Task3_ WHERE ID_>@ID", 25, new EqualParameter <long>(50, "ID")));
        }
Пример #7
0
 public static void Main(string[] args)
 {
     Task3.ExecuteTask();
     Task4.ExecuteTask();
     Task5.ExecuteTask();
     Task6.ExecuteTask();
 }
        static void Main(string[] args)
        {
            Console.WriteLine("Task2:");
            Console.WriteLine("ProductListWithCategoryAndSuppliers:");
            Task2.ProductListWithCategoryAndSuppliers();

            Console.WriteLine();
            Console.WriteLine("EmployeeListWithRegion:");
            Task2.EmployeeListWithRegion();

            Console.WriteLine();
            Console.WriteLine("EmployeeCountForRegion:");
            Task2.EmployeeCountForRegion();

            Console.WriteLine();
            Console.WriteLine("EmployeeListWithOrders:");
            Task2.EmployeeListWithOrders();

            Console.WriteLine();
            Console.WriteLine("Task3:");
            Console.WriteLine("AddNewEmployeeWithTerritories");
            Task3.AddNewEmployeeWithTerritories();

            Console.WriteLine();
            Console.WriteLine("MoveProductsToAnotherCategory");
            Task3.MoveProductsToAnotherCategory();

            Console.WriteLine();
            Console.WriteLine("AddProducts");
            Task3.AddProducts();

            Console.WriteLine();
            Console.WriteLine("ReplaceProductWithAnalog");
            Task3.ReplaceProductWithAnalog();
        }
Пример #9
0
        public void TestMethod4()
        {
            var list = new List <MaterialEntry>();

            list.Add(new MaterialEntry()
            {
                ComponetId = 3,
                Quantity   = 2
            }
                     );

            list.Add(new MaterialEntry()
            {
                ComponetId = 2,
                Quantity   = 3
            }
                     );

            bool res = Task3.IsPossibleManufacturer(200, list.ToArray());

            if (res != true)
            {
                Assert.Fail();
            }
        }
Пример #10
0
 // Update is called once per frame
 void Update()
 {
     TaskCompleted = Click_Interact.RemoveTask;
     if (TaskCompleted == 1)
     {
         Task1.SetActive(false);
     }
     if (TaskCompleted == 2)
     {
         Task2.SetActive(false);
     }
     if (TaskCompleted == 3)
     {
         Task3.SetActive(false);
     }
     if (TaskCompleted == 4)
     {
         Task4.SetActive(false);
     }
     if (TaskCompleted == 5)
     {
         Task1.SetActive(false);
         Task2.SetActive(false);
         Task3.SetActive(false);
         Task4.SetActive(false);
         Task5.SetActive(true);
     }
 }
        public void Save()
        {
            Task3 TempTask = new Task3();

            TempTask.Description = "This is a test";
            TempTask.DueDate     = new DateTime(1900, 1, 1);
            TempTask.Name        = "Test task";

            List <Task3> Tasks   = new List <Task3>();
            Task3        SubTask = new Task3();

            SubTask.Description = "This is a test";
            SubTask.DueDate     = new DateTime(1900, 1, 1);
            SubTask.Name        = "Sub task 1";
            Tasks.Add(SubTask);
            SubTask             = new Task3();
            SubTask.Description = "This is a test";
            SubTask.DueDate     = new DateTime(1900, 1, 1);
            SubTask.Name        = "Sub task 3";
            Tasks.Add(SubTask);
            SubTask             = new Task3();
            SubTask.Description = "This is a test";
            SubTask.DueDate     = new DateTime(1900, 1, 1);
            SubTask.Name        = "Sub task 3";
            Tasks.Add(SubTask);

            TempTask.SubTasks = Tasks;
            Project3 TestProject = new Project3();

            TestProject.ID   = "A";
            TestProject.Name = "Test Project";
            List <Task3> Tasks3 = new List <Task3>();

            Tasks3.Add(TempTask);
            TestProject.Tasks = Tasks3;
            TestProject.Save();
            using (Utilities.SQL.SQLHelper Helper = new Utilities.SQL.SQLHelper("SELECT * FROM Project3_", CommandType.Text, "Data Source=localhost;Initial Catalog=ORMTestDatabase3;Integrated Security=SSPI;Pooling=false"))
            {
                Helper.ExecuteReader();
                if (Helper.Read())
                {
                    Assert.Equal("", Helper.GetParameter <string>("Description_", ""));
                    Assert.Equal("Test Project", Helper.GetParameter <string>("Name_", ""));
                }
                else
                {
                    Assert.False(true, "Nothing was inserted");
                }
            }
            using (Utilities.SQL.SQLHelper Helper = new Utilities.SQL.SQLHelper("SELECT * FROM Task3_", CommandType.Text, "Data Source=localhost;Initial Catalog=ORMTestDatabase3;Integrated Security=SSPI;Pooling=false"))
            {
                Helper.ExecuteReader();
                while (Helper.Read())
                {
                    Assert.Equal("This is a test", Helper.GetParameter <string>("Description_", ""));
                    Assert.Contains(Helper.GetParameter <string>("Name_", ""), new string[] { "Sub task 1", "Sub task 3", "Sub task 3", "Test task" });
                }
            }
        }
        static void Main(string[] args)
        {
            Func <Task3, string> TaskSolver = task =>
            {
                // Your solution goes here
                // You can get all needed inputs from task.[Property]
                // Good luck!
                string UserLongitude = task.UserLongitude;
                string UserLatitude  = task.UserLatitude;
                int    placesAmount  = task.DefibliratorStorages.Length;

                bool isParseable = float.TryParse(UserLongitude.Replace(',', '.'), out float userLongitude);
                isParseable &= float.TryParse(UserLatitude.Replace(',', '.'), out float userLatitude);
                if (!isParseable)
                {
                    return("Data error: User's Lattitude or Longitude can't be parsed");
                }

                float  minDistance = float.MaxValue;
                string result      = "";

                for (int i = 0; i < placesAmount; i++)
                {
                    string   defibliratorStorage = task.DefibliratorStorages[i];
                    string[] defibDescription    = defibliratorStorage.Split(';');
                    if (defibDescription.Length != 4)
                    {
                        return($"Data error {i}: Defiblirator desscription differs from expected");
                    }

                    string defibliratorName    = defibDescription[0];
                    string defibliratorAddress = defibDescription[1];

                    isParseable &= float.TryParse(defibDescription[2].Replace(',', '.'),
                                                  out float defibliratorLongitude);
                    isParseable &= float.TryParse(defibDescription[3].Replace(',', '.'),
                                                  out float defibliratorLatitude);

                    if (!isParseable)
                    {
                        return($"Data error {i}: Lattitude or Longitude can't be parsed");
                    }

                    float distance = CalculateDistance(defibliratorLongitude,
                                                       defibliratorLatitude,
                                                       userLongitude,
                                                       userLatitude);
                    if (distance < minDistance)
                    {
                        minDistance = distance;
                        result      = $"Name: {defibliratorName}; Address: {defibliratorAddress}";
                    }
                }

                return(result);
            };

            Task3.CheckSolver(TaskSolver);
        }
Пример #13
0
        public void Task3()
        {
            Dictionary <ArrayList, string> commands = new Dictionary <ArrayList, string>()
            {
                { new ArrayList()
                  {
                      3, 1200, 2, true
                  }, "Вы получите классик карту, вы получите скидку на машину" },
                { new ArrayList()
                  {
                      1, 1200, 2, true
                  }, "Вы не станите участником программы лояльности" },
                { new ArrayList()
                  {
                      2, 1200, 4, false
                  }, "Вы получите классик карту, вы не получите скидку на машину" },
                { new ArrayList()
                  {
                      2, 7000, 2, false
                  }, "Вы получите классик карту, вы не получите скидку на машину" },
                { new ArrayList()
                  {
                      15, 5000, 10, false
                  }, "Вы получите классик карту, вы не получите скидку на машину" },
                { new ArrayList()
                  {
                      15, 8000, 15, true
                  }, "Вы получите премиум карту, вы получите скидку на машину" },
                { new ArrayList()
                  {
                      8, 15000, 19, false
                  }, "Вы получите классик карту, вы не получите скидку на машину" },
                { new ArrayList()
                  {
                      8, 22000, 22, true
                  }, "Вы получите премиум карту, вы получите скидку на машину" },
                { new ArrayList()
                  {
                      8, 22000, 22, false
                  }, "Вы получите премиум карту, вы не получите скидку на машину" },
                { new ArrayList()
                  {
                      8, 22000, 18, true
                  }, "Вы получите премиум карту, вы получите скидку на машину" },
                { new ArrayList()
                  {
                      8, 22000, 18, false
                  }, "Вы получите премиум карту, вы не получите скидку на машину" }
            };

            Task3 task = new Task3();

            foreach (KeyValuePair <ArrayList, string> kvp in commands)
            {
                var param = kvp.Key;
                var res   = task.getResult(Convert.ToInt32(param[0]), Convert.ToInt32(param[1]), Convert.ToInt32(param[2]), Convert.ToBoolean(param[3]));
                Assert.AreEqual(res, kvp.Value);
            }
        }
Пример #14
0
        public void LengthIsFourTest()
        {
            var random = new Random();

            string test = Task3.GenerateString(random);

            Assert.AreEqual(4, test.Length);
        }
Пример #15
0
        public void LengthOfArrayExeptionTest()
        {
            double[] array = new double[] { 7.3, 8 };

            TestDelegate action = () => Task3.FindIndex(array);

            Assert.Throws <ArgumentException>(action);
        }
Пример #16
0
        public void FindNextBiggerNumberTimer_12_21()
        {
            int expected = 21;
            int actual   = Task3.FindNextBiggerNumberTimer(12, out long time);

            Console.WriteLine($"Time of execution: {time} ms");
            Assert.AreEqual(expected, actual);
        }
Пример #17
0
        public void FindNextBiggerNumberTimer_3456432_3462345()
        {
            int expected = 3462345;
            int actual   = Task3.FindNextBiggerNumberTimer(3456432, out long time);

            Console.WriteLine($"Time of execution: {time} ms");
            Assert.AreEqual(expected, actual);
        }
Пример #18
0
 public void TestTask3()
 {
     Assert.AreEqual(Task3.Solution(955), 4);
     Assert.AreEqual(Task3.Solution(877), 3);
     Assert.AreEqual(Task3.Solution(235980), 9); // here
     Assert.AreEqual(Task3.Solution(56173), 3);
     Assert.AreEqual(Task3.Solution(30307228), 5);
 }
Пример #19
0
 // Start is called before the first frame update
 void Start()
 {
     Task1.SetActive(true);
     Task2.SetActive(true);
     Task3.SetActive(true);
     Task4.SetActive(true);
     Task5.SetActive(false);
 }
Пример #20
0
        public void Test1()
        {
            int[] A = new int[] { 0, 4, -1, 0, 3 };
            int[] B = new int[] { 0, -2, 5, 0, 3 };

            Assert.AreEqual(Task3.Solution(A, B), 2);

            Assert.AreEqual(Task3.BestSolution(A, B), 2);
        }
Пример #21
0
        static void Main()
        {
            ITask task = new Task3();

            task.Run();

            Console.WriteLine("ok");
            Console.Read();
        }
Пример #22
0
        public void TestMethod2()
        {
            int res = Task3.GetStockSum();

            if (res != 82500)
            {
                Assert.Fail();
            }
        }
        public void FindNextBiggerNumber_GetTime_EqualExpected()
        {
            Task3 task3    = new Task3();
            long  number   = 20;
            long  expected = -1;
            long  actual   = task3.FindNextBiggerNumber(number);

            Assert.AreEqual(expected, actual);
            Assert.AreNotEqual(task3.Time, task3.Time2);
        }
Пример #24
0
        public void Fibonacci_inNegativeNumber_outException()
        {
            //arrange

            //actual
            Task3 task   = new Task3();
            int   actual = task.Fibonacci(-1);

            //assert
        }
Пример #25
0
        private void Reshenie_Click(object sender, EventArgs e)
        {
            Binary_Recording  br      = new Binary_Recording(Directory.GetCurrentDirectory() + "/Students.bin");
            List <BL_Student> student = br.Read();
            Task3             task3   = new Task3(student);
            int top = task3.Best_group();
            List <BL_Student> up_student = task3.BGL(top);

            FillDgv <BL_Student>(up_student, dataGridView1);
        }
Пример #26
0
        public void FindDivisionAndRemainderTest(int a, int b, int expectedDivision, int expectedRemainder)
        {
            double actualDivision;
            double actualRemainder;

            (actualDivision, actualRemainder) = Task3.FindDivisionAndRemainder(a, b);

            Assert.AreEqual(expectedDivision, actualDivision);
            Assert.AreEqual(expectedRemainder, actualRemainder);
        }
Пример #27
0
        static void Main(string[] args)
        {
            Func <Task3, string> TaskSolver = task =>
            {
                // Your solution goes here
                // You can get all needed inputs from task.[Property]
                // Good luck!
                string UserLongitude = task.UserLongitude;
                string UserLatitude  = task.UserLatitude;
                int    placesAmount  = task.DefibliratorStorages.Length;

                float.TryParse(UserLatitude, out float fUserLatitude);
                float.TryParse(UserLongitude, out float fUserLongitude);

                float distance = float.MaxValue;

                const float degreeToRadCoef = 0.0174533f;

                fUserLongitude *= degreeToRadCoef;
                fUserLatitude  *= degreeToRadCoef;

                string resName = "", resAddress = "";

                for (int i = 0; i < placesAmount; i++)
                {
                    string defibliratorStorage = task.DefibliratorStorages[i];

                    string[] defibliratorStorageArr = defibliratorStorage.Split(';');

                    float.TryParse(defibliratorStorageArr[2], out float lognitude);
                    float.TryParse(defibliratorStorageArr[3], out float latitude);

                    lognitude *= degreeToRadCoef;
                    latitude  *= degreeToRadCoef;

                    float x = (lognitude - fUserLongitude) * MathF.Cos((latitude + fUserLatitude) / 2);
                    float y = latitude - fUserLatitude;

                    float d = MathF.Sqrt(x * x + y * y) * 6371f;

                    if (d < distance)
                    {
                        distance   = d;
                        resName    = defibliratorStorageArr[0];
                        resAddress = defibliratorStorageArr[1];
                    }
                }
                string result = string.Format("Name: {0}; Address: {1}", resName, resAddress);
                System.Console.WriteLine(result);
                return(result);
            };

            Task3.CheckSolver(TaskSolver);
        }
Пример #28
0
        public void Test6()
        {
            var result = Task3.GetSum(new List <int> {
                -1, 1, -2, 2, -3, 3
            });

            if (result != 6)
            {
                Assert.Fail();
            }
        }
Пример #29
0
        public void Test5()
        {
            var result = Task3.GetSum(new List <int> {
                -3, -7, -20, 0
            });

            if (result != 0)
            {
                Assert.Fail();
            }
        }
Пример #30
0
        public void Test4()
        {
            var result = Task3.GetSum(new List <int> {
                100, 200, 300, 400
            });

            if (result != 1000)
            {
                Assert.Fail();
            }
        }
Пример #31
0
        static void Main()
        {
            int[] arr = {142,3432,4234,4,32,2332};
            long count = Task1.Compute(arr);

            int[,] matrix =
                {
                    {5222, 34, 34, 5, 23, 1},
                    {234, 543, 5345, 32, 2, 1}
                };
            Task2 calculate = new Task2();
            long counter = calculate.CalculateCount(matrix);

            Task3 calc = new Task3();
            long newCalculate = calc.CalcSum(matrix, 0);
        }
        public void All()
        {
            Task3 TempTask = new Task3();
            TempTask.Description = "This is a test";
            TempTask.DueDate = new DateTime(1900, 1, 1);
            TempTask.Name = "Test task";

            List<Task3> Tasks = new List<Task3>();
            Task3 SubTask = new Task3();
            SubTask.Description = "This is a test";
            SubTask.DueDate = new DateTime(1900, 1, 1);
            SubTask.Name = "Sub task 1";
            Tasks.Add(SubTask);
            SubTask = new Task3();
            SubTask.Description = "This is a test";
            SubTask.DueDate = new DateTime(1900, 1, 1);
            SubTask.Name = "Sub task 3";
            Tasks.Add(SubTask);
            SubTask = new Task3();
            SubTask.Description = "This is a test";
            SubTask.DueDate = new DateTime(1900, 1, 1);
            SubTask.Name = "Sub task 3";
            Tasks.Add(SubTask);

            TempTask.SubTasks = Tasks;
            Project3 TestProject = new Project3();
            TestProject.ID = "A";
            TestProject.Name = "Test Project";
            List<Task3> Tasks3 = new List<Task3>();
            Tasks3.Add(TempTask);
            TestProject.Tasks = Tasks3;
            TestProject.Save();

            IEnumerable<Task3> TestObject = Task3.All();
            foreach (Task3 TestTask in TestObject)
            {
                Assert.Contains(TestTask.Name, new string[] { "Sub task 1", "Sub task 3", "Sub task 3", "Test task" });
                Assert.Equal("This is a test", TestTask.Description);
                Assert.Equal(new DateTime(1900, 1, 1), TestTask.DueDate);
            }
        }
        public void Any()
        {
            Task3 TempTask = new Task3();
            TempTask.Description = "This is a test";
            TempTask.DueDate = new DateTime(1900, 1, 1);
            TempTask.Name = "Test task";

            List<Task3> Tasks = new List<Task3>();
            Task3 SubTask = new Task3();
            SubTask.Description = "This is a test";
            SubTask.DueDate = new DateTime(1900, 1, 1);
            SubTask.Name = "Sub task 1";
            Tasks.Add(SubTask);
            SubTask = new Task3();
            SubTask.Description = "This is a test";
            SubTask.DueDate = new DateTime(1900, 1, 1);
            SubTask.Name = "Sub task 3";
            Tasks.Add(SubTask);
            SubTask = new Task3();
            SubTask.Description = "This is a test";
            SubTask.DueDate = new DateTime(1900, 1, 1);
            SubTask.Name = "Sub task 3";
            Tasks.Add(SubTask);

            TempTask.SubTasks = Tasks;
            Project3 TestProject = new Project3();
            TestProject.ID = "A";
            TestProject.Name = "Test Project";
            List<Task3> Tasks3 = new List<Task3>();
            Tasks3.Add(TempTask);
            TestProject.Tasks = Tasks3;
            TestProject.Save();

            Project3 TestObject = Project3.Any(new StringEqualParameter(TestProject.ID, "ID_", 100));
            Assert.Equal(TestProject.ID, TestObject.ID);
            Assert.Equal(TestProject.Name, TestObject.Name);
            Assert.Equal(1, TestObject.Tasks.Count());
            Assert.Equal("Test task", TestObject.Tasks.First().Name);
            Assert.Equal("This is a test", TestObject.Tasks.First().Description);
            foreach (Task3 TestSubTask in TestObject.Tasks.First().SubTasks)
            {
                Assert.Equal(0, TestSubTask.SubTasks.Count());
                Assert.Contains(TestSubTask.Name, new string[] { "Sub task 1", "Sub task 3", "Sub task 3" });
                Assert.Equal("This is a test", TestSubTask.Description);
                Assert.Equal(new DateTime(1900, 1, 1), TestSubTask.DueDate);
            }
        }
        public void Update()
        {
            Task3 TempTask = new Task3();
            TempTask.Description = "This is a test";
            TempTask.DueDate = new DateTime(1900, 1, 1);
            TempTask.Name = "Test task";

            List<Task3> Tasks = new List<Task3>();
            Task3 SubTask = new Task3();
            SubTask.Description = "This is a test";
            SubTask.DueDate = new DateTime(1900, 1, 1);
            SubTask.Name = "Sub task 1";
            Tasks.Add(SubTask);
            SubTask = new Task3();
            SubTask.Description = "This is a test";
            SubTask.DueDate = new DateTime(1900, 1, 1);
            SubTask.Name = "Sub task 3";
            Tasks.Add(SubTask);
            SubTask = new Task3();
            SubTask.Description = "This is a test";
            SubTask.DueDate = new DateTime(1900, 1, 1);
            SubTask.Name = "Sub task 3";
            Tasks.Add(SubTask);

            TempTask.SubTasks = Tasks;
            Project3 TestProject = new Project3();
            TestProject.ID = "A";
            TestProject.Name = "Test Project";
            List<Task3> Tasks3 = new List<Task3>();
            Tasks3.Add(TempTask);
            TestProject.Tasks = Tasks3;
            TestProject.Save();
            TestProject.Name = "Test description3";
            TestProject.Save();
            using (Utilities.SQL.SQLHelper Helper = new Utilities.SQL.SQLHelper("SELECT * FROM Project3_", CommandType.Text, "Data Source=localhost;Initial Catalog=ORMTestDatabase3;Integrated Security=SSPI;Pooling=false"))
            {
                Helper.ExecuteReader();
                if (Helper.Read())
                {
                    Assert.Equal("", Helper.GetParameter<string>("Description_", ""));
                    Assert.Equal("Test description3", Helper.GetParameter<string>("Name_", ""));
                }
                else
                {
                    Assert.False(true, "Nothing was inserted");
                }
            }
            using (Utilities.SQL.SQLHelper Helper = new Utilities.SQL.SQLHelper("SELECT * FROM Task3_", CommandType.Text, "Data Source=localhost;Initial Catalog=ORMTestDatabase3;Integrated Security=SSPI;Pooling=false"))
            {
                Helper.ExecuteReader();
                while (Helper.Read())
                {
                    Assert.Equal("This is a test", Helper.GetParameter<string>("Description_", ""));
                    Assert.Contains(Helper.GetParameter<string>("Name_", ""), new string[] { "Sub task 1", "Sub task 3", "Sub task 3", "Test task" });
                }
            }
        }
        public void Paged3()
        {
            for (int x = 0; x < 100; ++x)
            {
                Task3 TempTask = new Task3();
                TempTask.Description = "This is a test";
                TempTask.DueDate = new DateTime(1900, 1, 1);
                TempTask.Name = "Test task";
                TempTask.Save();
            }

            IEnumerable<Task3> TestObject = Task3.PagedCommand("SELECT * FROM Task3_ WHERE ID_>@ID", "", 25, 0, new EqualParameter<long>(50, "ID"));
            Assert.Equal(25, TestObject.Count());
            foreach (Task3 TestTask in TestObject)
            {
                Assert.InRange(TestTask.ID, 51, 75);
            }

            TestObject = Task3.PagedCommand("SELECT * FROM Task3_ WHERE ID_>@ID", "", 25, 1, new EqualParameter<long>(50, "ID"));
            Assert.Equal(25, TestObject.Count());
            foreach (Task3 TestTask in TestObject)
            {
                Assert.InRange(TestTask.ID, 76, 100);
            }

            TestObject = Task3.PagedCommand("SELECT * FROM Task3_ WHERE ID_>@ID", "", 25, 2, new EqualParameter<long>(50, "ID"));
            Assert.Equal(0, TestObject.Count());

            Assert.Equal(2, Task3.PageCount("SELECT * FROM Task3_ WHERE ID_>@ID", 25, new EqualParameter<long>(50, "ID")));
        }
        public void Paged()
        {
            for (int x = 0; x < 100; ++x)
            {
                Task3 TempTask = new Task3();
                TempTask.Description = "This is a test";
                TempTask.DueDate = new DateTime(1900, 1, 1);
                TempTask.Name = "Test task";
                TempTask.Save();
            }

            IEnumerable<Task3> TestObject = Task3.Paged();
            Assert.Equal(25, TestObject.Count());
            foreach (Task3 TestTask in TestObject)
            {
                Assert.InRange(TestTask.ID, 1, 25);
            }

            TestObject = Task3.Paged(CurrentPage: 1);
            Assert.Equal(25, TestObject.Count());
            foreach (Task3 TestTask in TestObject)
            {
                Assert.InRange(TestTask.ID, 26, 50);
            }

            TestObject = Task3.Paged(CurrentPage: 2);
            Assert.Equal(25, TestObject.Count());
            foreach (Task3 TestTask in TestObject)
            {
                Assert.InRange(TestTask.ID, 51, 75);
            }

            TestObject = Task3.Paged(CurrentPage: 3);
            Assert.Equal(25, TestObject.Count());
            foreach (Task3 TestTask in TestObject)
            {
                Assert.InRange(TestTask.ID, 76, 100);
            }

            Assert.Equal(4, Task3.PageCount());
        }