Restrizione alla modifica degli appuntamenti passati per i moderatori del calendario
Come: operatore moderatore di un calendario
Voglio: essere impedito dal modificare un appuntamento che è già passato, sia se la modifica è generata automaticamente da un cambio di stato della pratica, sia se tento di farla manualmente nel backoffice dedicato al calendario
Così che: possa garantire l'integrità e la correttezza dei dati storici nel sistema, evitando alterazioni involontarie o non autorizzate degli appuntamenti passati.
Criteri di Accettazione
-
Blocco Modifica Manuale: Se un appuntamento è già passato, il sistema deve impedire qualsiasi modifica manuale nel backoffice e mostrare un messaggio di errore. -
Blocco Modifica Automatica: Se un appuntamento è già passato, il sistema deve impedire modifiche automatiche derivanti da un cambio di stato della pratica associata, mantenendo i dettagli originali. -
Permesso di Modifica Appuntamenti Futuri: Il sistema deve consentire la modifica degli appuntamenti futuri senza restrizioni. -
Gestione Appuntamenti Odierni: Se l'orario di un appuntamento odierno è già trascorso, il sistema deve bloccare sia le modifiche manuali che automatiche, segnalando l'errore. -
Aggiungere unit test
Test Case 1: Modifica manuale di un appuntamento passato
- Titolo: Tentativo di modifica manuale di un appuntamento passato
- Descrizione: Verificare che l'operatore moderatore non possa modificare manualmente un appuntamento già passato nel backoffice del calendario.
-
Precondizioni:
- Un appuntamento esiste nel calendario con una data e ora già trascorse.
- L'operatore moderatore è autenticato e ha accesso al backoffice del calendario.
-
Passi:
- L'operatore accede al backoffice del calendario.
- L'operatore seleziona un appuntamento già passato.
- Risultato atteso: Il sistema mostra i campi non modificabili e non permette il salvataggio.
Test Case 2: Modifica automatica di un appuntamento passato tramite cambio di stato della pratica
- Titolo: Tentativo di modifica automatica di un appuntamento passato tramite cambio di stato della pratica
- Descrizione: Verificare che un appuntamento già passato non venga modificato automaticamente a causa di un cambio di stato della pratica associata.
-
Precondizioni:
- Un appuntamento esiste nel calendario con una data e ora già trascorse.
- L'appuntamento è associato a una pratica che cambia stato.
-
Passi:
- La pratica associata all'appuntamento cambia stato.
- Il sistema tenta di aggiornare l'appuntamento basato sul nuovo stato della pratica.
- Risultato atteso: Il sistema blocca la modifica automatica dell'appuntamento e mantiene i dettagli originari dell'appuntamento passato, registrando eventualmente un log del tentativo di modifica fallito.
Test Case 3: Modifica di un appuntamento futuro
- Titolo: Modifica di un appuntamento futuro
- Descrizione: Verificare che l'operatore moderatore possa modificare un appuntamento futuro nel calendario senza restrizioni.
-
Precondizioni:
- Un appuntamento esiste nel calendario con una data e ora non ancora trascorse.
- L'operatore moderatore è autenticato e ha accesso al backoffice del calendario.
-
Passi:
- L'operatore accede al backoffice del calendario.
- L'operatore seleziona un appuntamento futuro.
- L'operatore modifica i dettagli dell'appuntamento (es. data, ora, note).
- L'operatore salva le modifiche.
- Risultato atteso: Il sistema permette il salvataggio delle modifiche e aggiorna l'appuntamento nel calendario con i nuovi dettagli forniti.
Test Case 4: Tentativo di modifica manuale e automatica di un appuntamento con una data odierna (al momento del test)
- Titolo: Tentativo di modifica di un appuntamento con data odierna
- Descrizione: Verificare che un appuntamento con data odierna non possa essere modificato se l'orario corrente è successivo all'orario dell'appuntamento.
-
Precondizioni:
- Un appuntamento esiste nel calendario con data odierna, ma l'orario dell'appuntamento è già trascorso.
- L'operatore moderatore è autenticato e ha accesso al backoffice del calendario.
-
Passi:
- L'operatore tenta di modificare l'appuntamento manualmente nel backoffice del calendario.
- La pratica associata all'appuntamento cambia stato, e il sistema tenta di aggiornare l'appuntamento.
- Risultato atteso: In entrambi i casi, il sistema impedisce la modifica dell'appuntamento e segnala che l'appuntamento è già passato.
Edited by Saverio Cicora