function it_inserts_use_statement_at_the_end_of_use_statement_block(Editor $editor, File $file, FullyQualifiedName $fullyQualifiedName) { $insertUseStatement = new InsertUseStatement($file->getWrappedObject(), $fullyQualifiedName->getWrappedObject()); $fullyQualifiedName->getNamespace()->willReturn(self::NAME_SPACE); $fullyQualifiedName->getFullyQualifiedName()->willReturn(self::FULLY_QUALIFIED_NAME); $editor->hasBelow($file, self::NAME_SPACE_PATTERN, 0)->willReturn(false); $editor->hasBelow($file, self::USE_STATEMENT_PATTERN, 0)->willReturn(false); $editor->jumpBelow($file, InsertUseStatementHandler::CLASS_ENDING, 0)->shouldBeCalled(); $editor->hasAbove($file, InsertUseStatementHandler::USE_STATEMENT)->willReturn(true); $editor->jumpAbove($file, InsertUseStatementHandler::USE_STATEMENT)->shouldBeCalled(); $editor->insertBelow($file, self::USE_STATEMENT)->shouldBeCalled(); $this->handle($insertUseStatement); }