Exemplo n.º 1
0
 public function testCustomFilter()
 {
     $tokenFilter = new CustomTokenFilter();
     TokenFilterFactory::register($tokenFilter);
     $this->assertTrue(TokenFilterFactory::isRegisteredByName($tokenFilter::getName()));
     $data = '[[token|custom_test_filter|lower]]';
     $tokenResolver = new RegisteredTokenResolver(array('token' => 'Class.Method'));
     $tokenParser = new TokenParser();
     $tokens = $tokenParser->parseString($data);
     $tokens->resolve($tokenResolver);
     $token = $tokens->get($data);
     $this->assertEquals('class->method', $token->getTokenValue());
 }
Exemplo n.º 2
0
 /**
  * @param boolean $ignoreUnknownFilters
  * @throws UnknownFilterException
  * @return $this
  */
 public function applyFilters($ignoreUnknownFilters = True)
 {
     $unresolvedFilters = array();
     $filteredValue = $this->unfilteredTokenValue;
     foreach ($this->filters as $filterName) {
         if (!TokenFilterFactory::isRegisteredByName($filterName)) {
             if (!$ignoreUnknownFilters) {
                 throw new UnknownFilterException($filterName);
             }
             $unresolvedFilters[$filterName] = $filterName;
             continue;
         }
         $filteredValue = TokenFilterFactory::getFilteredValue($filterName, $filteredValue, $ignoreUnknownFilters);
     }
     $this->setTokenValue($filteredValue);
     $this->unresolvedFilters = $unresolvedFilters;
     return $this;
 }