1
0
mirror of https://github.com/elyby/accounts.git synced 2025-05-31 14:11:46 +05:30
Files
api
common
console
data
docker
tests
codeception
_output
api
bin
common
_output
_support
fixtures
templates
unit
behaviors
components
Mojang
ApiTest.php
db
fixtures
helpers
models
validators
TestCase.php
_bootstrap.php
.gitignore
_bootstrap.php
codeception.yml
unit.suite.yml
config
console
codeception.yml
docker-compose.yml
php.sh
run-tests.sh
.dockerignore
.env-dist
.gitignore
.gitlab-ci.yml
Dockerfile
Dockerfile-dev
README.md
autocompletion.php
composer.json
docker-compose.dev.yml
docker-compose.prod.yml
yii
accounts/tests/codeception/common/unit/components/Mojang/ApiTest.php
2016-10-31 02:11:52 +03:00

55 lines
1.7 KiB
PHP

<?php
namespace codeception\common\unit\components\Mojang;
use common\components\Mojang\Api;
use common\components\Mojang\response\UsernameToUUIDResponse;
use GuzzleHttp\Client as GuzzleClient;
use GuzzleHttp\Handler\MockHandler;
use GuzzleHttp\HandlerStack;
use GuzzleHttp\Psr7\Response;
use tests\codeception\common\unit\TestCase;
use Yii;
class ApiTest extends TestCase {
/**
* @var MockHandler
*/
private $handler;
public function _before() {
parent::_before();
$this->handler = new MockHandler();
$handler = HandlerStack::create($this->handler);
Yii::$app->set('guzzle', new GuzzleClient([
'handler' => $handler,
]));
}
public function testUsernameToUUID() {
$this->handler->append(new Response(200, [], '{"id": "7125ba8b1c864508b92bb5c042ccfe2b","name": "KrisJelbring"}'));
$response = (new Api())->usernameToUUID('KrisJelbring');
$this->assertInstanceOf(UsernameToUUIDResponse::class, $response);
$this->assertEquals('7125ba8b1c864508b92bb5c042ccfe2b', $response->id);
$this->assertEquals('KrisJelbring', $response->name);
}
/**
* @expectedException \common\components\Mojang\exceptions\NoContentException
*/
public function testUsernameToUUIDNoContent() {
$this->handler->append(new Response(204));
(new Api())->usernameToUUID('some-non-exists-user');
}
/**
* @expectedException \GuzzleHttp\Exception\RequestException
*/
public function testUsernameToUUID404() {
$this->handler->append(new Response(404, [], '{"error":"Not Found","errorMessage":"The server has not found anything matching the request URI"}'));
(new Api())->usernameToUUID('#hashedNickname');
}
}