Loading...
Searching...
No Matches
startupservice.test.sas
Go to the documentation of this file.
1/**
2 @file
3 @brief testing startupservice service
4
5 <h4> SAS Macros </h4>
6 @li mf_getuniquefileref.sas
7 @li mp_assertdsobs.sas
8 @li mpe_getpath2settings.sas
9 @li mx_append2pgm.sas
10 @li mx_testservice.sas
11
12**/
13
14%let _program=&appLoc/services/public/startupservice;
15
16%mx_testservice(&_program,
17 mdebug=&sasjs_mdebug,
18 outlib=webout,
19 viyacontext=&defaultcontext
20)
21
22data work.globvars;
23 set webout.globvars;
24 putlog (_all_)(=);
25run;
26
27data work.xlmaps;
28 set webout.xlmaps;
29 putlog (_all_)(=);
30run;
31
32%mp_assertdsobs(work.globvars,
33 desc=Fromsas table returned,
34 test=HASOBS,
35 outds=work.test_results
36)
37
38%mp_assertdsobs(work.xlmaps,
39 desc=xlmaps table returned,
40 test=HASOBS,
41 outds=work.test_results
42)
43
44/* test mpe_security table */
45%let testlib=%upcase(%mf_getuniquefileref());
46
47/* remove the admin group */
48filename append temp;
49data _null_;
50 file append;
51 put '%let dc_admin_group=xxx;';
52 put " libname &testlib '%sysfunc(pathname(&dc_libref))';";
53run;
54%let settingspath=%mpe_getpath2settings();
55%mx_append2pgm(&settingspath, inref=append)
56
57/* insert single approved table in mpe_security */
58data work.append;
59 set &DC_LIBREF..mpe_security;
60 LIBREF="&testlib";
61 DSN='MPE_X_TEST';
62 ACCESS_LEVEL='EDIT';
63 SAS_GROUP="&dc_admin_group";
64 tx_from=0;
65 tx_to='31DEC9999:23:59:59'dt;
66 output;
67 stop;
68run;
69proc append base=&dc_libref..mpe_security data=work.append;
70run;
71/* add to MPE_TABLES also */
72data work.append2 ;
73 set &dc_libref..MPE_TABLES;
74 where libref="&dc_libref" and %sysfunc(datetime()) < tx_to;
75 libref="&testlib";
76 tx_from=0;
77 tx_to='31DEC9999:23:59:59'dt;
78run;
79proc sort data=work.append2 nodupkey; by libref dsn;run;
80proc append base=&dc_libref..mpe_tables data=work.append2;run;
81
82
83%mx_testservice(&_program,
84 mdebug=&sasjs_mdebug,
85 outlib=webout2,
86 viyacontext=&defaultcontext
87)
88
89data work.sasdatasets2;
90 set webout2.sasdatasets;
91 putlog (_all_)(=);
92 if libref="&testlib";
93run;
94%mp_assertdsobs(work.sasdatasets2,
95 desc=Only 1 table shown,
96 test=EQUALS 1
97)
98
99/* now try all tables */
100data work.append3;
101 set &DC_LIBREF..mpe_security;
102 where libref="&testlib" and SAS_GROUP="&dc_admin_group";
103 DSN='*ALL*';
104run;
105proc append base=&dc_libref..mpe_security data=work.append3;
106run;
107%mx_testservice(&_program,
108 mdebug=&sasjs_mdebug,
109 outlib=webout3,
110 viyacontext=&defaultcontext
111)
112
113
114data work.sasdatasets3;
115 set webout3.sasdatasets;
116 putlog (_all_)(=);
117 if libref="&testlib";
118run;
119%mp_assertdsobs(work.sasdatasets3,
120 desc=Only 1 table shown,
121 test=ATLEAST 10
122)
123
124/* revert the admin group back */
125filename appback temp;
126data _null_;
127 file appback;
128 put '%let dc_admin_group=' "&dc_admin_group;";
129run;
130%mx_append2pgm(&settingspath, inref=appback)