?>Array ( [lang] => fr [id] => 81 ) Scénario Cas Limite : Gestion d'un Chemin Invalide et Création de Répertoire à la Volée - WeAreCAS
table addCaslib

Scénario Cas Limite : Gestion d'un Chemin Invalide et Création de Répertoire à la Volée

Scénario de test & Cas d'usage

Contexte Métier

Un administrateur système configure une nouvelle caslib mais commet une erreur en spécifiant un chemin qui n'existe pas. Le test doit valider le comportement de SAS Viya dans ce cas, puis démontrer la capacité de l'action à corriger la situation en créant le répertoire manquant.
Préparation des Données

Aucune donnée n'est créée initialement pour tester le cas du chemin invalide. Une table en mémoire sera créée plus tard pour tester la sauvegarde.

Copié !
1DATA casuser.temp_data_to_save; x = 1; y = 2; RUN;

Étapes de réalisation

1
Tentative de création d'une caslib pointant vers un chemin qui n'existe pas. L'action doit réussir.
Copié !
1PROC CAS; TABLE.addCaslib / name='INVALID_PATH_LIB' path='/tmp/this_path_does_not_exist_123/' dataSource={srcType='PATH'}; RUN;
2
Tentative de sauvegarde d'une table dans cette caslib. Cette action doit échouer avec une erreur claire.
Copié !
1PROC CAS; TABLE.save / caslib='INVALID_PATH_LIB' TABLE={name='temp_data_to_save', caslib='casuser'} name='should_fail.sashdat' replace=TRUE; RUN;
3
Création d'une nouvelle caslib pour un chemin inexistant, mais en utilisant l'option 'createDirectory=TRUE'.
Copié !
1PROC CAS; TABLE.addCaslib / name='AUTO_CREATED_LIB' path='/tmp/newly_created_dir_456/' dataSource={srcType='PATH'} createDirectory=TRUE; RUN;
4
Nouvelle tentative de sauvegarde de la même table, mais dans la caslib correctement créée. Cette action doit réussir.
Copié !
1PROC CAS; TABLE.save / caslib='AUTO_CREATED_LIB' TABLE={name='temp_data_to_save', caslib='casuser'} name='should_succeed.sashdat' replace=TRUE; RUN;

Résultat Attendu


La première étape crée la caslib 'INVALID_PATH_LIB' sans erreur, mais la deuxième étape (sauvegarde) échoue, confirmant que la validation du chemin est différée. La troisième étape crée avec succès la caslib 'AUTO_CREATED_LIB' et le répertoire physique associé sur le serveur. La quatrième étape réussit, prouvant que l'option 'createDirectory=TRUE' est une méthode de configuration efficace.