public void VersionApp_Delete_Post_Null_Data_Should_Return_Error()
        {
            // Arrange
            var controller = new VersionAppController();

            // Act
            var result = controller.DeleteConfirmed(null) as RedirectToActionResult;

            // Assert
            Assert.AreEqual("Error", result.ActionName);
        }
        public void VersionApp_Delete_Post_Invalid_Model_Should_Send_Back_For_Edit()
        {
            // Arrange
            var controller = new VersionAppController();
            var data       = new VersionAppModel();

            // Make ModelState Invalid
            controller.ModelState.AddModelError("test", "test");

            // Act
            var result = controller.DeleteConfirmed(data.ID) as NotFoundResult;

            // Assert
            Assert.AreEqual(404, result.StatusCode);
        }
        public void VersionApp_Delete_Post_Empty_Id_Should_Send_Back_For_Edit()
        {
            // Arrange
            var             controller = new VersionAppController();
            VersionAppModel dataEmpty  = new VersionAppModel
            {
                // Make data.Id empty
                ID = ""
            };

            // Act
            var result = controller.DeleteConfirmed(dataEmpty.ID) as RedirectToActionResult;

            // Assert
            Assert.AreEqual("Error", result.ActionName);
        }
        public void VersionApp_Delete_Post_Valid_Should_Delete()
        {
            // Arrange
            var controller = new VersionAppController();

            // Get default student
            var data = BiliWeb.Backend.DataSourceBackend.Instance.VersionAppBackend.Index().FirstOrDefault();

            // Act
            var result    = controller.DeleteConfirmed(data.ID) as ViewResult;
            var dataExist = BiliWeb.Backend.DataSourceBackend.Instance.VersionAppBackend.Read(data.ID);

            // Reset
            BiliWeb.Backend.DataSourceBackend.Instance.Reset();

            // Assert
            Assert.IsNull(dataExist);
        }
        public void VersionApp_Delete_Post_Default_Should_Return_Index_Page()
        {
            // Arrange
            var controller = new VersionAppController();

            // Get default student
            var             defaultData = BiliWeb.Backend.DataSourceBackend.Instance.VersionAppBackend.Index().FirstOrDefault();
            VersionAppModel data        = new VersionAppModel(defaultData);

            // Act
            var result = controller.DeleteConfirmed(data.ID) as NotFoundResult;

            // Reset
            BiliWeb.Backend.DataSourceBackend.Instance.Reset();

            // Assert
            Assert.AreEqual(404, result.StatusCode);
        }