diff --git a/sas/mocks/sasjs/services/lineage/fetchtablelineage.js b/sas/mocks/sasjs/services/lineage/fetchtablelineage.js index c4c517e..037ec29 100644 --- a/sas/mocks/sasjs/services/lineage/fetchtablelineage.js +++ b/sas/mocks/sasjs/services/lineage/fetchtablelineage.js @@ -1,46 +1,15 @@ -_webout = `{"SYSDATE" : "26SEP22" -,"SYSTIME" : "08:54" -, "finalfinal": -[ - -] -, "info": -[ -{ -"TABLEID": "A59LNVZG.BR00002J", -"TABLENAME": "MPE_DATALOADS", -"LIBURI": "OMSOBJ:SASLibrary\A59LNVZG.B500000K", -"LIBREF": "DC_JSLIB" -} -] -, "flatdata": -[ - -] -, "idlookup": -[ - -] -,"_DEBUG" : "" -,"_METAUSER": "sasdemo@SAS" -,"_METAPERSON": "sasdemo" -,"_PROGRAM" : "/Projects/app/dc/services/lineage/fetchtablelineage" -,"AUTOEXEC" : "D%3A%5Copt%5Csasinside%5CConfig%5CLev1%5CSASApp%5CStoredProcessServer%5Cautoexec.sas" -,"MF_GETUSER" : "sasdemo" -,"SYSCC" : "0" -,"SYSENCODING" : "wlatin1" -,"SYSERRORTEXT" : "" -,"SYSHOSTNAME" : "SAS" -,"SYSPROCESSID" : "41DD805811AA4DD340C4BD8000000000" -,"SYSPROCESSMODE" : "SAS Stored Process Server" -,"SYSPROCESSNAME" : "" -,"SYSJOBID" : "27448" -,"SYSSCPL" : "Linunx" -,"SYSSITE" : "123" -,"SYSUSERID" : "sassrv" -,"SYSVLONG" : "9.04.01M7P080520" -,"SYSWARNINGTEXT" : "ENCODING option ignored for files opened with RECFM=N." -,"END_DTTM" : "2022-09-26T08:54:31.395000" -,"MEMSIZE" : "46GB" -} -` \ No newline at end of file +/* A fixed sample of what the SAS service returns for this screen. + The members are the same shape; the envelope now comes from the runtime. */ +webout('OPEN') +webout('OBJ', 'finalfinal', []) +webout('OBJ', 'info', [ + { + TABLEID: 'A59LNVZG.BR00002J', + TABLENAME: 'MPE_DATALOADS', + LIBURI: 'OMSOBJ:SASLibrary\\A59LNVZG.B500000K', + LIBREF: 'DC_JSLIB' + } +]) +webout('OBJ', 'flatdata', []) +webout('OBJ', 'idlookup', []) +webout('CLOSE') diff --git a/sas/mocks/sasjs/services/lineage/getmetacols.js b/sas/mocks/sasjs/services/lineage/getmetacols.js index 7df6bae..27d9b89 100644 --- a/sas/mocks/sasjs/services/lineage/getmetacols.js +++ b/sas/mocks/sasjs/services/lineage/getmetacols.js @@ -1,83 +1,61 @@ -_webout = `{"SYSDATE" : "26SEP22" -,"SYSTIME" : "08:54" -, "metacols": -[ -{ -"COLURI": "OMSOBJ:Column\A59LNVZG.BT0001L8", -"COLNAME": "changed_records", -"COLDESC": "" -}, -{ -"COLURI": "OMSOBJ:Column\A59LNVZG.BT0001LA", -"COLNAME": "deleted_records", -"COLDESC": "" -}, -{ -"COLURI": "OMSOBJ:Column\A59LNVZG.BT0001L5", -"COLNAME": "dsn", -"COLDESC": "" -}, -{ -"COLURI": "OMSOBJ:Column\A59LNVZG.BT0001LB", -"COLNAME": "duration", -"COLDESC": "" -}, -{ -"COLURI": "OMSOBJ:Column\A59LNVZG.BT0001L6", -"COLNAME": "etlsource", -"COLDESC": "" -}, -{ -"COLURI": "OMSOBJ:Column\A59LNVZG.BT0001L4", -"COLNAME": "libref", -"COLDESC": "" -}, -{ -"COLURI": "OMSOBJ:Column\A59LNVZG.BT0001L7", -"COLNAME": "loadtype", -"COLDESC": "" -}, -{ -"COLURI": "OMSOBJ:Column\A59LNVZG.BT0001LE", -"COLNAME": "mac_ver", -"COLDESC": "" -}, -{ -"COLURI": "OMSOBJ:Column\A59LNVZG.BT0001L9", -"COLNAME": "new_records", -"COLDESC": "" -}, -{ -"COLURI": "OMSOBJ:Column\A59LNVZG.BT0001LD", -"COLNAME": "processed_dttm", -"COLDESC": "" -}, -{ -"COLURI": "OMSOBJ:Column\A59LNVZG.BT0001LC", -"COLNAME": "user_nm", -"COLDESC": "" -} -] -,"_DEBUG" : "" -,"_METAUSER": "sasdemo@SAS" -,"_METAPERSON": "sasdemo" -,"_PROGRAM" : "/Projects/app/dc/services/lineage/getmetacols" -,"AUTOEXEC" : "D%3A%5Copt%5Csasinside%5CConfig%5CLev1%5CSASApp%5CStoredProcessServer%5Cautoexec.sas" -,"MF_GETUSER" : "sasdemo" -,"SYSCC" : "0" -,"SYSENCODING" : "wlatin1" -,"SYSERRORTEXT" : "" -,"SYSHOSTNAME" : "SAS" -,"SYSPROCESSID" : "41DD8058115E041940C4910000000000" -,"SYSPROCESSMODE" : "SAS Stored Process Server" -,"SYSPROCESSNAME" : "" -,"SYSJOBID" : "27448" -,"SYSSCPL" : "Linunx" -,"SYSSITE" : "123" -,"SYSUSERID" : "sassrv" -,"SYSVLONG" : "9.04.01M7P080520" -,"SYSWARNINGTEXT" : "ENCODING option ignored for files opened with RECFM=N." -,"END_DTTM" : "2022-09-26T08:54:29.833000" -,"MEMSIZE" : "46GB" -} -` \ No newline at end of file +/* A fixed sample of what the SAS service returns for this screen. + The members are the same shape; the envelope now comes from the runtime. */ +webout('OPEN') +webout('OBJ', 'metacols', [ + { + COLURI: 'OMSOBJ:Column\\A59LNVZG.BT0001L8', + COLNAME: 'changed_records', + COLDESC: '' + }, + { + COLURI: 'OMSOBJ:Column\\A59LNVZG.BT0001LA', + COLNAME: 'deleted_records', + COLDESC: '' + }, + { + COLURI: 'OMSOBJ:Column\\A59LNVZG.BT0001L5', + COLNAME: 'dsn', + COLDESC: '' + }, + { + COLURI: 'OMSOBJ:Column\\A59LNVZG.BT0001LB', + COLNAME: 'duration', + COLDESC: '' + }, + { + COLURI: 'OMSOBJ:Column\\A59LNVZG.BT0001L6', + COLNAME: 'etlsource', + COLDESC: '' + }, + { + COLURI: 'OMSOBJ:Column\\A59LNVZG.BT0001L4', + COLNAME: 'libref', + COLDESC: '' + }, + { + COLURI: 'OMSOBJ:Column\\A59LNVZG.BT0001L7', + COLNAME: 'loadtype', + COLDESC: '' + }, + { + COLURI: 'OMSOBJ:Column\\A59LNVZG.BT0001LE', + COLNAME: 'mac_ver', + COLDESC: '' + }, + { + COLURI: 'OMSOBJ:Column\\A59LNVZG.BT0001L9', + COLNAME: 'new_records', + COLDESC: '' + }, + { + COLURI: 'OMSOBJ:Column\\A59LNVZG.BT0001LD', + COLNAME: 'processed_dttm', + COLDESC: '' + }, + { + COLURI: 'OMSOBJ:Column\\A59LNVZG.BT0001LC', + COLNAME: 'user_nm', + COLDESC: '' + } +]) +webout('CLOSE') diff --git a/sas/mocks/sasjs/services/lineage/getmetatables.js b/sas/mocks/sasjs/services/lineage/getmetatables.js index 34198ff..c71f5cb 100644 --- a/sas/mocks/sasjs/services/lineage/getmetatables.js +++ b/sas/mocks/sasjs/services/lineage/getmetatables.js @@ -1,42 +1,20 @@ -_webout = `{"SYSDATE" : "26SEP22" -,"SYSTIME" : "08:53" -, "metatables": -[ -{ -"LIBNAME": "Sankey", -"SERVERCONTEXT": "SASApp", -"AUTHDOMAIN": "", -"PATH_SCHEMA": "D:\MyDemo\Sankey", -"TABLEURI": "OMSOBJ:PhysicalTable\A59LNVZG.BR000023", -"ID": "A59LNVZG.B600000M", -"LIBDESC": "", -"LIBREF": "sankey", -"ENGINE": "BASE", -"ISDBMSLIBNAME": "0", -"ISPREASSIGNED": "0", -"TABLENAME": "WEBTEST4" -} -] -,"_DEBUG" : "" -,"_METAUSER": "sasdemo@SAS" -,"_METAPERSON": "sasdemo" -,"_PROGRAM" : "/Projects/app/dc/services/lineage/getmetatables" -,"AUTOEXEC" : "D%3A%5Copt%5Csasinside%5CConfig%5CLev1%5CSASApp%5CStoredProcessServer%5Cautoexec.sas" -,"MF_GETUSER" : "sasdemo" -,"SYSCC" : "0" -,"SYSENCODING" : "wlatin1" -,"SYSERRORTEXT" : "" -,"SYSHOSTNAME" : "SAS" -,"SYSPROCESSID" : "41DD8058084D916840C4690000000000" -,"SYSPROCESSMODE" : "SAS Stored Process Server" -,"SYSPROCESSNAME" : "" -,"SYSJOBID" : "27448" -,"SYSSCPL" : "Linunx" -,"SYSSITE" : "123" -,"SYSUSERID" : "sassrv" -,"SYSVLONG" : "9.04.01M7P080520" -,"SYSWARNINGTEXT" : "ENCODING option ignored for files opened with RECFM=N." -,"END_DTTM" : "2022-09-26T08:53:53.567000" -,"MEMSIZE" : "46GB" -} -` \ No newline at end of file +/* A fixed sample of what the SAS service returns for this screen. + The members are the same shape; the envelope now comes from the runtime. */ +webout('OPEN') +webout('OBJ', 'metatables', [ + { + LIBNAME: 'Sankey', + SERVERCONTEXT: 'SASApp', + AUTHDOMAIN: '', + PATH_SCHEMA: 'D:\\MyDemo\\Sankey', + TABLEURI: 'OMSOBJ:PhysicalTable\\A59LNVZG.BR000023', + ID: 'A59LNVZG.B600000M', + LIBDESC: '', + LIBREF: 'sankey', + ENGINE: 'BASE', + ISDBMSLIBNAME: '0', + ISPREASSIGNED: '0', + TABLENAME: 'WEBTEST4' + } +]) +webout('CLOSE') diff --git a/sas/mocks/sasjs/services/metanav/metadetails.js b/sas/mocks/sasjs/services/metanav/metadetails.js index f8f8e9e..1dcf94d 100644 --- a/sas/mocks/sasjs/services/metanav/metadetails.js +++ b/sas/mocks/sasjs/services/metanav/metadetails.js @@ -1,101 +1,78 @@ -_webout = `{"SYSDATE" : "26SEP22" -,"SYSTIME" : "08:50" -, "attributes": -[ -{ -"TYPE": "Attr", -"NAME": "ChangeState", -"VALUE": "" -}, -{ -"TYPE": "Attr", -"NAME": "Desc", -"VALUE": "Input Stream." -}, -{ -"TYPE": "Attr", -"NAME": "Id", -"VALUE": "A59LNVZG.BW000001" -}, -{ -"TYPE": "Attr", -"NAME": "IsHidden", -"VALUE": "0" -}, -{ -"TYPE": "Attr", -"NAME": "LockedBy", -"VALUE": "" -}, -{ -"TYPE": "Attr", -"NAME": "MetadataCreated", -"VALUE": "19Aug2020:11:12:46" -}, -{ -"TYPE": "Attr", -"NAME": "MetadataUpdated", -"VALUE": "19Aug2020:11:12:46" -}, -{ -"TYPE": "Attr", -"NAME": "Name", -"VALUE": "instream" -}, -{ -"TYPE": "Attr", -"NAME": "Protocol", -"VALUE": "" -}, -{ -"TYPE": "Attr", -"NAME": "PublicType", -"VALUE": "" -}, -{ -"TYPE": "Attr", -"NAME": "UsageVersion", -"VALUE": "0" -}, -{ -"TYPE": "Prop", -"NAME": "MultiPass", -"VALUE": "1" -} -] -, "associations": -[ -{ -"ASSOC": "Properties", -"ASSOCURI": "OMSOBJ:Property\A59LNVZG.AC0003EG", -"NAME": "MultiPass" -}, -{ -"ASSOC": "Reports", -"ASSOCURI": "OMSOBJ:Report\A59LNVZG.BV000001", -"NAME": "instream" -} -] -,"_DEBUG" : "" -,"_METAUSER": "sasdemo@SAS" -,"_METAPERSON": "sasdemo" -,"_PROGRAM" : "/Projects/app/dc/services/metanav/metadetails" -,"AUTOEXEC" : "D%3A%5Copt%5Csasinside%5CConfig%5CLev1%5CSASApp%5CStoredProcessServer%5Cautoexec.sas" -,"MF_GETUSER" : "sasdemo" -,"SYSCC" : "0" -,"SYSENCODING" : "wlatin1" -,"SYSERRORTEXT" : "" -,"SYSHOSTNAME" : "SAS" -,"SYSPROCESSID" : "41DD8057D94B645A40C1608000000000" -,"SYSPROCESSMODE" : "SAS Stored Process Server" -,"SYSPROCESSNAME" : "" -,"SYSJOBID" : "27448" -,"SYSSCPL" : "Linunx" -,"SYSSITE" : "123" -,"SYSUSERID" : "sassrv" -,"SYSVLONG" : "9.04.01M7P080520" -,"SYSWARNINGTEXT" : "ENCODING option ignored for files opened with RECFM=N." -,"END_DTTM" : "2022-09-26T08:50:45.706000" -,"MEMSIZE" : "46GB" -} -` \ No newline at end of file +/* A fixed sample of what the SAS service returns for the metanav screens. + The members are the same shape; the envelope now comes from the runtime. */ +webout('OPEN') +webout('OBJ', 'attributes', [ + { + TYPE: 'Attr', + NAME: 'ChangeState', + VALUE: '' + }, + { + TYPE: 'Attr', + NAME: 'Desc', + VALUE: 'Input Stream.' + }, + { + TYPE: 'Attr', + NAME: 'Id', + VALUE: 'A59LNVZG.BW000001' + }, + { + TYPE: 'Attr', + NAME: 'IsHidden', + VALUE: '0' + }, + { + TYPE: 'Attr', + NAME: 'LockedBy', + VALUE: '' + }, + { + TYPE: 'Attr', + NAME: 'MetadataCreated', + VALUE: '19Aug2020:11:12:46' + }, + { + TYPE: 'Attr', + NAME: 'MetadataUpdated', + VALUE: '19Aug2020:11:12:46' + }, + { + TYPE: 'Attr', + NAME: 'Name', + VALUE: 'instream' + }, + { + TYPE: 'Attr', + NAME: 'Protocol', + VALUE: '' + }, + { + TYPE: 'Attr', + NAME: 'PublicType', + VALUE: '' + }, + { + TYPE: 'Attr', + NAME: 'UsageVersion', + VALUE: '0' + }, + { + TYPE: 'Prop', + NAME: 'MultiPass', + VALUE: '1' + } +]) +webout('OBJ', 'associations', [ + { + ASSOC: 'Properties', + ASSOCURI: 'OMSOBJ:Property\\A59LNVZG.AC0003EG', + NAME: 'MultiPass' + }, + { + ASSOC: 'Reports', + ASSOCURI: 'OMSOBJ:Report\\A59LNVZG.BV000001', + NAME: 'instream' + } +]) +webout('CLOSE') diff --git a/sas/mocks/sasjs/services/metanav/metaobjects.js b/sas/mocks/sasjs/services/metanav/metaobjects.js index 712e31f..d60be4d 100644 --- a/sas/mocks/sasjs/services/metanav/metaobjects.js +++ b/sas/mocks/sasjs/services/metanav/metaobjects.js @@ -1,32 +1,10 @@ -_webout = `{"SYSDATE" : "26SEP22" -,"SYSTIME" : "08:50" -, "objects": -[ -{ -"ID": "A59LNVZG.BW000001", -"NAME": "instream" -} -] -,"_DEBUG" : "" -,"_METAUSER": "sasdemo@SAS" -,"_METAPERSON": "sasdemo" -,"_PROGRAM" : "/Projects/app/dc/services/metanav/metaobjects" -,"AUTOEXEC" : "D%3A%5Copt%5Csasinside%5CConfig%5CLev1%5CSASApp%5CStoredProcessServer%5Cautoexec.sas" -,"MF_GETUSER" : "sasdemo" -,"SYSCC" : "0" -,"SYSENCODING" : "wlatin1" -,"SYSERRORTEXT" : "" -,"SYSHOSTNAME" : "SAS" -,"SYSPROCESSID" : "41DD8057D89978D540C1368000000000" -,"SYSPROCESSMODE" : "SAS Stored Process Server" -,"SYSPROCESSNAME" : "" -,"SYSJOBID" : "27448" -,"SYSSCPL" : "Linunx" -,"SYSSITE" : "123" -,"SYSUSERID" : "sassrv" -,"SYSVLONG" : "9.04.01M7P080520" -,"SYSWARNINGTEXT" : "ENCODING option ignored for files opened with RECFM=N." -,"END_DTTM" : "2022-09-26T08:50:42.814000" -,"MEMSIZE" : "46GB" -} -` \ No newline at end of file +/* A fixed sample of what the SAS service returns for the metanav screens. + The members are the same shape; the envelope now comes from the runtime. */ +webout('OPEN') +webout('OBJ', 'objects', [ + { + ID: 'A59LNVZG.BW000001', + NAME: 'instream' + } +]) +webout('CLOSE') diff --git a/sas/mocks/sasjs/services/metanav/metarepos.js b/sas/mocks/sasjs/services/metanav/metarepos.js index d72765c..f8fdd5e 100644 --- a/sas/mocks/sasjs/services/metanav/metarepos.js +++ b/sas/mocks/sasjs/services/metanav/metarepos.js @@ -1,36 +1,14 @@ -_webout = `{"SYSDATE" : "26SEP22" -,"SYSTIME" : "08:50" -, "outrepos": -[ -{ -"ID": "A0000001.A573PBI4", -"NAME": "BILineage" -}, -{ -"ID": "A0000001.A59LNVZG", -"NAME": "Foundation" -} -] -,"_DEBUG" : "" -,"_METAUSER": "sasdemo@SAS" -,"_METAPERSON": "sasdemo" -,"_PROGRAM" : "/Projects/app/dc/services/metanav/metarepos" -,"AUTOEXEC" : "D%3A%5Copt%5Csasinside%5CConfig%5CLev1%5CSASApp%5CStoredProcessServer%5Cautoexec.sas" -,"MF_GETUSER" : "sasdemo" -,"SYSCC" : "4" -,"SYSENCODING" : "wlatin1" -,"SYSERRORTEXT" : "" -,"SYSHOSTNAME" : "SAS" -,"SYSPROCESSID" : "41DD8057D3E04189409F380000000000" -,"SYSPROCESSMODE" : "SAS Stored Process Server" -,"SYSPROCESSNAME" : "" -,"SYSJOBID" : "21468" -,"SYSSCPL" : "Linunx" -,"SYSSITE" : "123" -,"SYSUSERID" : "sassrv" -,"SYSVLONG" : "9.04.01M7P080520" -,"SYSWARNINGTEXT" : "ENCODING option ignored for files opened with RECFM=N." -,"END_DTTM" : "2022-09-26T08:50:23.895000" -,"MEMSIZE" : "46GB" -} -` \ No newline at end of file +/* A fixed sample of what the SAS service returns for the metanav screens. + The members are the same shape; the envelope now comes from the runtime. */ +webout('OPEN') +webout('OBJ', 'outrepos', [ + { + ID: 'A0000001.A573PBI4', + NAME: 'BILineage' + }, + { + ID: 'A0000001.A59LNVZG', + NAME: 'Foundation' + } +]) +webout('CLOSE') diff --git a/sas/mocks/sasjs/services/metanav/metatypes.js b/sas/mocks/sasjs/services/metanav/metatypes.js index b3393f0..6470bf9 100644 --- a/sas/mocks/sasjs/services/metanav/metatypes.js +++ b/sas/mocks/sasjs/services/metanav/metatypes.js @@ -1,383 +1,361 @@ -_webout = `{"SYSDATE" : "26SEP22" -,"SYSTIME" : "08:50" -, "types": -[ -{ -"ID": "AccessControlEntry", -"DESC": "Access control entry", -"HASSUBTYPES": "0" -}, -{ -"ID": "AccessControlTemplate", -"DESC": "Access control template", -"HASSUBTYPES": "0" -}, -{ -"ID": "Action", -"DESC": "Action", -"HASSUBTYPES": "0" -}, -{ -"ID": "AnalyticContext", -"DESC": "Analytic context", -"HASSUBTYPES": "0" -}, -{ -"ID": "ApplicationAction", -"DESC": "Application action", -"HASSUBTYPES": "0" -}, -{ -"ID": "AssociationProperty", -"DESC": "Association property", -"HASSUBTYPES": "0" -}, -{ -"ID": "AttributeProperty", -"DESC": "Attribute property", -"HASSUBTYPES": "0" -}, -{ -"ID": "AuthenticationDomain", -"DESC": "Authentication domain", -"HASSUBTYPES": "0" -}, -{ -"ID": "ClassifierMap", -"DESC": "Classifier map", -"HASSUBTYPES": "1" -}, -{ -"ID": "Column", -"DESC": "Column", -"HASSUBTYPES": "1" -}, -{ -"ID": "Condition", -"DESC": "Condition", -"HASSUBTYPES": "0" -}, -{ -"ID": "ConditionActionSet", -"DESC": "Condition action set", -"HASSUBTYPES": "0" -}, -{ -"ID": "ConfiguredComponent", -"DESC": "Configured component", -"HASSUBTYPES": "1" -}, -{ -"ID": "CustomAssociation", -"DESC": "Custom association", -"HASSUBTYPES": "0" -}, -{ -"ID": "DatabaseCatalog", -"DESC": "Database catalog", -"HASSUBTYPES": "0" -}, -{ -"ID": "DatabaseSchema", -"DESC": "Database schema", -"HASSUBTYPES": "0" -}, -{ -"ID": "DeployedComponent", -"DESC": "Deployed component", -"HASSUBTYPES": "1" -}, -{ -"ID": "Directory", -"DESC": "Directory", -"HASSUBTYPES": "1" -}, -{ -"ID": "Document", -"DESC": "Document", -"HASSUBTYPES": "0" -}, -{ -"ID": "Extension", -"DESC": "Extension", -"HASSUBTYPES": "0" -}, -{ -"ID": "ExternalIdentity", -"DESC": "External identity", -"HASSUBTYPES": "0" -}, -{ -"ID": "FavoritesContainer", -"DESC": "Favorites container", -"HASSUBTYPES": "0" -}, -{ -"ID": "File", -"DESC": "File", -"HASSUBTYPES": "1" -}, -{ -"ID": "Group", -"DESC": "Group", -"HASSUBTYPES": "1" -}, -{ -"ID": "ITChannel", -"DESC": "IT channel", -"HASSUBTYPES": "0" -}, -{ -"ID": "IdentityGroup", -"DESC": "Identity group", -"HASSUBTYPES": "0" -}, -{ -"ID": "Index", -"DESC": "Index", -"HASSUBTYPES": "0" -}, -{ -"ID": "InternalLogin", -"DESC": "Internal login", -"HASSUBTYPES": "0" -}, -{ -"ID": "Job", -"DESC": "Job", -"HASSUBTYPES": "0" -}, -{ -"ID": "Keyword", -"DESC": "Keyword", -"HASSUBTYPES": "0" -}, -{ -"ID": "LogicalServer", -"DESC": "Logical server", -"HASSUBTYPES": "0" -}, -{ -"ID": "Login", -"DESC": "Login", -"HASSUBTYPES": "0" -}, -{ -"ID": "Machine", -"DESC": "Machine", -"HASSUBTYPES": "0" -}, -{ -"ID": "NamedService", -"DESC": "Named service", -"HASSUBTYPES": "0" -}, -{ -"ID": "OLAPSchema", -"DESC": "OLAP schema", -"HASSUBTYPES": "0" -}, -{ -"ID": "PSColumnLayoutComponent", -"DESC": "PS column layout component", -"HASSUBTYPES": "0" -}, -{ -"ID": "PSPortalPage", -"DESC": "PS portal page", -"HASSUBTYPES": "0" -}, -{ -"ID": "PSPortlet", -"DESC": "PS portlet", -"HASSUBTYPES": "0" -}, -{ -"ID": "Permission", -"DESC": "Permission", -"HASSUBTYPES": "0" -}, -{ -"ID": "Person", -"DESC": "People", -"HASSUBTYPES": "0" -}, -{ -"ID": "PhysicalTable", -"DESC": "Physical table", -"HASSUBTYPES": "1" -}, -{ -"ID": "Prompt", -"DESC": "Prompt", -"HASSUBTYPES": "0" -}, -{ -"ID": "PromptGroup", -"DESC": "Prompt group", -"HASSUBTYPES": "0" -}, -{ -"ID": "Property", -"DESC": "Property", -"HASSUBTYPES": "0" -}, -{ -"ID": "PropertyGroup", -"DESC": "Property group", -"HASSUBTYPES": "0" -}, -{ -"ID": "PropertySet", -"DESC": "Property set", -"HASSUBTYPES": "0" -}, -{ -"ID": "PropertyType", -"DESC": "Property type", -"HASSUBTYPES": "0" -}, -{ -"ID": "Prototype", -"DESC": "Prototype", -"HASSUBTYPES": "0" -}, -{ -"ID": "Report", -"DESC": "Report", -"HASSUBTYPES": "0" -}, -{ -"ID": "ResponsibleParty", -"DESC": "Responsible party", -"HASSUBTYPES": "0" -}, -{ -"ID": "SASClientConnection", -"DESC": "SAS client connection", -"HASSUBTYPES": "0" -}, -{ -"ID": "SASLibrary", -"DESC": "SAS library", -"HASSUBTYPES": "1" -}, -{ -"ID": "SASPassword", -"DESC": "SAS password", -"HASSUBTYPES": "0" -}, -{ -"ID": "Search", -"DESC": "Search", -"HASSUBTYPES": "0" -}, -{ -"ID": "SecurityRuleScheme", -"DESC": "Security rule scheme", -"HASSUBTYPES": "0" -}, -{ -"ID": "SecurityTypeContainmentRule", -"DESC": "Security type containment rule", -"HASSUBTYPES": "0" -}, -{ -"ID": "ServerComponent", -"DESC": "Server component", -"HASSUBTYPES": "1" -}, -{ -"ID": "ServerContext", -"DESC": "Server context", -"HASSUBTYPES": "0" -}, -{ -"ID": "ServiceComponent", -"DESC": "Service component", -"HASSUBTYPES": "0" -}, -{ -"ID": "ServiceType", -"DESC": "Service type", -"HASSUBTYPES": "0" -}, -{ -"ID": "SoftwareComponent", -"DESC": "Software component", -"HASSUBTYPES": "1" -}, -{ -"ID": "Stream", -"DESC": "Stream", -"HASSUBTYPES": "0" -}, -{ -"ID": "TCPIPConnection", -"DESC": "TCPIP connection", -"HASSUBTYPES": "0" -}, -{ -"ID": "TextStore", -"DESC": "Text store", -"HASSUBTYPES": "0" -}, -{ -"ID": "Timestamp", -"DESC": "Timestamp", -"HASSUBTYPES": "0" -}, -{ -"ID": "Transformation", -"DESC": "Transformation", -"HASSUBTYPES": "1" -}, -{ -"ID": "TransformationActivity", -"DESC": "Transformation activity", -"HASSUBTYPES": "0" -}, -{ -"ID": "TransformationStep", -"DESC": "Transformation step", -"HASSUBTYPES": "1" -}, -{ -"ID": "Tree", -"DESC": "Metadata Trees", -"HASSUBTYPES": "0" -}, -{ -"ID": "TypeDefinition", -"DESC": "Type definition", -"HASSUBTYPES": "0" -}, -{ -"ID": "UniqueKey", -"DESC": "Unique key", -"HASSUBTYPES": "0" -} -] -,"_DEBUG" : "" -,"_METAUSER": "sasdemo@SAS" -,"_METAPERSON": "sasdemo" -,"_PROGRAM" : "/Projects/app/dc/services/metanav/metatypes" -,"AUTOEXEC" : "D%3A%5Copt%5Csasinside%5CConfig%5CLev1%5CSASApp%5CStoredProcessServer%5Cautoexec.sas" -,"MF_GETUSER" : "sasdemo" -,"SYSCC" : "0" -,"SYSENCODING" : "wlatin1" -,"SYSERRORTEXT" : "" -,"SYSHOSTNAME" : "SAS" -,"SYSPROCESSID" : "41DD8057D3E020C540C10F8000000000" -,"SYSPROCESSMODE" : "SAS Stored Process Server" -,"SYSPROCESSNAME" : "" -,"SYSJOBID" : "27448" -,"SYSSCPL" : "Linunx" -,"SYSSITE" : "123" -,"SYSUSERID" : "sassrv" -,"SYSVLONG" : "9.04.01M7P080520" -,"SYSWARNINGTEXT" : "ENCODING option ignored for files opened with RECFM=N." -,"END_DTTM" : "2022-09-26T08:50:23.928000" -,"MEMSIZE" : "46GB" -} -` \ No newline at end of file +/* A fixed sample of what the SAS service returns for the metanav screens. + The members are the same shape; the envelope now comes from the runtime. */ +webout('OPEN') +webout('OBJ', 'types', [ + { + ID: 'AccessControlEntry', + DESC: 'Access control entry', + HASSUBTYPES: '0' + }, + { + ID: 'AccessControlTemplate', + DESC: 'Access control template', + HASSUBTYPES: '0' + }, + { + ID: 'Action', + DESC: 'Action', + HASSUBTYPES: '0' + }, + { + ID: 'AnalyticContext', + DESC: 'Analytic context', + HASSUBTYPES: '0' + }, + { + ID: 'ApplicationAction', + DESC: 'Application action', + HASSUBTYPES: '0' + }, + { + ID: 'AssociationProperty', + DESC: 'Association property', + HASSUBTYPES: '0' + }, + { + ID: 'AttributeProperty', + DESC: 'Attribute property', + HASSUBTYPES: '0' + }, + { + ID: 'AuthenticationDomain', + DESC: 'Authentication domain', + HASSUBTYPES: '0' + }, + { + ID: 'ClassifierMap', + DESC: 'Classifier map', + HASSUBTYPES: '1' + }, + { + ID: 'Column', + DESC: 'Column', + HASSUBTYPES: '1' + }, + { + ID: 'Condition', + DESC: 'Condition', + HASSUBTYPES: '0' + }, + { + ID: 'ConditionActionSet', + DESC: 'Condition action set', + HASSUBTYPES: '0' + }, + { + ID: 'ConfiguredComponent', + DESC: 'Configured component', + HASSUBTYPES: '1' + }, + { + ID: 'CustomAssociation', + DESC: 'Custom association', + HASSUBTYPES: '0' + }, + { + ID: 'DatabaseCatalog', + DESC: 'Database catalog', + HASSUBTYPES: '0' + }, + { + ID: 'DatabaseSchema', + DESC: 'Database schema', + HASSUBTYPES: '0' + }, + { + ID: 'DeployedComponent', + DESC: 'Deployed component', + HASSUBTYPES: '1' + }, + { + ID: 'Directory', + DESC: 'Directory', + HASSUBTYPES: '1' + }, + { + ID: 'Document', + DESC: 'Document', + HASSUBTYPES: '0' + }, + { + ID: 'Extension', + DESC: 'Extension', + HASSUBTYPES: '0' + }, + { + ID: 'ExternalIdentity', + DESC: 'External identity', + HASSUBTYPES: '0' + }, + { + ID: 'FavoritesContainer', + DESC: 'Favorites container', + HASSUBTYPES: '0' + }, + { + ID: 'File', + DESC: 'File', + HASSUBTYPES: '1' + }, + { + ID: 'Group', + DESC: 'Group', + HASSUBTYPES: '1' + }, + { + ID: 'ITChannel', + DESC: 'IT channel', + HASSUBTYPES: '0' + }, + { + ID: 'IdentityGroup', + DESC: 'Identity group', + HASSUBTYPES: '0' + }, + { + ID: 'Index', + DESC: 'Index', + HASSUBTYPES: '0' + }, + { + ID: 'InternalLogin', + DESC: 'Internal login', + HASSUBTYPES: '0' + }, + { + ID: 'Job', + DESC: 'Job', + HASSUBTYPES: '0' + }, + { + ID: 'Keyword', + DESC: 'Keyword', + HASSUBTYPES: '0' + }, + { + ID: 'LogicalServer', + DESC: 'Logical server', + HASSUBTYPES: '0' + }, + { + ID: 'Login', + DESC: 'Login', + HASSUBTYPES: '0' + }, + { + ID: 'Machine', + DESC: 'Machine', + HASSUBTYPES: '0' + }, + { + ID: 'NamedService', + DESC: 'Named service', + HASSUBTYPES: '0' + }, + { + ID: 'OLAPSchema', + DESC: 'OLAP schema', + HASSUBTYPES: '0' + }, + { + ID: 'PSColumnLayoutComponent', + DESC: 'PS column layout component', + HASSUBTYPES: '0' + }, + { + ID: 'PSPortalPage', + DESC: 'PS portal page', + HASSUBTYPES: '0' + }, + { + ID: 'PSPortlet', + DESC: 'PS portlet', + HASSUBTYPES: '0' + }, + { + ID: 'Permission', + DESC: 'Permission', + HASSUBTYPES: '0' + }, + { + ID: 'Person', + DESC: 'People', + HASSUBTYPES: '0' + }, + { + ID: 'PhysicalTable', + DESC: 'Physical table', + HASSUBTYPES: '1' + }, + { + ID: 'Prompt', + DESC: 'Prompt', + HASSUBTYPES: '0' + }, + { + ID: 'PromptGroup', + DESC: 'Prompt group', + HASSUBTYPES: '0' + }, + { + ID: 'Property', + DESC: 'Property', + HASSUBTYPES: '0' + }, + { + ID: 'PropertyGroup', + DESC: 'Property group', + HASSUBTYPES: '0' + }, + { + ID: 'PropertySet', + DESC: 'Property set', + HASSUBTYPES: '0' + }, + { + ID: 'PropertyType', + DESC: 'Property type', + HASSUBTYPES: '0' + }, + { + ID: 'Prototype', + DESC: 'Prototype', + HASSUBTYPES: '0' + }, + { + ID: 'Report', + DESC: 'Report', + HASSUBTYPES: '0' + }, + { + ID: 'ResponsibleParty', + DESC: 'Responsible party', + HASSUBTYPES: '0' + }, + { + ID: 'SASClientConnection', + DESC: 'SAS client connection', + HASSUBTYPES: '0' + }, + { + ID: 'SASLibrary', + DESC: 'SAS library', + HASSUBTYPES: '1' + }, + { + ID: 'SASPassword', + DESC: 'SAS password', + HASSUBTYPES: '0' + }, + { + ID: 'Search', + DESC: 'Search', + HASSUBTYPES: '0' + }, + { + ID: 'SecurityRuleScheme', + DESC: 'Security rule scheme', + HASSUBTYPES: '0' + }, + { + ID: 'SecurityTypeContainmentRule', + DESC: 'Security type containment rule', + HASSUBTYPES: '0' + }, + { + ID: 'ServerComponent', + DESC: 'Server component', + HASSUBTYPES: '1' + }, + { + ID: 'ServerContext', + DESC: 'Server context', + HASSUBTYPES: '0' + }, + { + ID: 'ServiceComponent', + DESC: 'Service component', + HASSUBTYPES: '0' + }, + { + ID: 'ServiceType', + DESC: 'Service type', + HASSUBTYPES: '0' + }, + { + ID: 'SoftwareComponent', + DESC: 'Software component', + HASSUBTYPES: '1' + }, + { + ID: 'Stream', + DESC: 'Stream', + HASSUBTYPES: '0' + }, + { + ID: 'TCPIPConnection', + DESC: 'TCPIP connection', + HASSUBTYPES: '0' + }, + { + ID: 'TextStore', + DESC: 'Text store', + HASSUBTYPES: '0' + }, + { + ID: 'Timestamp', + DESC: 'Timestamp', + HASSUBTYPES: '0' + }, + { + ID: 'Transformation', + DESC: 'Transformation', + HASSUBTYPES: '1' + }, + { + ID: 'TransformationActivity', + DESC: 'Transformation activity', + HASSUBTYPES: '0' + }, + { + ID: 'TransformationStep', + DESC: 'Transformation step', + HASSUBTYPES: '1' + }, + { + ID: 'Tree', + DESC: 'Metadata Trees', + HASSUBTYPES: '0' + }, + { + ID: 'TypeDefinition', + DESC: 'Type definition', + HASSUBTYPES: '0' + }, + { + ID: 'UniqueKey', + DESC: 'Unique key', + HASSUBTYPES: '0' + } +]) +webout('CLOSE') diff --git a/sas/mocks/sasjs/services/public/refreshlibinfo.js b/sas/mocks/sasjs/services/public/refreshlibinfo.js index 157c85a..0b64e4a 100644 --- a/sas/mocks/sasjs/services/public/refreshlibinfo.js +++ b/sas/mocks/sasjs/services/public/refreshlibinfo.js @@ -1,39 +1,17 @@ -_webout = `{"SYSDATE" : "29SEP22" -,"SYSTIME" : "12:02" -, "libinfo": -[ +/* A fixed sample of what the SAS service returns for this screen. + The members are the same shape; the envelope now comes from the runtime. */ +webout('OPEN') +webout('OBJ', 'libinfo', [ { - "ENGINE": "BASE", - "LIBNAME": "Data Controller(DC_JSLIB)", - "PATHS": "(\\"/tmp/mihajlo/DC_JSLIB\\")", - "PERMS": "", - "OWNERS": "BUILTIN\Administrators", - "SCHEMAS": "", - "LIBID": "A59LNVZG.B500000K", - "LIBSIZE": " 13MB", - "TABLE_CNT": 32 + ENGINE: 'BASE', + LIBNAME: 'Data Controller(DC_JSLIB)', + PATHS: '("/tmp/mihajlo/DC_JSLIB")', + PERMS: '', + OWNERS: 'BUILTIN\\Administrators', + SCHEMAS: '', + LIBID: 'A59LNVZG.B500000K', + LIBSIZE: ' 13MB', + TABLE_CNT: 32 } -] -,"_DEBUG" : "" -,"_METAUSER": "sasdemo@SAS" -,"_METAPERSON": "sasdemo" -,"_PROGRAM" : "/Projects/app/dc/services/public/refreshlibinfo" -,"AUTOEXEC" : "D%3A%5Copt%5Csasinside%5CConfig%5CLev1%5CSASApp%5CStoredProcessServer%5Cautoexec.sas" -,"MF_GETUSER" : "sasdemo" -,"SYSCC" : "0" -,"SYSENCODING" : "wlatin1" -,"SYSERRORTEXT" : "A connection to the LASR Analytic Server on 'SAS.demo.sas.com', port 10011, could not be made. Make sure that the host and port are correctly specified, that you are attempting to connect to a LASR Analytic Server of the correct vintage, and that the server is still running." -,"SYSHOSTNAME" : "SAS" -,"SYSPROCESSID" : "41DD816037A1CAC140C2B00000000000" -,"SYSPROCESSMODE" : "SAS Stored Process Server" -,"SYSPROCESSNAME" : "" -,"SYSJOBID" : "14432" -,"SYSSCPL" : "Linunx" -,"SYSSITE" : "123" -,"SYSUSERID" : "sassrv" -,"SYSVLONG" : "9.04.01M7P080520" -,"SYSWARNINGTEXT" : "ENCODING option ignored for files opened with RECFM=N." -,"END_DTTM" : "2022-09-29T12:02:44.445000" -,"MEMSIZE" : "93GB" -} -` \ No newline at end of file +]) +webout('CLOSE') diff --git a/sas/mocks/sasjs/services/usernav/usergroupsbymember.js b/sas/mocks/sasjs/services/usernav/usergroupsbymember.js index 0975a7a..e1bb9f2 100644 --- a/sas/mocks/sasjs/services/usernav/usergroupsbymember.js +++ b/sas/mocks/sasjs/services/usernav/usergroupsbymember.js @@ -1,29 +1,11 @@ -_webout = `{"SYSDATE" : "06OCT22" -,"SYSTIME" : "14:48" -, "groups": -[ -{"GROUPNAME":"AllUsers" ,"GROUPDESC":"Group contains all users" ,"URI":1 } -] -,"_DEBUG" : "" -,"_PROGRAM" : "/30.SASApps/app/sasdemo/services/usernav/usergroupsbymember" -,"AUTOEXEC" : "%2Fhome%2Fsasdemo%2Fsasjs_root%2Fsessions%2F20221006144844-38321-1665067724415%2Fautoexec.sas" -,"MF_GETUSER" : "sasdemo" -,"SYSCC" : "0" -,"SYSENCODING" : "utf-8" -,"SYSERRORTEXT" : "" -,"SYSHOSTINFOLONG" : "" -,"SYSHOSTNAME" : "sas.4gl.io" -,"SYSPROCESSID" : "41DD83B8933732F40000000000000000" -,"SYSPROCESSMODE" : "Stored Program" -,"SYSPROCESSNAME" : "" -,"SYSJOBID" : "717969" -,"SYSSCPL" : "LINUX" -,"syssite" : "123" -,"SYSTCPIPHOSTNAME" : "https://sas.4gl.io:5002" -,"SYSUSERID" : "sasdemo" -,"SYSVLONG" : "05.00.00.02.001146" -,"SYSWARNINGTEXT" : "" -,"END_DTTM" : "2022-10-06T14:49:17.028492" -,"MEMSIZE" : "0KB" -} -` \ No newline at end of file +/* A fixed sample of what the SAS service returns for this screen. + The members are the same shape; the envelope now comes from the runtime. */ +webout('OPEN') +webout('OBJ', 'groups', [ + { + GROUPNAME: 'AllUsers', + GROUPDESC: 'Group contains all users', + URI: 1 + } +]) +webout('CLOSE') diff --git a/sas/mocks/sasjs/services/usernav/usermembers.js b/sas/mocks/sasjs/services/usernav/usermembers.js index 72fa2d9..bb65a6d 100644 --- a/sas/mocks/sasjs/services/usernav/usermembers.js +++ b/sas/mocks/sasjs/services/usernav/usermembers.js @@ -1,30 +1,18 @@ -_webout = `{"SYSDATE" : "06OCT22" -,"SYSTIME" : "14:47" -, "users": -[ -{"URI":"1" ,"NAME":"sasdemo" ,"DISPLAYNAME":"Super Admin" ,"ISADMIN":1 } -,{"URI":"2" ,"NAME":"secretuser" ,"DISPLAYNAME":"Super Admin" ,"ISADMIN":1 } -] -,"_DEBUG" : "" -,"_PROGRAM" : "/30.SASApps/app/sasdemo/services/usernav/usermembers" -,"AUTOEXEC" : "%2Fhome%2Fsasdemo%2Fsasjs_root%2Fsessions%2F20221006144758-81942-1665067678253%2Fautoexec.sas" -,"MF_GETUSER" : "sasdemo" -,"SYSCC" : "0" -,"SYSENCODING" : "utf-8" -,"SYSERRORTEXT" : "" -,"SYSHOSTINFOLONG" : "" -,"SYSHOSTNAME" : "sas.4gl.io" -,"SYSPROCESSID" : "41DD83B887B444240000000000000000" -,"SYSPROCESSMODE" : "Stored Program" -,"SYSPROCESSNAME" : "" -,"SYSJOBID" : "717923" -,"SYSSCPL" : "LINUX" -,"syssite" : "123" -,"SYSTCPIPHOSTNAME" : "https://sas.4gl.io:5002" -,"SYSUSERID" : "sasdemo" -,"SYSVLONG" : "05.00.00.02.001146" -,"SYSWARNINGTEXT" : "" -,"END_DTTM" : "2022-10-06T14:48:50.472250" -,"MEMSIZE" : "0KB" -} -` \ No newline at end of file +/* A fixed sample of what the SAS service returns for this screen. + The members are the same shape; the envelope now comes from the runtime. */ +webout('OPEN') +webout('OBJ', 'users', [ + { + URI: '1', + NAME: 'sasdemo', + DISPLAYNAME: 'Super Admin', + ISADMIN: 1 + }, + { + URI: '2', + NAME: 'secretuser', + DISPLAYNAME: 'Super Admin', + ISADMIN: 1 + } +]) +webout('CLOSE') diff --git a/sas/mocks/sasjs/services/usernav/usermembersbygroup.js b/sas/mocks/sasjs/services/usernav/usermembersbygroup.js index bc9dfd0..3f09028 100644 --- a/sas/mocks/sasjs/services/usernav/usermembersbygroup.js +++ b/sas/mocks/sasjs/services/usernav/usermembersbygroup.js @@ -1,30 +1,18 @@ -_webout = `{"SYSDATE" : "06OCT22" -,"SYSTIME" : "14:46" -, "sasmembers": -[ -{"DISPLAYNAME":"Super Admin" ,"ID":1 ,"ISADMIN":1 ,"USERNAME":"sasdemo" } -,{"DISPLAYNAME":"Super Admin" ,"ID":2 ,"ISADMIN":1 ,"USERNAME":"secretuser" } -] -,"_DEBUG" : "" -,"_PROGRAM" : "/30.SASApps/app/sasdemo/services/usernav/usermembersbygroup" -,"AUTOEXEC" : "%2Fhome%2Fsasdemo%2Fsasjs_root%2Fsessions%2F20221006144618-97395-1665067578326%2Fautoexec.sas" -,"MF_GETUSER" : "sasdemo" -,"SYSCC" : "0" -,"SYSENCODING" : "utf-8" -,"SYSERRORTEXT" : "" -,"SYSHOSTINFOLONG" : "" -,"SYSHOSTNAME" : "sas.4gl.io" -,"SYSPROCESSID" : "41DD83B86EF4A74C0000000000000000" -,"SYSPROCESSMODE" : "Stored Program" -,"SYSPROCESSNAME" : "" -,"SYSJOBID" : "717900" -,"SYSSCPL" : "LINUX" -,"syssite" : "123" -,"SYSTCPIPHOSTNAME" : "https://sas.4gl.io:5002" -,"SYSUSERID" : "sasdemo" -,"SYSVLONG" : "05.00.00.02.001146" -,"SYSWARNINGTEXT" : "" -,"END_DTTM" : "2022-10-06T14:48:11.167868" -,"MEMSIZE" : "0KB" -} -` \ No newline at end of file +/* A fixed sample of what the SAS service returns for this screen. + The members are the same shape; the envelope now comes from the runtime. */ +webout('OPEN') +webout('OBJ', 'sasmembers', [ + { + DISPLAYNAME: 'Super Admin', + ID: 1, + ISADMIN: 1, + USERNAME: 'sasdemo' + }, + { + DISPLAYNAME: 'Super Admin', + ID: 2, + ISADMIN: 1, + USERNAME: 'secretuser' + } +]) +webout('CLOSE') diff --git a/sas/mocks/sasjs/services/usernav/usermembersbyrole.js b/sas/mocks/sasjs/services/usernav/usermembersbyrole.js index 1ed1952..41e8f36 100644 --- a/sas/mocks/sasjs/services/usernav/usermembersbyrole.js +++ b/sas/mocks/sasjs/services/usernav/usermembersbyrole.js @@ -1,47 +1,24 @@ -_webout = `{"SYSDATE" : "26SEP22" -,"SYSTIME" : "08:51" -, "sasgroups": -[ -{ -"URIMEM": "OMSOBJ:IdentityGroup\A59LNVZG.A5000002", -"MEMBERNAME": "PUBLIC", -"MEMBERTYPE": "UserGroup", -"MEMBERUPDATED": "19Aug2020:06:21:05", -"MEMBERCREATED": "19Aug2020:06:21:05", -"EMAIL": "" -} -] -, "sasmembers": -[ -{ -"URIMEM": "OMSOBJ:Person\A59LNVZG.AP000003", -"MEMBERNAME": "sasdemo", -"MEMBERTYPE": "User", -"MEMBERUPDATED": "19Aug2020:06:22:00", -"MEMBERCREATED": "19Aug2020:06:22:00", -"EMAIL": "" -} -] -,"_DEBUG" : "" -,"_METAUSER": "sasdemo@SAS" -,"_METAPERSON": "sasdemo" -,"_PROGRAM" : "/Projects/app/dc/services/usernav/usermembersbyrole" -,"AUTOEXEC" : "D%3A%5Copt%5Csasinside%5CConfig%5CLev1%5CSASApp%5CStoredProcessServer%5Cautoexec.sas" -,"MF_GETUSER" : "sasdemo" -,"SYSCC" : "0" -,"SYSENCODING" : "wlatin1" -,"SYSERRORTEXT" : "" -,"SYSHOSTNAME" : "SAS" -,"SYSPROCESSID" : "41DD8057E21AB02140C3090000000000" -,"SYSPROCESSMODE" : "SAS Stored Process Server" -,"SYSPROCESSNAME" : "" -,"SYSJOBID" : "27448" -,"SYSSCPL" : "Linunx" -,"SYSSITE" : "123" -,"SYSUSERID" : "sassrv" -,"SYSVLONG" : "9.04.01M7P080520" -,"SYSWARNINGTEXT" : "ENCODING option ignored for files opened with RECFM=N." -,"END_DTTM" : "2022-09-26T08:51:20.946000" -,"MEMSIZE" : "46GB" -} -` \ No newline at end of file +/* A fixed sample of what the SAS service returns for this screen. + The members are the same shape; the envelope now comes from the runtime. */ +webout('OPEN') +webout('OBJ', 'sasgroups', [ + { + URIMEM: 'OMSOBJ:IdentityGroup\\A59LNVZG.A5000002', + MEMBERNAME: 'PUBLIC', + MEMBERTYPE: 'UserGroup', + MEMBERUPDATED: '19Aug2020:06:21:05', + MEMBERCREATED: '19Aug2020:06:21:05', + EMAIL: '' + } +]) +webout('OBJ', 'sasmembers', [ + { + URIMEM: 'OMSOBJ:Person\\A59LNVZG.AP000003', + MEMBERNAME: 'sasdemo', + MEMBERTYPE: 'User', + MEMBERUPDATED: '19Aug2020:06:22:00', + MEMBERCREATED: '19Aug2020:06:22:00', + EMAIL: '' + } +]) +webout('CLOSE') diff --git a/sas/mocks/sasjs/services/usernav/userroles.js b/sas/mocks/sasjs/services/usernav/userroles.js index afc8037..562e05d 100644 --- a/sas/mocks/sasjs/services/usernav/userroles.js +++ b/sas/mocks/sasjs/services/usernav/userroles.js @@ -1,258 +1,259 @@ -_webout = `{"SYSDATE" : "26SEP22" -,"SYSTIME" : "08:51" -, "roles": -[ -{ -"ROLEURI": "A59LNVZG.A5000009", -"ROLENAME": "Add-In for Microsoft Office: Advanced", -"ROLEDESC": "Provides all capabilities in the SAS Add-In for Microsoft Office." -}, -{ -"ROLEURI": "A59LNVZG.A500000A", -"ROLENAME": "Add-In for Microsoft Office: Analysis", -"ROLEDESC": "Provides basic data analysis, reporting, and other capabilities." -}, -{ -"ROLEURI": "A59LNVZG.A500000B", -"ROLENAME": "Add-In for Microsoft Office: OLAP", -"ROLEDESC": "Supports viewing OLAP cubes in PivotTables and provides other capabilities." -}, -{ -"ROLEURI": "A59LNVZG.A500001E", -"ROLENAME": "BI Dashboard: Administration", -"ROLEDESC": "Provides SAS BI Dashboard administration capabilities." -}, -{ -"ROLEURI": "A59LNVZG.A500000K", -"ROLENAME": "Comments: Administrator", -"ROLEDESC": "" -}, -{ -"ROLEURI": "A59LNVZG.A5000010", -"ROLENAME": "Data Management: Lineage", -"ROLEDESC": "Provides default access to the SAS Lineage application." -}, -{ -"ROLEURI": "A59LNVZG.A500001H", -"ROLENAME": "Decision Manager Common: Administration", -"ROLEDESC": "Decision Manager Common Administrative role" -}, -{ -"ROLEURI": "A59LNVZG.A500000C", -"ROLENAME": "Enterprise Guide: Advanced", -"ROLEDESC": "Provides all capabilities in SAS Enterprise Guide." -}, -{ -"ROLEURI": "A59LNVZG.A500000D", -"ROLENAME": "Enterprise Guide: Analysis", -"ROLEDESC": "Provides basic data analysis, reporting, and other capabilities." -}, -{ -"ROLEURI": "A59LNVZG.A500000E", -"ROLENAME": "Enterprise Guide: OLAP", -"ROLEDESC": "Supports viewing OLAP cubes in the OLAP Analyzer and provides other capabilities." -}, -{ -"ROLEURI": "A59LNVZG.A500000F", -"ROLENAME": "Enterprise Guide: Programming", -"ROLEDESC": "Provides SAS programming, stored process authoring, and other capabilities." -}, -{ -"ROLEURI": "A59LNVZG.A5000020", -"ROLENAME": "Factory Miner: Admin", -"ROLEDESC": "Provides Factory Miner Admin capabilities." -}, -{ -"ROLEURI": "A59LNVZG.A500001Z", -"ROLENAME": "Factory Miner: User", -"ROLEDESC": "Provides Factory Miner User capabilities to create projects and run models." -}, -{ -"ROLEURI": "A59LNVZG.A500000S", -"ROLENAME": "Fonts Administrator", -"ROLEDESC": "Font Administrator can reload fonts to update the fonts metadata." -}, -{ -"ROLEURI": "A59LNVZG.A500001L", -"ROLENAME": "Forecast Server: Administrator", -"ROLEDESC": "Provides capabilities for a Forecasting Administrator." -}, -{ -"ROLEURI": "A59LNVZG.A500001J", -"ROLENAME": "Forecast Server: Analyst", -"ROLEDESC": "Provides capabiliites for a Forecasting Analyst." -}, -{ -"ROLEURI": "A59LNVZG.A500001I", -"ROLENAME": "Forecast Server: Browser", -"ROLEDESC": "Provides basic forecasting viewing and reporting capabilities." -}, -{ -"ROLEURI": "A59LNVZG.A500001K", -"ROLENAME": "Forecast Server: Forecaster", -"ROLEDESC": "Provides capabilities for a Forecaster." -}, -{ -"ROLEURI": "A59LNVZG.A5000011", -"ROLENAME": "Home: Administration", -"ROLEDESC": "Provides all capabilities for the home page (hub)." -}, -{ -"ROLEURI": "A59LNVZG.A5000012", -"ROLENAME": "Home: Usage", -"ROLEDESC": "Provides all non-administrative capabilities for the home page (hub)." -}, -{ -"ROLEURI": "A59LNVZG.A500000L", -"ROLENAME": "Job Execution: Job Administrator", -"ROLEDESC": "Provides all capabilities for the Job Execution Service, a component of the Web Infra Platform Services." -}, -{ -"ROLEURI": "A59LNVZG.A500000N", -"ROLENAME": "Job Execution: Job Designer", -"ROLEDESC": "Provides job and task definition capabilities." -}, -{ -"ROLEURI": "A59LNVZG.A500000O", -"ROLENAME": "Job Execution: Job Scheduler", -"ROLEDESC": "Provides job scheduling capabilities." -}, -{ -"ROLEURI": "A59LNVZG.A500000M", -"ROLENAME": "Job Execution: Job Submitter", -"ROLEDESC": "Provides normal job submission capabilities." -}, -{ -"ROLEURI": "A59LNVZG.A500000Z", -"ROLENAME": "Lineage: Administration", -"ROLEDESC": "Provides all functionality related to administrative activities for the SAS Lineage application." -}, -{ -"ROLEURI": "A59LNVZG.A5000006", -"ROLENAME": "META: Operators Role", -"ROLEDESC": "Supports adding repositories and operating the metadata server [implicit]." -}, -{ -"ROLEURI": "A59LNVZG.A5000004", -"ROLENAME": "META: Unrestricted Users Role", -"ROLEDESC": "Provides all capabilities in SAS Management Console and provides access to all metadata [implicit]." -}, -{ -"ROLEURI": "A59LNVZG.A5000005", -"ROLENAME": "META: User and Group Administrators Role", -"ROLEDESC": "Supports management of users, groups, and roles other than the unrestricted role [implicit]." -}, -{ -"ROLEURI": "A59LNVZG.A500000G", -"ROLENAME": "Management Console: Advanced", -"ROLEDESC": "Provides access to all plug-ins in SAS Management Console." -}, -{ -"ROLEURI": "A59LNVZG.A500000H", -"ROLENAME": "Management Console: Content Management", -"ROLEDESC": "Provides access to the Folders tab, User Manager, Library Manager, and Authorization Manager." -}, -{ -"ROLEURI": "A59LNVZG.A500001N", -"ROLENAME": "SAS Studio: Report Consumer", -"ROLEDESC": "Provides access to view or run existing SAS Studio reports without general access to SAS programming environment." -}, -{ -"ROLEURI": "A59LNVZG.A500001M", -"ROLENAME": "SAS Studio: Usage", -"ROLEDESC": "Provides access to the SAS programming environment." -}, -{ -"ROLEURI": "A59LNVZG.A500000R", -"ROLENAME": "Theme Designer: Administration", -"ROLEDESC": "Provides Theme Designer administration capabilities." -}, -{ -"ROLEURI": "A59LNVZG.A500001X", -"ROLENAME": "Time Series Studio: Administrator", -"ROLEDESC": "Enables administrator access to the product and features, including access to all product content regardless of ownership." -}, -{ -"ROLEURI": "A59LNVZG.A500001Y", -"ROLENAME": "Time Series Studio: User", -"ROLEDESC": "Enables normal user access to the product and features." -}, -{ -"ROLEURI": "A59LNVZG.A5000017", -"ROLENAME": "Visual Analytics: Administration", -"ROLEDESC": "Provides administrative capabilities in the Visual Analytics suite." -}, -{ -"ROLEURI": "A59LNVZG.A5000015", -"ROLENAME": "Visual Analytics: Analysis", -"ROLEDESC": "If SAS Visual Statistics is licensed, provides the Build Analytical Model capability." -}, -{ -"ROLEURI": "A59LNVZG.A5000018", -"ROLENAME": "Visual Analytics: Basic", -"ROLEDESC": "Provides functionality for guest access (if applicable) and entry-level users." -}, -{ -"ROLEURI": "A59LNVZG.A5000016", -"ROLENAME": "Visual Analytics: Data Building", -"ROLEDESC": "Provides data preparation capabilities in the Visual Analytics suite." -}, -{ -"ROLEURI": "A59LNVZG.A5000014", -"ROLENAME": "Visual Analytics: Report Viewing", -"ROLEDESC": "Provides report viewing capabilities in the Visual Analytics suite." -}, -{ -"ROLEURI": "A59LNVZG.A500001B", -"ROLENAME": "Web Report Studio: Advanced", -"ROLEDESC": "Provides all capabilities in SAS Web Report Studio except the manage report distribution capability." -}, -{ -"ROLEURI": "A59LNVZG.A500001A", -"ROLENAME": "Web Report Studio: Report Creation", -"ROLEDESC": "Provides report creation capabilities." -}, -{ -"ROLEURI": "A59LNVZG.A5000019", -"ROLENAME": "Web Report Studio: Report Viewing", -"ROLEDESC": "Provides report viewing capabilities." -}, -{ -"ROLEURI": "A59LNVZG.A500001R", -"ROLENAME": "mdlmgradminusage", -"ROLEDESC": "Provides ability to perform all Model Manager tasks" -}, -{ -"ROLEURI": "A59LNVZG.A500001S", -"ROLENAME": "mdlmgradvusage", -"ROLEDESC": "Provides the ability to perform all SAS Model Manager tasks, except for administrative tasks" -}, -{ -"ROLEURI": "A59LNVZG.A500001T", -"ROLENAME": "mdlmgrusage", -"ROLEDESC": "Provides the ability to perform all SAS Model Manager tasks, except for advanced or administrative tasks" -} -] -,"_DEBUG" : "" -,"_METAUSER": "sasdemo@SAS" -,"_METAPERSON": "sasdemo" -,"_PROGRAM" : "/Projects/app/dc/services/usernav/userroles" -,"AUTOEXEC" : "D%3A%5Copt%5Csasinside%5CConfig%5CLev1%5CSASApp%5CStoredProcessServer%5Cautoexec.sas" -,"MF_GETUSER" : "sasdemo" -,"SYSCC" : "0" -,"SYSENCODING" : "wlatin1" -,"SYSERRORTEXT" : "" -,"SYSHOSTNAME" : "SAS" -,"SYSPROCESSID" : "41DD8057DF99CAC140C2300000000000" -,"SYSPROCESSMODE" : "SAS Stored Process Server" -,"SYSPROCESSNAME" : "" -,"SYSJOBID" : "27448" -,"SYSSCPL" : "Linunx" -,"SYSSITE" : "123" -,"SYSUSERID" : "sassrv" -,"SYSVLONG" : "9.04.01M7P080520" -,"SYSWARNINGTEXT" : "ENCODING option ignored for files opened with RECFM=N." -,"END_DTTM" : "2022-09-26T08:51:10.892000" -,"MEMSIZE" : "46GB" -} -` \ No newline at end of file +/* A fixed sample of what the SAS service returns for this screen. + The members are the same shape; the envelope now comes from the runtime. */ +webout('OPEN') +webout('OBJ', 'roles', [ + { + ROLEURI: 'A59LNVZG.A5000009', + ROLENAME: 'Add-In for Microsoft Office: Advanced', + ROLEDESC: + 'Provides all capabilities in the SAS Add-In for Microsoft Office.' + }, + { + ROLEURI: 'A59LNVZG.A500000A', + ROLENAME: 'Add-In for Microsoft Office: Analysis', + ROLEDESC: 'Provides basic data analysis, reporting, and other capabilities.' + }, + { + ROLEURI: 'A59LNVZG.A500000B', + ROLENAME: 'Add-In for Microsoft Office: OLAP', + ROLEDESC: + 'Supports viewing OLAP cubes in PivotTables and provides other capabilities.' + }, + { + ROLEURI: 'A59LNVZG.A500001E', + ROLENAME: 'BI Dashboard: Administration', + ROLEDESC: 'Provides SAS BI Dashboard administration capabilities.' + }, + { + ROLEURI: 'A59LNVZG.A500000K', + ROLENAME: 'Comments: Administrator', + ROLEDESC: '' + }, + { + ROLEURI: 'A59LNVZG.A5000010', + ROLENAME: 'Data Management: Lineage', + ROLEDESC: 'Provides default access to the SAS Lineage application.' + }, + { + ROLEURI: 'A59LNVZG.A500001H', + ROLENAME: 'Decision Manager Common: Administration', + ROLEDESC: 'Decision Manager Common Administrative role' + }, + { + ROLEURI: 'A59LNVZG.A500000C', + ROLENAME: 'Enterprise Guide: Advanced', + ROLEDESC: 'Provides all capabilities in SAS Enterprise Guide.' + }, + { + ROLEURI: 'A59LNVZG.A500000D', + ROLENAME: 'Enterprise Guide: Analysis', + ROLEDESC: 'Provides basic data analysis, reporting, and other capabilities.' + }, + { + ROLEURI: 'A59LNVZG.A500000E', + ROLENAME: 'Enterprise Guide: OLAP', + ROLEDESC: + 'Supports viewing OLAP cubes in the OLAP Analyzer and provides other capabilities.' + }, + { + ROLEURI: 'A59LNVZG.A500000F', + ROLENAME: 'Enterprise Guide: Programming', + ROLEDESC: + 'Provides SAS programming, stored process authoring, and other capabilities.' + }, + { + ROLEURI: 'A59LNVZG.A5000020', + ROLENAME: 'Factory Miner: Admin', + ROLEDESC: 'Provides Factory Miner Admin capabilities.' + }, + { + ROLEURI: 'A59LNVZG.A500001Z', + ROLENAME: 'Factory Miner: User', + ROLEDESC: + 'Provides Factory Miner User capabilities to create projects and run models.' + }, + { + ROLEURI: 'A59LNVZG.A500000S', + ROLENAME: 'Fonts Administrator', + ROLEDESC: + 'Font Administrator can reload fonts to update the fonts metadata.' + }, + { + ROLEURI: 'A59LNVZG.A500001L', + ROLENAME: 'Forecast Server: Administrator', + ROLEDESC: 'Provides capabilities for a Forecasting Administrator.' + }, + { + ROLEURI: 'A59LNVZG.A500001J', + ROLENAME: 'Forecast Server: Analyst', + ROLEDESC: 'Provides capabiliites for a Forecasting Analyst.' + }, + { + ROLEURI: 'A59LNVZG.A500001I', + ROLENAME: 'Forecast Server: Browser', + ROLEDESC: 'Provides basic forecasting viewing and reporting capabilities.' + }, + { + ROLEURI: 'A59LNVZG.A500001K', + ROLENAME: 'Forecast Server: Forecaster', + ROLEDESC: 'Provides capabilities for a Forecaster.' + }, + { + ROLEURI: 'A59LNVZG.A5000011', + ROLENAME: 'Home: Administration', + ROLEDESC: 'Provides all capabilities for the home page (hub).' + }, + { + ROLEURI: 'A59LNVZG.A5000012', + ROLENAME: 'Home: Usage', + ROLEDESC: + 'Provides all non-administrative capabilities for the home page (hub).' + }, + { + ROLEURI: 'A59LNVZG.A500000L', + ROLENAME: 'Job Execution: Job Administrator', + ROLEDESC: + 'Provides all capabilities for the Job Execution Service, a component of the Web Infra Platform Services.' + }, + { + ROLEURI: 'A59LNVZG.A500000N', + ROLENAME: 'Job Execution: Job Designer', + ROLEDESC: 'Provides job and task definition capabilities.' + }, + { + ROLEURI: 'A59LNVZG.A500000O', + ROLENAME: 'Job Execution: Job Scheduler', + ROLEDESC: 'Provides job scheduling capabilities.' + }, + { + ROLEURI: 'A59LNVZG.A500000M', + ROLENAME: 'Job Execution: Job Submitter', + ROLEDESC: 'Provides normal job submission capabilities.' + }, + { + ROLEURI: 'A59LNVZG.A500000Z', + ROLENAME: 'Lineage: Administration', + ROLEDESC: + 'Provides all functionality related to administrative activities for the SAS Lineage application.' + }, + { + ROLEURI: 'A59LNVZG.A5000006', + ROLENAME: 'META: Operators Role', + ROLEDESC: + 'Supports adding repositories and operating the metadata server [implicit].' + }, + { + ROLEURI: 'A59LNVZG.A5000004', + ROLENAME: 'META: Unrestricted Users Role', + ROLEDESC: + 'Provides all capabilities in SAS Management Console and provides access to all metadata [implicit].' + }, + { + ROLEURI: 'A59LNVZG.A5000005', + ROLENAME: 'META: User and Group Administrators Role', + ROLEDESC: + 'Supports management of users, groups, and roles other than the unrestricted role [implicit].' + }, + { + ROLEURI: 'A59LNVZG.A500000G', + ROLENAME: 'Management Console: Advanced', + ROLEDESC: 'Provides access to all plug-ins in SAS Management Console.' + }, + { + ROLEURI: 'A59LNVZG.A500000H', + ROLENAME: 'Management Console: Content Management', + ROLEDESC: + 'Provides access to the Folders tab, User Manager, Library Manager, and Authorization Manager.' + }, + { + ROLEURI: 'A59LNVZG.A500001N', + ROLENAME: 'SAS Studio: Report Consumer', + ROLEDESC: + 'Provides access to view or run existing SAS Studio reports without general access to SAS programming environment.' + }, + { + ROLEURI: 'A59LNVZG.A500001M', + ROLENAME: 'SAS Studio: Usage', + ROLEDESC: 'Provides access to the SAS programming environment.' + }, + { + ROLEURI: 'A59LNVZG.A500000R', + ROLENAME: 'Theme Designer: Administration', + ROLEDESC: 'Provides Theme Designer administration capabilities.' + }, + { + ROLEURI: 'A59LNVZG.A500001X', + ROLENAME: 'Time Series Studio: Administrator', + ROLEDESC: + 'Enables administrator access to the product and features, including access to all product content regardless of ownership.' + }, + { + ROLEURI: 'A59LNVZG.A500001Y', + ROLENAME: 'Time Series Studio: User', + ROLEDESC: 'Enables normal user access to the product and features.' + }, + { + ROLEURI: 'A59LNVZG.A5000017', + ROLENAME: 'Visual Analytics: Administration', + ROLEDESC: + 'Provides administrative capabilities in the Visual Analytics suite.' + }, + { + ROLEURI: 'A59LNVZG.A5000015', + ROLENAME: 'Visual Analytics: Analysis', + ROLEDESC: + 'If SAS Visual Statistics is licensed, provides the Build Analytical Model capability.' + }, + { + ROLEURI: 'A59LNVZG.A5000018', + ROLENAME: 'Visual Analytics: Basic', + ROLEDESC: + 'Provides functionality for guest access (if applicable) and entry-level users.' + }, + { + ROLEURI: 'A59LNVZG.A5000016', + ROLENAME: 'Visual Analytics: Data Building', + ROLEDESC: + 'Provides data preparation capabilities in the Visual Analytics suite.' + }, + { + ROLEURI: 'A59LNVZG.A5000014', + ROLENAME: 'Visual Analytics: Report Viewing', + ROLEDESC: + 'Provides report viewing capabilities in the Visual Analytics suite.' + }, + { + ROLEURI: 'A59LNVZG.A500001B', + ROLENAME: 'Web Report Studio: Advanced', + ROLEDESC: + 'Provides all capabilities in SAS Web Report Studio except the manage report distribution capability.' + }, + { + ROLEURI: 'A59LNVZG.A500001A', + ROLENAME: 'Web Report Studio: Report Creation', + ROLEDESC: 'Provides report creation capabilities.' + }, + { + ROLEURI: 'A59LNVZG.A5000019', + ROLENAME: 'Web Report Studio: Report Viewing', + ROLEDESC: 'Provides report viewing capabilities.' + }, + { + ROLEURI: 'A59LNVZG.A500001R', + ROLENAME: 'mdlmgradminusage', + ROLEDESC: 'Provides ability to perform all Model Manager tasks' + }, + { + ROLEURI: 'A59LNVZG.A500001S', + ROLENAME: 'mdlmgradvusage', + ROLEDESC: + 'Provides the ability to perform all SAS Model Manager tasks, except for administrative tasks' + }, + { + ROLEURI: 'A59LNVZG.A500001T', + ROLENAME: 'mdlmgrusage', + ROLEDESC: + 'Provides the ability to perform all SAS Model Manager tasks, except for advanced or administrative tasks' + } +]) +webout('CLOSE')