@@ -22,48 +22,54 @@ import (
2222)
2323
2424func CreateDevModeTestApp (logger * types.Logger , fileData map [string ]string ) (* app.App , * appfs.WorkFs , error ) {
25- return CreateTestAppInt (logger , "/test" , fileData , true , nil , nil , nil , "app_dev_testapp" , types.AppSettings {}, nil , nil )
25+ return CreateTestAppInt (logger , "/test" , fileData , true , nil , nil , nil , "app_dev_testapp" , types.AppSettings {}, nil , nil , nil , nil )
2626}
2727
2828func CreateTestApp (logger * types.Logger , fileData map [string ]string ) (* app.App , * appfs.WorkFs , error ) {
29- return CreateTestAppInt (logger , "/test" , fileData , false , nil , nil , nil , "app_prd_testapp" , types.AppSettings {}, nil , nil )
29+ return CreateTestAppInt (logger , "/test" , fileData , false , nil , nil , nil , "app_prd_testapp" , types.AppSettings {}, nil , nil , nil , nil )
3030}
3131
3232func CreateTestAppConfig (logger * types.Logger , fileData map [string ]string , appConfig types.AppConfig ) (* app.App , * appfs.WorkFs , error ) {
33- return CreateTestAppInt (logger , "/test" , fileData , false , nil , nil , nil , "app_prd_testapp" , types.AppSettings {}, nil , & appConfig )
33+ return CreateTestAppInt (logger , "/test" , fileData , false , nil , nil , nil , "app_prd_testapp" , types.AppSettings {}, nil , & appConfig , nil , nil )
3434}
3535
3636func CreateTestAppParams (logger * types.Logger , fileData map [string ]string , params map [string ]string ) (* app.App , * appfs.WorkFs , error ) {
37- return CreateTestAppInt (logger , "/test" , fileData , false , nil , nil , nil , "app_prd_testapp" , types.AppSettings {}, params , nil )
37+ return CreateTestAppInt (logger , "/test" , fileData , false , nil , nil , nil , "app_prd_testapp" , types.AppSettings {}, params , nil , nil , nil )
3838}
3939
4040func CreateTestAppRoot (logger * types.Logger , fileData map [string ]string ) (* app.App , * appfs.WorkFs , error ) {
41- return CreateTestAppInt (logger , "/" , fileData , false , nil , nil , nil , "app_prd_testapp" , types.AppSettings {}, nil , nil )
41+ return CreateTestAppInt (logger , "/" , fileData , false , nil , nil , nil , "app_prd_testapp" , types.AppSettings {}, nil , nil , nil , nil )
4242}
4343
4444func CreateTestAppPlugin (logger * types.Logger , fileData map [string ]string ,
4545 plugins []string , permissions []types.Permission , pluginConfig map [string ]types.PluginSettings ) (* app.App , * appfs.WorkFs , error ) {
46- return CreateTestAppInt (logger , "/test" , fileData , false , plugins , permissions , pluginConfig , "app_prd_testapp" , types.AppSettings {}, nil , nil )
46+ return CreateTestAppInt (logger , "/test" , fileData , false , plugins , permissions , pluginConfig , "app_prd_testapp" , types.AppSettings {}, nil , nil , nil , nil )
4747}
4848
4949func CreateTestAppPluginRoot (logger * types.Logger , fileData map [string ]string ,
5050 plugins []string , permissions []types.Permission , pluginConfig map [string ]types.PluginSettings ) (* app.App , * appfs.WorkFs , error ) {
51- return CreateTestAppInt (logger , "/" , fileData , false , plugins , permissions , pluginConfig , "app_prd_testapp" , types.AppSettings {}, nil , nil )
51+ return CreateTestAppInt (logger , "/" , fileData , false , plugins , permissions , pluginConfig , "app_prd_testapp" , types.AppSettings {}, nil , nil , nil , nil )
5252}
5353
5454func CreateDevAppPlugin (logger * types.Logger , fileData map [string ]string , plugins []string ,
5555 permissions []types.Permission , pluginConfig map [string ]types.PluginSettings ) (* app.App , * appfs.WorkFs , error ) {
56- return CreateTestAppInt (logger , "/test" , fileData , true , plugins , permissions , pluginConfig , "app_dev_testapp" , types.AppSettings {}, nil , nil )
56+ return CreateTestAppInt (logger , "/test" , fileData , true , plugins , permissions , pluginConfig , "app_dev_testapp" , types.AppSettings {}, nil , nil , nil , nil )
5757}
5858
5959func CreateTestAppPluginId (logger * types.Logger , fileData map [string ]string ,
6060 plugins []string , permissions []types.Permission , pluginConfig map [string ]types.PluginSettings , id string , settings types.AppSettings ) (* app.App , * appfs.WorkFs , error ) {
61- return CreateTestAppInt (logger , "/test" , fileData , false , plugins , permissions , pluginConfig , id , settings , nil , nil )
61+ return CreateTestAppInt (logger , "/test" , fileData , false , plugins , permissions , pluginConfig , id , settings , nil , nil , nil , nil )
62+ }
63+
64+ func CreateTestAppAuthorizer (logger * types.Logger , fileData map [string ]string ,
65+ plugins []string , permissions []types.Permission , pluginConfig map [string ]types.PluginSettings , authorizer types.AuthorizerFunc , customPermsFunc types.CustomPermsFunc ) (* app.App , * appfs.WorkFs , error ) {
66+ return CreateTestAppInt (logger , "/test" , fileData , false , plugins , permissions , pluginConfig , "app_prd_testapp" , types.AppSettings {}, nil , nil , authorizer , customPermsFunc )
6267}
6368
6469func CreateTestAppInt (logger * types.Logger , path string , fileData map [string ]string , isDev bool ,
6570 plugins []string , permissions []types.Permission , pluginConfig map [string ]types.PluginSettings ,
66- id string , settings types.AppSettings , params map [string ]string , appConfig * types.AppConfig ) (* app.App , * appfs.WorkFs , error ) {
71+ id string , settings types.AppSettings , params map [string ]string , appConfig * types.AppConfig ,
72+ authorizer types.AuthorizerFunc , customPermsFunc types.CustomPermsFunc ) (* app.App , * appfs.WorkFs , error ) {
6773 systemConfig := types.SystemConfig {TailwindCSSCommand : "" , AllowedEnv : []string {"HOME" }}
6874 var fs appfs.ReadableFS
6975 if isDev {
@@ -107,7 +113,7 @@ func CreateTestAppInt(logger *types.Logger, path string, fileData map[string]str
107113 workFS := appfs .NewWorkFs ("" , & TestWriteFS {TestReadFS : & TestReadFS {fileData : map [string ]string {}}})
108114 a , err := app .NewApp (sourceFS , workFS , logger ,
109115 createTestAppEntry (id , path , isDev , metadata ), & systemConfig , pluginConfig , * appConfig ,
110- nil , secretManager .AppEvalTemplate , nil , & types.ServerConfig {}, nil )
116+ nil , secretManager .AppEvalTemplate , nil , & types.ServerConfig {}, authorizer , customPermsFunc )
111117 if err != nil {
112118 return nil , nil , err
113119 }
0 commit comments