This test is to see if a local file can run a local script. 
Currently this test cannot be run manually on Windows because we do not have a function like pathToLocalResource() outside of DRT. 

Test Passed. Local script loaded and run.
