mirror of
https://github.com/snipe/snipe-it.git
synced 2024-12-26 22:19:41 -08:00
46f5f21368
* Added “show fields in email” to custom fields * Added “show images in email” to settings * Added nicer HTML emails * Break notifications out into their own, instead of trying to mash them all together * Remove old notification for accessory checkout * Janky fix for #5076 - “The asset you have attempted to accept was not checked out to you” * Add method for image url for accessories * Added accessory checkout email blade * Make accessory email notification on checkout screen consistent with assets * Added native consumables notifications * Fixes for asset notification * Updated notification blades with correct-er fields * Updated notifications * License checkin notification - does not work yet Need to figure out whether the license seat is assigned to a person or an asset before we can pass the target * Added alternate “cc” email for admins * Only try to trigger notifications if the target is a user * Fix tests * Fixed consumable URL * Removed unused notification * Pass target type in params * Show slack status * Pass additional parameters There is a logic bug in this :( Will send to slack twice, since the admin CC and the user are both using the same notification. Fuckity fuck fuck fuck. * Pass a variable to the notification to supress the duplicate slack message * Slack is broken :( Trying to fix Will try a git bisect * Put preview back into checkout * Pulled old archaic mail * Removed debugging * Fixed wrong email title * Fixed slack endpoint not firing * Poobot, we hardly knew ye. * Removed old, manual mail from API * Typo :-/ * Code cleanup * Use defined formatted date in JSON * Use static properties for checkin/checkout notifiers for cleaner code * Removed debugging * Use date formatter * Fixed target_type * Fixed language in consumable email
50 lines
1.7 KiB
PHP
50 lines
1.7 KiB
PHP
<?php
|
|
use App\Exceptions\CheckoutNotAllowed;
|
|
use App\Models\Asset;
|
|
use App\Models\AssetModel;
|
|
use App\Models\Category;
|
|
use App\Models\Location;
|
|
use App\Models\User;
|
|
use App\Notifications\CheckoutAssetNotification;
|
|
use Illuminate\Foundation\Testing\DatabaseMigrations;
|
|
use Illuminate\Foundation\Testing\DatabaseTransactions;
|
|
use Illuminate\Foundation\Testing\WithoutMiddleware;
|
|
use Illuminate\Support\Facades\Hash;
|
|
use Illuminate\Support\Facades\Notification;
|
|
|
|
class NotificationTest extends BaseTest
|
|
{
|
|
/**
|
|
* @var \UnitTester
|
|
*/
|
|
protected $tester;
|
|
|
|
// public function testAUserIsEmailedIfTheyCheckoutAnAssetWithEULA()
|
|
// {
|
|
// $admin = factory(User::class)->states('superuser')->create();
|
|
// Auth::login($admin);
|
|
// $cat = factory(Category::class)->states('asset-category', 'requires-acceptance')->create();
|
|
// $model = factory(AssetModel::class)->create(['category_id' => $cat->id]);
|
|
// $asset = factory(Asset::class)->create(['model_id' => $model->id]);
|
|
|
|
// $user = factory(User::class)->create();
|
|
// Notification::fake();
|
|
// $asset->checkOut($user, 1);
|
|
|
|
// Notification::assertSentTo($user, CheckoutNotification::class);
|
|
// }
|
|
|
|
// public function testAnAssetRequiringAEulaDoesNotExplodeWhenCheckedOutToALocation()
|
|
// {
|
|
// $this->signIn();
|
|
// $asset = factory(Asset::class)->states('requires-acceptance')->create();
|
|
|
|
// $this->expectException(CheckoutNotAllowed::class);
|
|
// $location = factory(Location::class)->create();
|
|
// Notification::fake();
|
|
// $asset->checkOut($location, 1);
|
|
|
|
// Notification::assertNotSentTo($location, CheckoutNotification::class);
|
|
// }
|
|
}
|