/** * @param \Box\TestScribe\Mock\MockClass $mockClass * @param string $injectMethodName * * @return string */ public function genInjectedMockStatement(MockClass $mockClass, $injectMethodName) { $createMockObjectStatement = $this->mockRenderer->renderAMock($mockClass); $injectStatement = $this->genInjectionStatement($mockClass, $injectMethodName); // @TODO (ryang 8/6/14) : better handling of indentations. $combinedStatements = ArrayUtil::joinNonEmptyStringsWithNewLine([$createMockObjectStatement, $injectStatement], 1); return $combinedStatements; }
/** * Generate the argument list as a string and * its referenced mock statements. * * @param \Box\TestScribe\ArgumentInfo\Arguments $argsObj * * @return \Box\TestScribe\Renderers\ArgumentsRenderResult */ public function renderArguments(Arguments $argsObj) { $expressions = $argsObj->getExpressions(); $argumentsString = implode(', ', $expressions); $mocks = $argsObj->getMocks(); $mockObjectStatementArray = []; foreach ($mocks as $mock) { $mockObjectStatement = $this->mockRenderer->renderAMock($mock); $mockObjectStatementArray[] = $mockObjectStatement; } $mockObjectStatementsString = ArrayUtil::joinNonEmptyStringsWithNewLine($mockObjectStatementArray, 2); $result = new ArgumentsRenderResult($argumentsString, $mockObjectStatementsString); return $result; }