Bonjour,
Voila je rencontre un petit problème avec mon code.
<?php
/**
* Created by IntelliJ IDEA.
* User: MAXIME EPOH
* Date: 04/03/2018
* Time: 17:20
*/
namespace Framework\Router {
/**
* Class Route
* Represent a matched route
* @package Framework\Router
*/
class Route {
/**
* @var string
*/
private $name;
/**
* @var callable
*/
private $callback;
/**
* @var array
*/
private $parameters;
/**
* Route constructor.
* @param string $name
* @param callable $callback
* @param array $parameters
*/
public function __construct(string $name, callable $callback, array $parameters)
{
$this->name = $name;
$this->callback = $callback;
$this->parameters = $parameters;
}
/**
* @return string
*/
public function getName(): string {
return $this->name;
}
/**
* @return callable
*/
public function getCallback(): callable {
return $this->callback;
}
/**
* Retrieve the URL Parameters
* @return string[]
*/
public function getParams(): array {
return $this->parameters;
}
}
}
Je voudrais pouvoir éliminer l'erreure que j'otiens de la ligne 39 de mon Route.php
C:\WebPages\MonFramework>.\vendor\bin\phpunit
PHPUnit 7.0.2 by Sebastian Bergmann and contributors.
.....EEEE 9 / 9 (100%)
Time: 209 ms, Memory: 4.00MB
There were 4 errors:
1) Tests\Framework\RouterTest::testGetMethod
ArgumentCountError: Too few arguments to function Framework\Router\Route::__construct(), 0 passed in C:\WebPages\MonFramework\tests\Framework\RouterTest.php on line 29 and exactly 3 expected
C:\WebPages\MonFramework\src\Framework\Router\Route.php:39
C:\WebPages\MonFramework\tests\Framework\RouterTest.php:29
2) Tests\Framework\RouterTest::testGetMethodIfUrlDoesNotExists
ArgumentCountError: Too few arguments to function Framework\Router\Route::__construct(), 0 passed in C:\WebPages\MonFramework\tests\Framework\RouterTest.php on line 29 and exactly 3 expected
C:\WebPages\MonFramework\src\Framework\Router\Route.php:39
C:\WebPages\MonFramework\tests\Framework\RouterTest.php:29
3) Tests\Framework\RouterTest::testGetMethodWithParameters
ArgumentCountError: Too few arguments to function Framework\Router\Route::__construct(), 0 passed in C:\WebPages\MonFramework\tests\Framework\RouterTest.php on line 29 and exactly 3 expected
C:\WebPages\MonFramework\src\Framework\Router\Route.php:39
C:\WebPages\MonFramework\tests\Framework\RouterTest.php:29
4) Tests\Framework\RouterTest::testGenerateUri
ArgumentCountError: Too few arguments to function Framework\Router\Route::__construct(), 0 passed in C:\WebPages\MonFramework\tests\Framework\RouterTest.php on line 29 and exactly 3 expected
C:\WebPages\MonFramework\src\Framework\Router\Route.php:39
C:\WebPages\MonFramework\tests\Framework\RouterTest.php:29
ERRORS!
Tests: 9, Assertions: 10, Errors: 4.
Merci pour votre soutien.
Amicalement
Salut, je pense que dans ton fichier RouterTest.php
vers la ligne 29, tu as dû instancier l'objet Route
sans lui passer de paramètre et c'est ça qui a causé l'erreur, d'ailleurs si ce code vient de la formation de Grafikart sur la POO, c'est pas l'objet Route
qu'il faut instancier dans les tests mais c'est l'objet Router
qui lui ne prend pas de paramètre.