예제 #1
0
        public void TestUseSharedCodeFileMultiHost()
        {
            var codefile = Path.Combine(Path.GetTempPath(), "simplecodefile.dwx");

            if (File.Exists(codefile))
            {
                File.Delete(codefile);
            }
            var interpreter = CreateInterpreter();
            var aplc        = new CodeFile(interpreter);

            aplc.CreateSimpleCodeFile(codefile, 5);
            aplc.Dispose();
            interpreter.Unload();

            var interpreter1 = CreateInterpreter(new[] { codefile });
            var interpreter2 = CreateInterpreter(new[] { codefile });
            var interpreter3 = CreateInterpreter(new[] { codefile });

            var aplc1 = new CodeFile(interpreter1);
            var aplc2 = new CodeFile(interpreter2);
            var aplc3 = new CodeFile(interpreter3);

            aplc1.Execute("#.fn1 1");
            aplc2.Execute("#.fn1 2");
            aplc3.Execute("#.fn1 3");
        }
예제 #2
0
        public void TestAttachSameCodeFileTwice()
        {
            var codefile = Path.Combine(Path.GetTempPath(), "simplecodefile2.dwx");

            if (File.Exists(codefile))
            {
                File.Delete(codefile);
            }
            var interpreter1 = CreateInterpreter();
            var aplc         = new CodeFile(interpreter1);

            aplc.CreateSimpleCodeFile(codefile, 3);
            aplc.Dispose();
            interpreter1.Unload();

            var interpreter2 = CreateInterpreter(new[] { codefile });
            var interpreter3 = CreateInterpreter(new[] { codefile });

            Assert.IsTrue(interpreter2.Unload());
            //Assert.IsTrue(interpreter3.Unload());
        }