public override void SetUp()
        {
            base.SetUp();

            // This is an unfortunate bit of clean up we have to do because MainServer manages things through static
            // variables and the VM is not restarted between tests.
            uint port = 9999;

            MainServer.RemoveHttpServer(port);

            BaseHttpServer server = new BaseHttpServer(port, false, 0, "");

            MainServer.AddHttpServer(server);
            MainServer.Instance = server;

            server.Start();

            m_engine    = new MockScriptEngine();
            m_urlModule = new UrlModule();

            m_scene = new SceneHelpers().SetupScene();
            SceneHelpers.SetupSceneModules(m_scene, new IniConfigSource(), m_engine, m_urlModule);

            SceneObjectGroup so = SceneHelpers.AddSceneObject(m_scene);

            m_scriptItem = TaskInventoryHelpers.AddScript(m_scene.AssetService, so.RootPart);

            // This is disconnected from the actual script - the mock engine does not set up any LSL_Api atm.
            // Possibly this could be done and we could obtain it directly from the MockScriptEngine.
            m_lslApi = new LSL_Api();
            m_lslApi.Initialize(m_engine, so.RootPart, m_scriptItem);
        }
Exemplo n.º 2
0
        public override void SetUp()
        {
            base.SetUp();

            IConfigSource configSource    = new IniConfigSource();
            IConfig       jsonStoreConfig = configSource.AddConfig("JsonStore");

            jsonStoreConfig.Set("Enabled", "true");

            m_engine = new MockScriptEngine();
            m_smcm   = new ScriptModuleCommsModule();
            JsonStoreModule jsm = new JsonStoreModule();

            m_jssm = new JsonStoreScriptModule();

            m_scene = new SceneHelpers().SetupScene();
            SceneHelpers.SetupSceneModules(m_scene, configSource, m_engine, m_smcm, jsm, m_jssm);

            try
            {
                m_smcm.RegisterScriptInvocation(this, "DummyTestMethod");
            }
            catch (ArgumentException)
            {
                Assert.Ignore("Ignoring test since running on .NET 3.5 or earlier.");
            }

            // XXX: Unfortunately, ICommsModule currently has no way of deregistering methods.
        }
            public TheContainerProperty()
            {
                _overrides[typeof(ILineProcessor)] = new List <Type>();
                var mockScriptExecutor = new MockScriptExecutor();

                _scriptExecutorType = mockScriptExecutor.GetType();

                var mockReplType = new Mock <IRepl>();

                _replType = mockReplType.Object.GetType();

                var mockScriptEngine = new MockScriptEngine();

                _scriptEngineType = mockScriptEngine.GetType();

                var initializationServices = new InitializationServices(_logProvider, _overrides);

                _runtimeServices = new RuntimeServices(
                    _logProvider,
                    _overrides,
                    _mockConsole.Object,
                    _scriptEngineType,
                    _scriptExecutorType,
                    _replType,
                    false,
                    initializationServices,
                    "script.csx");
            }
Exemplo n.º 4
0
 public void Setup()
 {
     var iniDoc = new IniDocument();
     var configSource = new IniConfigSource(iniDoc);
     configSource.AddConfig("InWorldz.Phlox");
     world = SceneHelper.CreateScene(9000, 1000, 1000);
     engine = new MockScriptEngine(world, configSource);
 }
Exemplo n.º 5
0
        public override void SetUp()
        {
            base.SetUp();

            m_engine = new MockScriptEngine();

            m_scene = new SceneHelpers().SetupScene();
            SceneHelpers.SetupSceneModules(m_scene, m_engine);
        }
Exemplo n.º 6
0
        public void Setup()
        {
            var iniDoc       = new IniDocument();
            var configSource = new IniConfigSource(iniDoc);

            configSource.AddConfig("InWorldz.Phlox");
            world = SceneHelper.CreateScene(9000, 1000, 1000);
            var engine = new MockScriptEngine(world, configSource);

            lslSystemApi = new LSLSystemAPI(engine, null, 0, UUID.Zero);
        }
Exemplo n.º 7
0
        public override void SetUp()
        {
            base.SetUp();

            m_engine = new MockScriptEngine();

            m_scene = new SceneHelpers().SetupScene();
            SceneHelpers.SetupSceneModules(m_scene, new IniConfigSource(), m_engine);

            m_so         = SceneHelpers.AddSceneObject(m_scene);
            m_scriptItem = TaskInventoryHelpers.AddScript(m_scene.AssetService, m_so.RootPart);

            // This is disconnected from the actual script - the mock engine does not set up any LSL_Api atm.
            // Possibly this could be done and we could obtain it directly from the MockScriptEngine.
            m_lslApi = new LSL_Api();
            m_lslApi.Initialize(m_engine, m_so.RootPart, m_scriptItem);
        }
Exemplo n.º 8
0
        public async Task GetDownloadsOfExampleDocumentWithCssAndJsShouldYieldAllResources()
        {
            var scripting = new MockScriptEngine(_ => { }, MimeTypeNames.DefaultJavaScript);
            var config    = Configuration.Default
                            .WithCss()
                            .With(scripting)
                            .WithDefaultLoader(new LoaderOptions {
                IsResourceLoadingEnabled = true
            });
            var content  = @"<link rel=stylesheet type=text/css href=bootstraph.css>
<link rel=stylesheet type=text/css href=fontawesome.css>
<link rel=stylesheet type=text/css href=style.css>
<body>
    <img src=foo.png>
    <iframe src=foo.html></iframe>
    <script>alert('Hello World!');</script>
    <script src=test.js></script>
</body>";
            var document = await BrowsingContext.New(config).OpenAsync(res => res.Content(content).Address("http://localhost"));

            var downloads = document.GetDownloads().ToArray();

            Assert.AreEqual(6, downloads.Length);

            foreach (var download in downloads)
            {
                Assert.IsTrue(download.IsCompleted);
                Assert.IsNotNull(download.Source);
            }

            Assert.AreEqual(document.QuerySelectorAll("link").Skip(0).First(), downloads[0].Source);
            Assert.AreEqual(document.QuerySelectorAll("link").Skip(1).First(), downloads[1].Source);
            Assert.AreEqual(document.QuerySelectorAll("link").Skip(2).First(), downloads[2].Source);
            Assert.AreEqual(document.QuerySelector("img"), downloads[3].Source);
            Assert.AreEqual(document.QuerySelector("iframe"), downloads[4].Source);
            Assert.AreEqual(document.QuerySelectorAll("script").Skip(1).First(), downloads[5].Source);
        }