session batchresults

Scénario Cas Limite : Tentative de détachement avec un UUID invalide ou terminé

Scénario de test & Cas d'usage

Contexte Métier

Suite à une erreur de copier-coller ou à un décalage temporel, un utilisateur tente de passer en mode batch un job en utilisant un UUID incorrect, ou l'UUID d'un job qui est déjà terminé. Le système doit gérer cette erreur proprement sans planter.
À propos du Set : session

Gestion de l'état de la session CAS.

Découvrir toutes les actions de session
Préparation des Données

Aucune préparation de données n'est nécessaire, car le test se concentre sur la gestion des erreurs de l'action elle-même.

Copié !
1/* Pas de données requises */

Étapes de réalisation

1
Lancement d'une action très rapide (`simple.echo`) de manière asynchrone pour obtenir un UUID valide mais dont le job se terminera quasi-instantanément.
Copié !
1 
2PROC CAS;
3ACTION SIMPLE.echo / message='test rapide', async='job_termine';
4RUN;
5 
2
Pause de 2 secondes pour s'assurer que le job est bien terminé.
Copié !
1DATA _null_;
2 call sleep(2, 1);
3RUN;
3
Tentative d'utilisation de `batchresults` sur l'UUID du job déjà terminé. Une erreur est attendue.
Copié !
1PROC CAS;
2 ACTION SESSION.batchresults RESULT=r_termine STATUS=s_termine / uuid=job_termine.jobId;
3 PRINT s_termine;
4RUN;
4
Tentative d'utilisation de `batchresults` sur un UUID complètement inventé. Une erreur est attendue.
Copié !
1PROC CAS;
2 ACTION SESSION.batchresults RESULT=r_invalide STATUS=s_invalide / uuid='ceci-est-un-uuid-invalide';
3 PRINT s_invalide;
4RUN;
5QUIT;

Résultat Attendu


Pour les étapes 3 et 4, l'action `batchresults` doit échouer. Le statut retourné (`s_termine` et `s_invalide`) doit indiquer une erreur (code de statut non nul) et le log SAS doit contenir un message d'erreur explicite, tel que 'The job ID was not found' ou un équivalent, pour chaque tentative. La session CAS ne doit pas être affectée et reste opérationnelle.