68 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			68 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| namespace Tests\Feature\Common;
 | |
| 
 | |
| use App\Jobs\Auth\NotifyUser;
 | |
| use App\Notifications\Common\ImportCompleted;
 | |
| use Cache;
 | |
| use Date;
 | |
| use Illuminate\Support\Str;
 | |
| use Tests\Feature\FeatureTestCase;
 | |
| 
 | |
| class NotificationsTest extends FeatureTestCase
 | |
| {
 | |
|     public function testItShouldSeeNotificationListPage()
 | |
|     {
 | |
|         $this->loginAs()
 | |
|             ->get(route('notifications.index'))
 | |
|             ->assertStatus(200)
 | |
|             ->assertSeeText(trans_choice('general.items', 2));
 | |
|     }
 | |
| 
 | |
|     public function testItShouldSeeReadAllAction()
 | |
|     {
 | |
|         $this->loginAs()
 | |
|             ->get(route('notifications.read-all'))
 | |
|             ->assertStatus(302);
 | |
| 
 | |
|         $this->assertFlashLevel('success');
 | |
|     }
 | |
| 
 | |
|     public function testItShouldSeeDisableAction()
 | |
|     {
 | |
|         $this->loginAs()
 | |
|             ->post(route('notifications.disable'), ['path' => 'double-entry', 'id' => 1])
 | |
|             ->assertOk()
 | |
|             ->assertSeeText(trans('messages.success.disabled', [
 | |
|                 'type' => Str::lower(trans_choice('general.notifications', 2))
 | |
|             ]));
 | |
|     }
 | |
| 
 | |
|     public function testItShouldSeeNewApps()
 | |
|     {
 | |
|         $notificatinos = $this->getNewApps();
 | |
| 
 | |
|         $this->loginAs()
 | |
|             ->get(route('notifications.index'))
 | |
|             ->assertOk()
 | |
|             ->assertSeeText('Double-Entry');
 | |
|     }
 | |
| 
 | |
|     protected function getNewApps()
 | |
|     {
 | |
|         $new_apps[] = (object) [
 | |
|             "name" => "Double-Entry",
 | |
|             "alias" => "double-entry",
 | |
|             "message" => "<a href=\"https:\/\/akaunting.com\/apps\/double-entry?utm_source=Notifications&utm_medium=App&utm_campaign=Double-Entry\" target=\"_blank\">Double-Entry<\/a> app is published. You can check it out!",
 | |
|             "path" =>"new-apps",
 | |
|             "started_at" => "2021-06-26 00:00:00",
 | |
|             "ended_at" => "2021-07-11 00:00:00",
 | |
|             "status" => 2,
 | |
|         ];
 | |
| 
 | |
|         $key = 'apps.notifications';
 | |
| 
 | |
|         Cache::put($key, ['new-apps' => $new_apps], Date::now()->addHour(6));
 | |
|     }
 | |
| }
 |