| var ScriptContext = javax.script.ScriptContext; |
| |
| if (key == undefined || key != 'engine value') { |
| throw "unexpected engine scope value"; |
| } |
| |
| // pre-defined context variable refers to current ScriptContext |
| if (context.getAttribute('key', ScriptContext.GLOBAL_SCOPE) != 'global value') { |
| throw "unexpected global scope value"; |
| } |
| |
| // change the engine scope value |
| key = 'new engine value'; |
| |
| if (context.getAttribute('key', ScriptContext.GLOBAL_SCOPE) != 'global value') { |
| throw "global scope should not change here"; |
| } |
| |
| // delete engine scope value |
| delete key; |
| |
| if (key == undefined && key != 'global value') { |
| throw 'global scope should be visible after engine scope removal'; |
| } |