mirror of
https://github.com/snipe/snipe-it.git
synced 2024-12-30 07:59:50 -08:00
f7dbda4ed3
* Work towards a functional travis. Step 1: Disable broken unit tests. * Fix functional tests This updates the login information and model factories to work with changes to source. * Importer name/full name fixes. Fix a bug where "name" was used ambigously and mapping "item name" to "name" would confuse the importer into thinking it should also be a user name. Now we default to "full name" for the users name, and "item name" for the item name. These are still both configurable through the custom mapping. Also update sample csvs and remove an outdated sample. * Max length of supplier notes is 191, not 255, as per default laravel string length. Might make sense to change this to a text field in the future to match other places. * Use sqlite/different db setup for unit tests. * Fix assets api test. * Fix Components API test. * increase travis memory limit for functional tests. * Use travis config for api tests as well. * Fix memory limit file. * Disable ApiComponentsAssetsCest until it's fixed.
85 lines
2.7 KiB
PHP
85 lines
2.7 KiB
PHP
<?php
|
|
|
|
|
|
use App\Models\Group;
|
|
|
|
class GroupsCest
|
|
{
|
|
public function _before(FunctionalTester $I)
|
|
{
|
|
$I->amOnPage('/login');
|
|
$I->fillField('username', 'admin');
|
|
$I->fillField('password', 'password');
|
|
$I->click('Login');
|
|
}
|
|
|
|
// tests
|
|
public function loadsFormWithoutErrors(FunctionalTester $I)
|
|
{
|
|
$I->wantTo('ensure that the create groups form loads without errors');
|
|
$I->lookForwardTo('seeing it load without errors');
|
|
$I->amOnPage(route('groups.create'));
|
|
$I->seeResponseCodeIs(200);
|
|
$I->dontSee('Create New Group', '.page-header');
|
|
$I->see('Create New Group', 'h1.pull-left');
|
|
}
|
|
|
|
public function failsEmptyValidation(FunctionalTester $I)
|
|
{
|
|
$I->wantTo("Test Validation Fails with blank elements");
|
|
$I->amOnPage(route('groups.create'));
|
|
$I->seeResponseCodeIs(200);
|
|
$I->click('Save');
|
|
$I->seeElement('.alert-danger');
|
|
$I->see('The name field is required.', '.alert-msg');
|
|
}
|
|
|
|
public function failsShortValidation(FunctionalTester $I)
|
|
{
|
|
$I->wantTo("Test Validation Fails with short name");
|
|
$I->amOnPage(route('groups.create'));
|
|
$I->seeResponseCodeIs(200);
|
|
$I->fillField('name', 't2');
|
|
$I->click('Save');
|
|
$I->seeElement('.alert-danger');
|
|
$I->see('The name must be at least 3 characters', '.alert-msg');
|
|
}
|
|
|
|
public function passesCorrectValidation(FunctionalTester $I)
|
|
{
|
|
$I->wantTo("Test Validation Succeeds");
|
|
$I->amOnPage(route('groups.create'));
|
|
$I->seeResponseCodeIs(200);
|
|
$I->fillField('name', 'TestGroup');
|
|
$I->click('Save');
|
|
$I->dontSee('<span class="');
|
|
$I->seeElement('.alert-success');
|
|
}
|
|
|
|
public function allowsDelete(FunctionalTester $I, $scenario)
|
|
{
|
|
$scenario->incomplete('Fix this test to generate a group for deletes');
|
|
$I->wantTo('Ensure I can delete a group');
|
|
|
|
// create a group
|
|
$I->amOnPage(route('groups.create'));
|
|
$I->seeResponseCodeIs(200);
|
|
$I->fillField('name', 'TestGroup');
|
|
$I->click('Save');
|
|
$I->dontSee('<span class="');
|
|
$I->seeElement('.alert-success');
|
|
|
|
// delete it
|
|
$I->amOnPage(route('groups.delete', Group::doesntHave('users')->first()->id));
|
|
$I->seeResponseCodeIs(200);
|
|
$I->seeElement('.alert-success');
|
|
// $I->seeResponseCodeIs(200);
|
|
}
|
|
|
|
public function allowsEditing(FunctionalTester $I, $scenario)
|
|
{
|
|
$scenario->incomplete('Fix this test to generate a group for editing');
|
|
$I->wantTo('Ensure i can edit a group');
|
|
}
|
|
}
|