I see the test case fail on Firefox, but the following seems to work:
(function(global){
'use strict';
var desc = Object.getOwnPropertyDescriptor(global, 'NaN');
console.log('NaN desc', desc); // reports non-configurable
try{
delete global.NaN;
}
catch(e){ // properly throws an exception
console.log('caught', e)
}
})(this);
So it's unclear whether the problem comes from the test case or Firefox.
Regardless, the test case does "delete fnGlobalObject().NaN;"