Scénario de test & Cas d'usage
Gestion de l'état de la session CAS.
Découvrir toutes les actions de sessionAucune table de données n'est nécessaire. Ce scénario simule l'état du serveur CAS pendant une opération d'ajout de nœuds. L'action `addnodes` est conceptuellement exécutée en arrière-plan.
| 1 | /* NOTE: Ce scénario suppose qu'un administrateur a initié une commande 'cas.addnodes' pour deux nouveaux workers. L'action addNodeStatus est utilisée pour suivre cette opération asynchrone. */ |
| 1 | PROC CAS; |
| 2 | SESSION.addNodeStatus RESULT=r_avant; |
| 3 | PRINT r_avant; |
| 4 | RUN; |
| 1 | /* Simulation : les nœuds 'worker-05' et 'worker-06' sont en cours d'ajout. */ |
| 2 | PROC CAS; |
| 3 | SESSION.addNodeStatus RESULT=r_pendant STATUS=st; |
| 4 | IF (st.statusCode == 0) THEN DO; |
| 5 | PRINT "Statut de l'ajout des nœuds en cours :"; |
| 6 | print r_pendant['addNodeStatus']; |
| 7 | END; |
| 8 | RUN; |
| 1 | /* Simulation : l'opération est terminée. */ |
| 2 | PROC CAS; |
| 3 | SESSION.addNodeStatus RESULT=r_apres; |
| 4 | PRINT "Vérification finale :"; |
| 5 | /* Dans un cas réel, la table r_apres['addNodeStatus'] serait vide car les nœuds actifs ne sont plus listés. */ |
| 6 | PRINT "L'opération d'ajout est terminée. La table de statut est maintenant vide."; |
| 7 | RUN; |
L'étape 1 doit retourner une table de résultat vide. L'étape 2 doit afficher une table contenant deux lignes, une pour chaque nouveau nœud, avec un statut comme 'pending' ou 'installing'. L'étape 3 doit indiquer que l'opération est terminée, résultant en une table de statut vide, car seuls les nœuds en cours d'ajout sont listés.