public void LastBlockTypeImpliedIsUsed()
        {
            var command = ParseCommand("turn on the \"Boom Door Program\"");

            Assert.IsTrue(command is BlockCommand);
            BlockCommand bc = (BlockCommand)command;

            Assert.IsTrue(bc.entityProvider is SelectorEntityProvider);
            SelectorEntityProvider sep = (SelectorEntityProvider)bc.entityProvider;

            Assert.AreEqual(BlockType.PROGRAM, sep.GetBlockType());
        }
        public void BasicSelector()
        {
            var command = ParseCommand("recharge the \"batteries\"");

            Assert.IsTrue(command is BlockCommand);
            BlockCommand bc = (BlockCommand)command;

            Assert.IsTrue(bc.entityProvider is SelectorEntityProvider);
            SelectorEntityProvider sep = (SelectorEntityProvider)bc.entityProvider;

            Assert.AreEqual(BlockType.BATTERY, sep.GetBlockType());
            Assert.IsTrue(sep.isGroup);
            Assert.IsTrue(sep.selector is StaticVariable);
            Assert.AreEqual("batteries", CastString(sep.selector.GetValue()).GetStringValue());
        }