public void TestGetTodoItemById()
        {
            TodoSqlDal todoSqlDal = new TodoSqlDal(connectionString);
            Todo       todo       = todoSqlDal.GetTodoItemById(1);

            Assert.AreEqual(1, todo.Id);
        }
        public void TestGetAllTodosIsDeleted()
        {
            TodoSqlDal   todoSqlDal = new TodoSqlDal(connectionString);
            IList <Todo> todoItems  = todoSqlDal.GetAllTodoItems();

            Assert.AreEqual(false, todoItems[0].IsDeleted);
        }
        public void TestGetAllTodosText()
        {
            TodoSqlDal   todoSqlDal = new TodoSqlDal(connectionString);
            IList <Todo> todoItems  = todoSqlDal.GetAllTodoItems();

            Assert.AreEqual("test1", todoItems[0].TodoText);
        }
        public void TestDeleteTodoItemByRowsDeleted()
        {
            TodoSqlDal todoSqlDal  = new TodoSqlDal(connectionString);
            int        rowsDeleted = todoSqlDal.DeleteTodoItem(1);

            Assert.AreEqual(1, rowsDeleted);
        }
        public void TestDeleteTodoItemByRowsRemaining()
        {
            TodoSqlDal todoSqlDal = new TodoSqlDal(connectionString);

            _ = todoSqlDal.DeleteTodoItem(1);
            int rowsRemaining = GetRowCount("TodoItems");

            Assert.AreEqual(3, rowsRemaining);
        }
        public void TestCreateTodoItem()
        {
            TodoSqlDal todoSqlDal = new TodoSqlDal(connectionString);
            Todo       todo       = new Todo
            {
                TodoText    = "test5",
                IsCompleted = true,
                IsDeleted   = true
            };

            _ = todoSqlDal.CreateTodoItem(todo);

            Assert.AreEqual(5, GetRowCount("TodoItems"));
        }
        public void TestUpdateTodoItem()
        {
            TodoSqlDal todoSqlDal = new TodoSqlDal(connectionString);
            Todo       todo       = todoSqlDal.GetTodoItemById(1);

            // making sure we have the correct original value in the database.
            Assert.AreEqual("test1", todo.TodoText);

            todo.TodoText = "updated test1";

            // getting the new value, but we don't need it so we can discard.
            _ = todoSqlDal.UpdateTodoItem(todo);

            todo = todoSqlDal.GetTodoItemById(1);

            // making sure that we have to updated value in the database.
            Assert.AreEqual("updated test1", todo.TodoText);
        }