public function setUp() { $elevator = new Elevator(); $this->parser = new InstructionParser($elevator); $this->floorObserver = new FloorObserver($this->parser); $elevator->attach($this->floorObserver); }
protected function execute(InputInterface $input, OutputInterface $output) { $elevator = new Elevator(); $instructionParser = new InstructionParser($elevator); $floorObserver = new FloorObserver($instructionParser); $elevator->attach($floorObserver); $instructions = file_get_contents(__DIR__ . '/instructions.txt'); $instructionParser->parseInstructions($instructions); $output->writeln('Puzzle 2 answer: ' . $floorObserver->getInstructionNumber()); }