Exemple #1
0
        public void ParseHeaterDeclarationBlock()
        {
            JSProgram program = new JSProgram();

            program.AddHeaterDeclarationBlock("z");
            TestTools.ExecuteJS(program);

            XmlNode    node       = TestTools.GetWorkspace();
            ParserInfo parserInfo = new ParserInfo();

            parserInfo.EnterDFG();
            HeaterDeclaration heater = (HeaterDeclaration)XmlParser.ParseBlock(node, null, parserInfo, true);

            Assert.AreEqual(0, parserInfo.ParseExceptions.Count, parserInfo.ParseExceptions.FirstOrDefault()?.Message);
        }
Exemple #2
0
        public void ParseFluidBlock()
        {
            JSProgram program = new JSProgram();

            program.AddFluidSegment("k", "a", 10, false);
            TestTools.ExecuteJS(program);

            XmlNode    node       = TestTools.GetWorkspace();
            ParserInfo parserInfo = new ParserInfo();

            parserInfo.EnterDFG();
            parserInfo.AddVariable("", VariableType.FLUID, "a");
            Fluid input = (Fluid)XmlParser.ParseBlock(node, new DFG <Block>(), parserInfo);

            Assert.AreEqual(0, parserInfo.ParseExceptions.Count, parserInfo.ParseExceptions.FirstOrDefault()?.Message);
        }
Exemple #3
0
        public void ParseInputBlock()
        {
            JSProgram program = new JSProgram();

            program.AddInputBlock("a", 20);
            TestTools.ExecuteJS(program);

            XmlNode    node       = TestTools.GetWorkspace();
            ParserInfo parserInfo = new ParserInfo();

            parserInfo.EnterDFG();
            parserInfo.AddVariable("", VariableType.FLUID, "a");
            InputDeclaration input = (InputDeclaration)XmlParser.ParseBlock(node, null, parserInfo, true);

            Assert.AreEqual(0, parserInfo.ParseExceptions.Count, parserInfo.ParseExceptions.FirstOrDefault()?.Message);
            Assert.AreEqual("a", input.OutputVariable);
            Assert.AreEqual(20, input.Amount);
        }
Exemple #4
0
        public void ParseWasteBlock()
        {
            JSProgram program = new JSProgram();

            program.AddWasteSegment("a", "z", 1249, false);
            TestTools.ExecuteJS(program);

            XmlNode    node       = TestTools.GetWorkspace();
            ParserInfo parserInfo = new ParserInfo();

            parserInfo.EnterDFG();
            parserInfo.AddVariable("", VariableType.FLUID, "a");
            parserInfo.AddVariable("", VariableType.WASTE, "z");
            Block input = XmlParser.ParseBlock(node, new DFG <Block>(), parserInfo);

            Assert.AreEqual(0, parserInfo.ParseExceptions.Count, parserInfo.ParseExceptions.FirstOrDefault()?.Message);
            Assert.IsTrue(input is WasteUsage);
        }
Exemple #5
0
        public void ParseMixerBlock()
        {
            JSProgram program = new JSProgram();

            program.AddMixerSegment("a", "b", 10, false, "c", 0, true);
            TestTools.ExecuteJS(program);

            XmlNode    node       = TestTools.GetWorkspace();
            ParserInfo parserInfo = new ParserInfo();

            parserInfo.EnterDFG();
            parserInfo.AddVariable("", VariableType.FLUID, "a");
            parserInfo.AddVariable("", VariableType.FLUID, "b");
            parserInfo.AddVariable("", VariableType.FLUID, "c");
            Mixer mixer = (Mixer)XmlParser.ParseBlock(node, null, parserInfo);

            Assert.AreEqual(0, parserInfo.ParseExceptions.Count, parserInfo.ParseExceptions.FirstOrDefault()?.Message);
            Assert.AreEqual("a", mixer.OutputVariable);
        }
Exemple #6
0
        public void ParseHeaterBlock()
        {
            JSProgram program = new JSProgram();

            program.AddHeaterSegment("a", "z", 173, 39, "b", 29, false);
            TestTools.ExecuteJS(program);

            XmlNode    node       = TestTools.GetWorkspace();
            ParserInfo parserInfo = new ParserInfo();

            parserInfo.EnterDFG();
            parserInfo.AddVariable("", VariableType.FLUID, "b");
            parserInfo.AddVariable("", VariableType.HEATER, "z");
            HeaterUsage heater = (HeaterUsage)XmlParser.ParseBlock(node, null, parserInfo);

            Assert.AreEqual(0, parserInfo.ParseExceptions.Count, parserInfo.ParseExceptions.FirstOrDefault()?.Message);
            Assert.AreEqual("a", heater.OutputVariable);
            Assert.AreEqual(173, heater.Temperature);
            Assert.AreEqual(39, heater.Time);
        }