Merge pull request #726 from MyIgel/master
Fix CI tagging, Logger and configurable AuthController home URL
This commit is contained in:
commit
c6759cdcce
|
@ -2,7 +2,7 @@ image: php
|
|||
|
||||
variables:
|
||||
DOCKER_DRIVER: overlay2
|
||||
TEST_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_REF_NAME}
|
||||
TEST_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_REF_SLUG}
|
||||
RELEASE_IMAGE: ${CI_REGISTRY_IMAGE}:latest
|
||||
MYSQL_DATABASE: engelsystem
|
||||
MYSQL_USER: engel
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
namespace Engelsystem\Controllers;
|
||||
|
||||
use Carbon\Carbon;
|
||||
use Engelsystem\Config\Config;
|
||||
use Engelsystem\Helpers\Authenticator;
|
||||
use Engelsystem\Http\Request;
|
||||
use Engelsystem\Http\Response;
|
||||
|
@ -23,6 +24,9 @@ class AuthController extends BaseController
|
|||
/** @var UrlGeneratorInterface */
|
||||
protected $url;
|
||||
|
||||
/** @var Config */
|
||||
protected $config;
|
||||
|
||||
/** @var Authenticator */
|
||||
protected $auth;
|
||||
|
||||
|
@ -36,17 +40,20 @@ class AuthController extends BaseController
|
|||
* @param Response $response
|
||||
* @param SessionInterface $session
|
||||
* @param UrlGeneratorInterface $url
|
||||
* @param Config $config
|
||||
* @param Authenticator $auth
|
||||
*/
|
||||
public function __construct(
|
||||
Response $response,
|
||||
SessionInterface $session,
|
||||
UrlGeneratorInterface $url,
|
||||
Config $config,
|
||||
Authenticator $auth
|
||||
) {
|
||||
$this->response = $response;
|
||||
$this->session = $session;
|
||||
$this->url = $url;
|
||||
$this->config = $config;
|
||||
$this->auth = $auth;
|
||||
}
|
||||
|
||||
|
@ -100,7 +107,7 @@ class AuthController extends BaseController
|
|||
$user->last_login_at = new Carbon();
|
||||
$user->save(['touch' => false]);
|
||||
|
||||
return $this->response->redirectTo('news');
|
||||
return $this->response->redirectTo($this->config->get('home_site'));
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -26,7 +26,13 @@ class LegacyDevelopment extends Legacy
|
|||
'file' => $file . ':' . $e->getLine(),
|
||||
'stacktrace' => $this->formatStackTrace($e->getTrace()),
|
||||
];
|
||||
|
||||
ob_start(function (string $buffer) {
|
||||
return htmlspecialchars($buffer);
|
||||
});
|
||||
var_dump($data);
|
||||
ob_end_flush();
|
||||
|
||||
echo '</pre>';
|
||||
}
|
||||
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
|
||||
namespace Engelsystem\Test\Unit\Controllers;
|
||||
|
||||
use Engelsystem\Config\Config;
|
||||
use Engelsystem\Controllers\AuthController;
|
||||
use Engelsystem\Helpers\Authenticator;
|
||||
use Engelsystem\Http\Exceptions\ValidationException;
|
||||
|
@ -33,8 +34,9 @@ class AuthControllerTest extends TestCase
|
|||
$response = $this->createMock(Response::class);
|
||||
/** @var SessionInterface|MockObject $session */
|
||||
/** @var UrlGeneratorInterface|MockObject $url */
|
||||
/** @var Config $config */
|
||||
/** @var Authenticator|MockObject $auth */
|
||||
list(, $session, $url, $auth) = $this->getMocks();
|
||||
list(, $session, $url, $config, $auth) = $this->getMocks();
|
||||
|
||||
$session->expects($this->once())
|
||||
->method('get')
|
||||
|
@ -45,7 +47,7 @@ class AuthControllerTest extends TestCase
|
|||
->with('pages/login')
|
||||
->willReturn($response);
|
||||
|
||||
$controller = new AuthController($response, $session, $url, $auth);
|
||||
$controller = new AuthController($response, $session, $url, $config, $auth);
|
||||
$controller->login();
|
||||
}
|
||||
|
||||
|
@ -60,8 +62,9 @@ class AuthControllerTest extends TestCase
|
|||
/** @var Response|MockObject $response */
|
||||
$response = $this->createMock(Response::class);
|
||||
/** @var UrlGeneratorInterface|MockObject $url */
|
||||
/** @var Config $config */
|
||||
/** @var Authenticator|MockObject $auth */
|
||||
list(, , $url, $auth) = $this->getMocks();
|
||||
list(, , $url, $config, $auth) = $this->getMocks();
|
||||
$session = new Session(new MockArraySessionStorage());
|
||||
/** @var Validator|MockObject $validator */
|
||||
$validator = new Validator();
|
||||
|
@ -97,7 +100,7 @@ class AuthControllerTest extends TestCase
|
|||
->willReturn($response);
|
||||
|
||||
// No credentials
|
||||
$controller = new AuthController($response, $session, $url, $auth);
|
||||
$controller = new AuthController($response, $session, $url, $config, $auth);
|
||||
$controller->setValidator($validator);
|
||||
try {
|
||||
$controller->postLogin($request);
|
||||
|
@ -133,8 +136,9 @@ class AuthControllerTest extends TestCase
|
|||
/** @var Response $response */
|
||||
/** @var SessionInterface|MockObject $session */
|
||||
/** @var UrlGeneratorInterface|MockObject $url */
|
||||
/** @var Config $config */
|
||||
/** @var Authenticator|MockObject $auth */
|
||||
list($response, $session, $url, $auth) = $this->getMocks();
|
||||
list($response, $session, $url, $config, $auth) = $this->getMocks();
|
||||
|
||||
$session->expects($this->once())
|
||||
->method('invalidate');
|
||||
|
@ -144,7 +148,7 @@ class AuthControllerTest extends TestCase
|
|||
->with('/')
|
||||
->willReturn('https://foo.bar/');
|
||||
|
||||
$controller = new AuthController($response, $session, $url, $auth);
|
||||
$controller = new AuthController($response, $session, $url, $config, $auth);
|
||||
$return = $controller->logout();
|
||||
|
||||
$this->assertEquals(['https://foo.bar/'], $return->getHeader('location'));
|
||||
|
@ -160,9 +164,10 @@ class AuthControllerTest extends TestCase
|
|||
$session = $this->getMockForAbstractClass(SessionInterface::class);
|
||||
/** @var UrlGeneratorInterface|MockObject $url */
|
||||
$url = $this->getMockForAbstractClass(UrlGeneratorInterface::class);
|
||||
$config = new Config(['home_site' => 'news']);
|
||||
/** @var Authenticator|MockObject $auth */
|
||||
$auth = $this->createMock(Authenticator::class);
|
||||
|
||||
return [$response, $session, $url, $auth];
|
||||
return [$response, $session, $url, $config, $auth];
|
||||
}
|
||||
}
|
||||
|
|
|
@ -19,10 +19,10 @@ class LegacyDevelopmentTest extends TestCase
|
|||
$handler = new LegacyDevelopment();
|
||||
/** @var Request|MockObject $request */
|
||||
$request = $this->createMock(Request::class);
|
||||
$exception = new ErrorException('Lorem Ipsum', 4242, 1, 'foo.php', 9999);
|
||||
$exception = new ErrorException('Lorem <b>Ipsum</b>', 4242, 1, 'foo.php', 9999);
|
||||
|
||||
$regex = sprintf(
|
||||
'%%<pre.*>.*ErrorException.*4242.*Lorem Ipsum.*%s.*%s.*%s.*</pre>%%is',
|
||||
'%%<pre.*>.*ErrorException.*4242.*Lorem <b>Ipsum</b>.*%s.*%s.*%s.*</pre>%%is',
|
||||
'foo.php',
|
||||
9999,
|
||||
__FUNCTION__
|
||||
|
|
Loading…
Reference in New Issue