var key;
var count;
print(count);
switch (count) {
// engine only
case 1:
if (key != 'value in engine') {
throw "unexpected engine scope value";
}
if (context.getAttribute("key", context.GLOBAL_SCOPE ) != null) {
throw "unexpected global scope value";
}
break;
// both scopes
case 2:
if (key != 'value in engine') {
throw "unexpected engine scope value";
}
if (context.getAttribute("key", context.GLOBAL_SCOPE ) !=
"value in global") {
throw "unexpected global scope value";
}
break;
// global only
case 3:
if (key != 'value in global') {
throw "unexpected global scope value";
}
if (context.getAttribute("key", context.GLOBAL_SCOPE ) !=
"value in global") {
throw "unexpected global scope value";
}
break;
default:
throw "unexpected count";
break;
}