AjScript.Tests.Interpreter.ParserTests.ParseNewVariableDefinitionAndInitialization C# (CSharp) Method

ParseNewVariableDefinitionAndInitialization() private method

private ParseNewVariableDefinitionAndInitialization ( ) : void
return void
        public void ParseNewVariableDefinitionAndInitialization()
        {
            ICommand command = ParseCommand("var x = 1;");

            Assert.IsNotNull(command);
            Assert.IsInstanceOfType(command, typeof(CompositeCommand));

            CompositeCommand composite = (CompositeCommand)command;
            Assert.AreEqual(2, composite.CommandCount);
            Assert.IsInstanceOfType(composite.Commands.First(), typeof(VarCommand));
            VarCommand varcmd = (VarCommand)composite.Commands.First();
            Assert.AreEqual("x", varcmd.Name);
            Assert.IsInstanceOfType(composite.Commands.ElementAt(1), typeof(SetVariableCommand));
            SetVariableCommand setcmd = (SetVariableCommand)composite.Commands.ElementAt(1);
            Assert.IsInstanceOfType(setcmd.Expression, typeof(ConstantExpression));

            ConstantExpression consexpr = (ConstantExpression)setcmd.Expression;

            Assert.AreEqual(1, consexpr.Value);
        }
ParserTests