/** * @covers \DCarbone\PHPClassBuilder\Utilities\NameUtils::isValidFunctionName */ public function testReturnFalseWithInvalidFunctionNames() { $this->assertFalse(NameUtils::isValidFunctionName('91notvalid')); $this->assertFalse(NameUtils::isValidFunctionName('nope nope')); $this->assertFalse(NameUtils::isValidFunctionName('')); $this->assertFalse(NameUtils::isValidFunctionName(true)); $this->assertFalse(NameUtils::isValidFunctionName(null)); $this->assertFalse(NameUtils::isValidFunctionName(12345)); }
/** * @param array $opts * @return string * @throws \DCarbone\PHPClassBuilder\Exception\MissingNameException */ public function compile(array $opts = array()) { if (false === NameUtils::isValidFunctionName($this->getName())) { throw $this->createMissingNameException('Function name not defined at compile time'); } list($type, $leadingSpaces, $includeComment, $incBody) = $this->parseCompileOpts($opts); switch ($type) { case self::COMPILETYPE_FUNCTION: return $this->_compileAsFunction($leadingSpaces, $includeComment, $incBody); case self::COMPILETYPE_CLASSMETHOD: return $this->_compileAsClassMethod($leadingSpaces, $includeComment, $incBody); // TODO: Should not be reachable, but do something? // TODO: Should not be reachable, but do something? default: return ''; } }