mirror of
https://github.com/VueFileManager/vuefilemanager.git
synced 2026-05-30 07:44:41 +00:00
added it_send_contact_form test
This commit is contained in:
@@ -1,4 +1,3 @@
|
|||||||
/app/Console/Commands/SetupDevEnvironment.php
|
|
||||||
/node_modules
|
/node_modules
|
||||||
/public/hot
|
/public/hot
|
||||||
/public/storage
|
/public/storage
|
||||||
|
|||||||
@@ -3,13 +3,13 @@
|
|||||||
namespace App\Http\Controllers;
|
namespace App\Http\Controllers;
|
||||||
|
|
||||||
use App;
|
use App;
|
||||||
|
use App\Http\Mail\SendContactMessage;
|
||||||
use App\Models\Content;
|
use App\Models\Content;
|
||||||
use App\Models\File;
|
use App\Models\File;
|
||||||
use App\Models\Folder;
|
use App\Models\Folder;
|
||||||
use App\Http\Requests\PublicPages\SendMessageRequest;
|
use App\Http\Requests\PublicPages\SendContactMessageRequest;
|
||||||
use App\Http\Resources\PageResource;
|
use App\Http\Resources\PageResource;
|
||||||
use App\Http\Tools\Demo;
|
use App\Http\Tools\Demo;
|
||||||
use App\Mail\SendSupportForm;
|
|
||||||
use App\Models\Setting;
|
use App\Models\Setting;
|
||||||
use App\Models\Page;
|
use App\Models\Page;
|
||||||
use App\Models\User;
|
use App\Models\User;
|
||||||
@@ -157,18 +157,18 @@ class AppFunctionsController extends Controller
|
|||||||
/**
|
/**
|
||||||
* Send contact message from pages
|
* Send contact message from pages
|
||||||
*
|
*
|
||||||
* @param SendMessageRequest $request
|
* @param SendContactMessageRequest $request
|
||||||
* @return \Illuminate\Contracts\Routing\ResponseFactory|\Illuminate\Http\Response
|
* @return \Illuminate\Contracts\Routing\ResponseFactory|\Illuminate\Http\Response
|
||||||
*/
|
*/
|
||||||
public function contact_form(SendMessageRequest $request)
|
public function contact_form(SendContactMessageRequest $request)
|
||||||
{
|
{
|
||||||
// Get receiver email
|
Mail::to(
|
||||||
$receiver = Setting::where('name', 'contact_email')->first();
|
get_setting('contact_email')
|
||||||
|
)->send(
|
||||||
|
new SendContactMessage($request->all())
|
||||||
|
);
|
||||||
|
|
||||||
// Send message
|
return response('Done', 201);
|
||||||
Mail::to($receiver->value)->send(new SendSupportForm($request->all()));
|
|
||||||
|
|
||||||
return response('Done', 200);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ use Illuminate\Contracts\Queue\ShouldQueue;
|
|||||||
use Illuminate\Mail\Mailable;
|
use Illuminate\Mail\Mailable;
|
||||||
use Illuminate\Queue\SerializesModels;
|
use Illuminate\Queue\SerializesModels;
|
||||||
|
|
||||||
class SendSupportForm extends Mailable
|
class SendContactMessage extends Mailable
|
||||||
{
|
{
|
||||||
use Queueable, SerializesModels;
|
use Queueable, SerializesModels;
|
||||||
private $request;
|
private $request;
|
||||||
@@ -29,9 +29,7 @@ class SendSupportForm extends Mailable
|
|||||||
*/
|
*/
|
||||||
public function build()
|
public function build()
|
||||||
{
|
{
|
||||||
$from = config('mail.from')['address'];
|
return $this->from(config('mail.from')['address'])
|
||||||
|
|
||||||
return $this->from($from)
|
|
||||||
->replyTo($this->request['email'])
|
->replyTo($this->request['email'])
|
||||||
->subject('New Contact Message from ' . $this->request['email'])
|
->subject('New Contact Message from ' . $this->request['email'])
|
||||||
->view('mails.contact-message')
|
->view('mails.contact-message')
|
||||||
+1
-1
@@ -4,7 +4,7 @@ namespace App\Http\Requests\PublicPages;
|
|||||||
|
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
|
|
||||||
class SendMessageRequest extends FormRequest
|
class SendContactMessageRequest extends FormRequest
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* Determine if the user is authorized to make this request.
|
* Determine if the user is authorized to make this request.
|
||||||
@@ -2,10 +2,15 @@
|
|||||||
|
|
||||||
namespace Tests\Feature\App;
|
namespace Tests\Feature\App;
|
||||||
|
|
||||||
|
use App\Http\Mail\SendContactMessage;
|
||||||
|
use App\Models\Setting;
|
||||||
|
use App\Notifications\SharedSendViaEmail;
|
||||||
use App\Services\SetupService;
|
use App\Services\SetupService;
|
||||||
use Illuminate\Foundation\Testing\DatabaseMigrations;
|
use Illuminate\Foundation\Testing\DatabaseMigrations;
|
||||||
use Illuminate\Foundation\Testing\RefreshDatabase;
|
use Illuminate\Foundation\Testing\RefreshDatabase;
|
||||||
use Illuminate\Foundation\Testing\WithFaker;
|
use Illuminate\Foundation\Testing\WithFaker;
|
||||||
|
use Illuminate\Support\Facades\Notification;
|
||||||
|
use Mail;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
|
|
||||||
class AppTest extends TestCase
|
class AppTest extends TestCase
|
||||||
@@ -30,4 +35,25 @@ class AppTest extends TestCase
|
|||||||
$this->get('/')
|
$this->get('/')
|
||||||
->assertStatus(200);
|
->assertStatus(200);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @test
|
||||||
|
*/
|
||||||
|
public function it_send_contact_form()
|
||||||
|
{
|
||||||
|
Mail::fake();
|
||||||
|
|
||||||
|
Setting::create([
|
||||||
|
'name' => 'contact_email',
|
||||||
|
'value' => 'jane@doe.com',
|
||||||
|
]);
|
||||||
|
|
||||||
|
$this->postJson('/api/contact', [
|
||||||
|
'email' => 'john@doe.com',
|
||||||
|
'message' => 'Whaats is up!',
|
||||||
|
])
|
||||||
|
->assertStatus(201);
|
||||||
|
|
||||||
|
Mail::assertSent( SendContactMessage::class);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user