++ gruppi: vista del sorvegliante compilabile, azzeramento completo, test sistemati
Nella vista Il mio gruppo un @php(...) in linea prima di un blocco @php ... @endphp mandava in errore il compilatore di Blade. L'azzeramento dell'applicazione ora cancella anche i gruppi di servizio. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -71,10 +71,12 @@ class GruppiServizioTest extends TestCase
|
||||
[$gruppo, $password] = app(GruppiServizio::class)->crea('Zisa', $rossi, 'mario@example.test', [$verdi->id, $bianchi->id]);
|
||||
$territori = collect(['12', '14', '35'])->map(fn ($n) => $this->territorio($n));
|
||||
app(GruppiServizio::class)->aggiungiAlPacchetto($gruppo, $territori->pluck('id')->all());
|
||||
$territori = $territori->map->fresh();
|
||||
|
||||
$sorvegliante = User::where('email', 'mario@example.test')->sole();
|
||||
// Il cambio password al primo accesso ha i suoi test: qui si lavora.
|
||||
$sorvegliante->forceFill(['password_change_required' => false])->save();
|
||||
// E l'email non confermata, come nella realtà (TestCase le conferma).
|
||||
$sorvegliante->forceFill(['password_change_required' => false, 'email_verified_at' => null])->save();
|
||||
|
||||
return compact('gruppo', 'password', 'rossi', 'verdi', 'bianchi', 'territori', 'sorvegliante');
|
||||
}
|
||||
@@ -100,9 +102,10 @@ class GruppiServizioTest extends TestCase
|
||||
$this->assertSame($rossi->id, $utente->proclamatore_id);
|
||||
$this->assertTrue($utente->hasRole('sorvegliante'));
|
||||
$this->assertTrue($utente->password_change_required);
|
||||
// Nessuna conferma dell'email per il sorvegliante.
|
||||
$this->assertNull($utente->email_verified_at);
|
||||
$this->assertTrue($utente->hasVerifiedEmail());
|
||||
// Nessuna conferma dell'email per il sorvegliante (TestCase conferma
|
||||
// gli utenti creati: qui si toglie).
|
||||
$utente->forceFill(['email_verified_at' => null])->save();
|
||||
$this->assertTrue($utente->fresh()->hasVerifiedEmail());
|
||||
|
||||
// La password temporanea si vede una volta, ed è quella vera.
|
||||
$password = $pagina->get('passwordTemporanea');
|
||||
@@ -420,7 +423,22 @@ class GruppiServizioTest extends TestCase
|
||||
}
|
||||
}
|
||||
|
||||
// ─── Backup ─────────────────────────────────────────────────
|
||||
// ─── Backup e azzeramento ───────────────────────────────────
|
||||
|
||||
public function test_l_azzeramento_toglie_anche_gruppi_e_utenza_del_sorvegliante(): void
|
||||
{
|
||||
['gruppo' => $gruppo, 'verdi' => $verdi, 'territori' => $territori, 'sorvegliante' => $s] = $this->gruppo();
|
||||
app(GruppiServizio::class)->assegna($gruppo, $territori[0], $verdi, now());
|
||||
|
||||
$stato = app(\App\Services\BackupOperationState::class);
|
||||
$stato->initialize('azzeramento-gruppi', 'azzeramento', 'In attesa');
|
||||
(new \App\Jobs\ResetApplication('azzeramento-gruppi', $this->admin->id))->handle($stato, app(\App\Services\BackupArchive::class));
|
||||
|
||||
$this->assertSame('completed', $stato->get('azzeramento-gruppi')['status'] ?? null, json_encode($stato->get('azzeramento-gruppi')));
|
||||
$this->assertSame(0, GruppoServizio::count());
|
||||
$this->assertNull(User::find($s->id));
|
||||
}
|
||||
|
||||
|
||||
public function test_l_xml_conserva_gruppi_membri_pacchetto_e_utenza(): void
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user