Exemplo n.º 1
0
        public void CallFunctionThatThrowsException()
        {
            DemoClassFour dc3 = new DemoClassFour();

            FunctionDefinition[] defs = FunctionDefinitionCreator.CreateDefinitions(dc3, typeof(DemoClassFour));
            Assert.AreEqual(1, defs.Length);

            List <FunctionDefinition> moreFunctionDefinitions = new List <FunctionDefinition> {
                GetPrintFunction()
            };

            moreFunctionDefinitions.AddRange(defs);

            TextReader  programString = File.OpenText("code77.txt");
            SprakRunner program       = new SprakRunner(programString, moreFunctionDefinitions.ToArray());

            program.run();

            Assert.AreEqual(0, program.getCompileTimeErrorHandler().getErrors().Count);
            Assert.AreEqual(1, program.getRuntimeErrorHandler().getErrors().Count);

            program.getRuntimeErrorHandler().printErrorsToConsole();
        }
        public void CallFunctionThatThrowsException()
        {
            DemoClassFour dc3 = new DemoClassFour();
            FunctionDefinition[] defs = FunctionDefinitionCreator.CreateDefinitions(dc3, typeof(DemoClassFour));
            Assert.AreEqual(1, defs.Length);

            List<FunctionDefinition> moreFunctionDefinitions = new List<FunctionDefinition> {
                GetPrintFunction ()
            };

            moreFunctionDefinitions.AddRange (defs);

            TextReader programString = File.OpenText("code77.txt");
            SprakRunner program = new SprakRunner(programString, moreFunctionDefinitions.ToArray());

            program.run();

            Assert.AreEqual (0, program.getCompileTimeErrorHandler().getErrors().Count);
            Assert.AreEqual (1, program.getRuntimeErrorHandler().getErrors().Count);

            program.getRuntimeErrorHandler().printErrorsToConsole();
        }