diff --git a/README.md b/README.md index 9e47c30..457d3d4 100644 --- a/README.md +++ b/README.md @@ -59,3 +59,12 @@ In `app/Http/Controllers/UserController.php` file method `check_create()`, find Test method `test_check_or_create_user()`. +--- + +## Task 5. Create a New Record. + +In `app/Http/Controllers/ProjectController.php` file method `store()`, creating the project will fail. Fix the underlying issue, to make it work. + +Test method `test_create_project()`. + +--- diff --git a/app/Http/Controllers/ProjectController.php b/app/Http/Controllers/ProjectController.php new file mode 100644 index 0000000..53782b6 --- /dev/null +++ b/app/Http/Controllers/ProjectController.php @@ -0,0 +1,19 @@ + $request->name + ]); + + return redirect('/')->with('success', 'Project created'); + } +} diff --git a/app/Models/Project.php b/app/Models/Project.php new file mode 100644 index 0000000..1034631 --- /dev/null +++ b/app/Models/Project.php @@ -0,0 +1,11 @@ +id(); + $table->string('name'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('projects'); + } +} diff --git a/routes/web.php b/routes/web.php index 5175dea..9a5a0c4 100644 --- a/routes/web.php +++ b/routes/web.php @@ -2,6 +2,7 @@ use Illuminate\Support\Facades\Route; use App\Http\Controllers\UserController; +use App\Http\Controllers\ProjectController; /* |-------------------------------------------------------------------------- @@ -21,3 +22,5 @@ Route::get('/', function () { Route::get('users', [UserController::class, 'index']); Route::get('users/{userId}', [UserController::class, 'show']); Route::get('users/check/{name}/{email}', [UserController::class, 'check_create']); + +Route::post('projects', [ProjectController::class, 'store']); diff --git a/tests/Feature/EloquentTest.php b/tests/Feature/EloquentTest.php index fe5b082..80bcef8 100644 --- a/tests/Feature/EloquentTest.php +++ b/tests/Feature/EloquentTest.php @@ -69,4 +69,9 @@ class EloquentTest extends TestCase $this->assertDatabaseCount('users', 1); } + public function test_create_project() { + $response = $this->post('projects', ['name' => 'Some name']); + $response->assertRedirect(); + } + }