- 
          
 - 
                Notifications
    
You must be signed in to change notification settings  - Fork 88
 
Request: added withUrl() #69
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
| 
           Can you show an example of a test where you need this? I never needed anything like it, instead it would be really benefitial for my tests if Request would not be a service (and Response as well for that matter). Also I certainly wouldn't like this method in the IRequest interface.  | 
    
| 
           @JanTvrdik I like the idea, doing this every time is tedious.  | 
    
          
 Feel free to join the relevant discussion. 
 Sorry, I have a really bad memory. I found the code I have written (6 days ago) and the  class DevRouter implements Application\IRouter
{
    // *.signaly.cz -> *.signaly.l  
    // *.signaly.cz -> localhost/signaly/www/*
    public function __construct($fromMask, $toMask, Application\IRouter $innerRouter)
    {
        $this->fromMask = $fromMask;
        $this->toMask = $toMask;
        $this->innerRouter = $innerRouter;
    }
    public function match(Nette\Http\IRequest $httpRequest)
    {
        $fixedUrl = $this->transformIn($httpRequest->url);
        $fixedHttpRequest = $httpRequest->withUrl($fixedUrl); // <-- THIS IS THE LINE
        return $this->innerRouter->match($fixedHttpRequest);
    }
    public function constructUrl(Request $appRequest, Nette\Http\Url $refUrl)
    {
        $url = $this->innerRouter->constructUrl($appRequest, $refUrl);
        $fixedUrl = $this->transformOut($url);
        return $fixedUrl;
    }
} | 
    
| 
           In my opinion you should just write a static helper method   | 
    
1dc599c    to
    f35d20f      
    Compare
  
    7981e33    to
    3fb64f5      
    Compare
  
    b9f06ea    to
    4f6d6c9      
    Compare
  
    2ff2f22    to
    40175d7      
    Compare
  
    b031216    to
    9979093      
    Compare
  
    da24b94    to
    540335c      
    Compare
  
    e7c7e2d    to
    bf945f3      
    Compare
  
    9a14e6e    to
    a20fb8f      
    Compare
  
    55488bd    to
    2042d2e      
    Compare
  
    4960652    to
    5e67add      
    Compare
  
    689f4ae    to
    33aae19      
    Compare
  
    09923de    to
    02ae846      
    Compare
  
    
It's often useful (e.g. in tests) to modify URL inside httpRequest. Doing this is really annoying because Request has lot of constructor parameters. The naming (
with*) is based on PSR-7.What do you think about this idea? Tests are currently missing.