Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,13 +51,13 @@ services:
- auth.local

cups:
image: olbat/cupsd:latest
image: olbat/cupsd:stable-2026-08-03
container_name: impressoras_cups
ports:
- '8631:631'
environment:
- CUPS_ADMIN=admin
- CUPS_PASSWORD=admin
- CUPS_ADMIN=print
- CUPS_PASSWORD=print
networks:
- impressoras-network

Expand Down
49 changes: 47 additions & 2 deletions tests/Browser/RegraCrudTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
namespace Tests\Browser;

use Illuminate\Foundation\Testing\DatabaseMigrations;
use Illuminate\Foundation\Testing\DatabaseTruncation;
use Laravel\Dusk\Browser;
use Tests\DuskTestCase;

Expand All @@ -11,18 +12,62 @@ class RegraCrudTest extends DuskTestCase
/**
* Método para fazer o Crud Completo
*/
use DatabaseTruncation; // zera banco de dados
public function test_crud_regras()
{
$this->browse(function (Browser $browser) {
// Login como admin
$browser->visit('/')
->clickLink('Entrar')
->waitFor('#loginUsuario') # Importante: Espera a página de login carregar
->typeSlowly('loginUsuario', '1111')
->press('Login')
->waitFor('.login_logout_link') # Importante: Espera a página de retornada carregar
->waitForText('Regras', 5)
->assertSee('Regras')
# Alan vai Implementat CRUD de regras
->clickLink('Regras');

// CREATE
$browser->assertSee('Adicionar regra')
->clickLink('Adicionar regra')
->waitFor('input[name=name]')
->type('name', 'Regra Teste Dusk')
->radio('queue_control', '0')
->select('quota_period', 'Mensal')
->type('quota', '100')
->select('quota_type', 'Páginas')
->press('Enviar')
->waitForLocation('/rules')
->assertSee('Regra Teste Dusk');

// READ (show)
$browser->clickLink('Regra')
->waitForText('Regra Teste Dusk')
->assertSee('Regra Teste Dusk')
->assertSee('Mensal')
->assertSee('100')
->assertSee('Páginas');

// UPDATE
$browser->visit('/rules')
->waitForText('Regra Teste Dusk')
->click('a[href*="/rules/"][href$="/edit"]')
->waitFor('input[name=name]')
->clear('name')
->type('name', 'Regra Teste Dusk Editada')
->clear('quota')
->type('quota', '200')
->press('Enviar')
->waitForLocation('/rules')
->assertSee('Regra Teste Dusk Editada')
->assertSee('200');

// DELETE
$browser->visit('/rules')
->waitForText('Regra Teste Dusk Editada')
->click('#actions button[type=submit]')
->acceptDialog()
->waitUntilMissingText('Regra Teste Dusk Editada')
->assertDontSee('Regra Teste Dusk Editada');
});
}
}
6 changes: 3 additions & 3 deletions tests/DuskTestCase.php
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,9 @@ abstract class DuskTestCase extends BaseTestCase
#[BeforeClass]
public static function prepare(): void
{
if (! static::runningInSail()) {
static::startChromeDriver(['--port=9515']);
}
// if (! static::runningInSail()) {
// static::startChromeDriver(['--port=9515']);
// }
}

/**
Expand Down
Loading