示例#1
0
文件: v8.cs 项目: tomtangrx/jurassic
        public static void WarmUp(TestContext context)
        {
            manager = new ScriptEngineManager(@"..\..\..\Performance\Files\v8\", (engine) =>
            {
                // Replace the default random number generator with a deterministic one.
                engine.Math["random"] = engine.Evaluate(@"
                    (function() {
                      var seed = 49734321;
                      return function() {
                        // Robert Jenkins' 32 bit integer hash function.
                        seed = ((seed + 0x7ed55d16) + (seed << 12))  & 0xffffffff;
                        seed = ((seed ^ 0xc761c23c) ^ (seed >>> 19)) & 0xffffffff;
                        seed = ((seed + 0x165667b1) + (seed << 5))   & 0xffffffff;
                        seed = ((seed + 0xd3a2646c) ^ (seed << 9))   & 0xffffffff;
                        seed = ((seed + 0xfd7046c5) + (seed << 3))   & 0xffffffff;
                        seed = ((seed ^ 0xb55a4f09) ^ (seed >>> 16)) & 0xffffffff;
                        return (seed & 0xfffffff) / 0x10000000;
                      };
                    })();");

                // Some of the tests call alert if there is an error.  Since alert is not supported,
                // translate this into throwing an exception.
                engine.Global["alert"] = engine.Evaluate("(function alert(str) { throw new Error(str) })");

                // For debugging purposes, define the console object.
                engine.Global["console"] = new Jurassic.Library.FirebugConsole(engine);
            });
        }
示例#2
0
文件: v8.cs 项目: ffarzat/Jurassic
        public static void WarmUp(TestContext context)
        {
            manager = new ScriptEngineManager(@"..\..\..\Performance\Files\v8\", (engine) =>
            {
                // Replace the default random number generator with a deterministic one.
                engine.Math["random"] = engine.Evaluate(@"
                    (function() {
                      var seed = 49734321;
                      return function() {
                        // Robert Jenkins' 32 bit integer hash function.
                        seed = ((seed + 0x7ed55d16) + (seed << 12))  & 0xffffffff;
                        seed = ((seed ^ 0xc761c23c) ^ (seed >>> 19)) & 0xffffffff;
                        seed = ((seed + 0x165667b1) + (seed << 5))   & 0xffffffff;
                        seed = ((seed + 0xd3a2646c) ^ (seed << 9))   & 0xffffffff;
                        seed = ((seed + 0xfd7046c5) + (seed << 3))   & 0xffffffff;
                        seed = ((seed ^ 0xb55a4f09) ^ (seed >>> 16)) & 0xffffffff;
                        return (seed & 0xfffffff) / 0x10000000;
                      };
                    })();");

                // Some of the tests call alert if there is an error.  Since alert is not supported,
                // translate this into throwing an exception.
                engine.Global["alert"] = engine.Evaluate("(function alert(str) { throw new Error(str) })");

                // For debugging purposes, define the console object.
                engine.Global["console"] = new Jurassic.Library.FirebugConsole(engine);

            });
        }
示例#3
0
 public static void WarmUp(TestContext context)
 {
     manager = new ScriptEngineManager(@"..\..\..\Performance\Files\sunspider-0.9.1\");
 }
示例#4
0
 public static void WarmUp(TestContext context)
 {
     manager = new ScriptEngineManager(@"..\..\..\Performance\Files\sunspider-0.9.1\");
 }