From 092eedfdf481d82433acf378c5aa02e128077d95 Mon Sep 17 00:00:00 2001 From: Pig Fang Date: Mon, 13 Jan 2020 08:37:57 +0800 Subject: [PATCH] refactor routes --- app/Http/View/Composers/UserMenuComposer.php | 3 +- app/Http/View/Composers/UserPanelComposer.php | 2 +- resources/assets/src/views/admin/Market.vue | 2 +- resources/assets/src/views/admin/Players.vue | 2 +- resources/assets/src/views/admin/Reports.vue | 2 +- resources/assets/src/views/admin/Users.vue | 2 +- resources/assets/src/views/user/Closet.vue | 2 +- resources/assets/src/views/user/Report.vue | 2 +- .../assets/tests/views/admin/Players.test.ts | 2 +- .../assets/tests/views/admin/Users.test.ts | 2 +- .../assets/tests/views/user/Closet.test.ts | 8 +- routes/api.php | 2 +- routes/static.php | 19 +- routes/web.php | 288 +++++++++--------- .../ControllersTest/AdminControllerTest.php | 8 +- .../ControllersTest/AuthControllerTest.php | 2 + .../ControllersTest/ClosetControllerTest.php | 12 +- .../ControllersTest/MarketControllerTest.php | 6 +- .../ControllersTest/ReportControllerTest.php | 4 +- .../ControllersTest/UpdateControllerTest.php | 6 +- .../MiddlewareTest/CheckAdministratorTest.php | 6 +- .../MiddlewareTest/CheckSuperAdminTest.php | 8 +- .../MiddlewareTest/RedirectToSetupTest.php | 2 +- .../ComposersTest/FootComposerTest.php | 4 +- .../ComposersTest/SideMenuComposerTest.php | 6 +- .../ComposersTest/UserMenuComposerTest.php | 2 +- .../ComposersTest/UserPanelComposerTest.php | 4 +- 27 files changed, 209 insertions(+), 199 deletions(-) diff --git a/app/Http/View/Composers/UserMenuComposer.php b/app/Http/View/Composers/UserMenuComposer.php index dbfd1f2c..3ad58ae0 100644 --- a/app/Http/View/Composers/UserMenuComposer.php +++ b/app/Http/View/Composers/UserMenuComposer.php @@ -23,8 +23,7 @@ class UserMenuComposer public function compose(View $view) { $user = auth()->user(); - $email = base64_encode($user->email); - $avatarUrl = url('/avatar/user/'.$user->uid.'?size=25'); + $avatarUrl = route('avatar.user', ['uid' => $user->uid, 'size' => 25]); $avatar = $this->filter->apply('user_avatar', $avatarUrl, [$user]); $view->with(compact('user', 'avatar')); diff --git a/app/Http/View/Composers/UserPanelComposer.php b/app/Http/View/Composers/UserPanelComposer.php index 2d201b0b..fd0f93d2 100644 --- a/app/Http/View/Composers/UserPanelComposer.php +++ b/app/Http/View/Composers/UserPanelComposer.php @@ -23,7 +23,7 @@ class UserPanelComposer public function compose(View $view) { $user = auth()->user(); - $avatarUrl = url('/avatar/user/'.$user->uid.'?size=45'); + $avatarUrl = route('avatar.user', ['uid' => $user->uid, 'size' => 45]); $avatar = $this->filter->apply('user_avatar', $avatarUrl, [$user]); $badges = []; diff --git a/resources/assets/src/views/admin/Market.vue b/resources/assets/src/views/admin/Market.vue index 7a886e8b..daa4572c 100644 --- a/resources/assets/src/views/admin/Market.vue +++ b/resources/assets/src/views/admin/Market.vue @@ -130,7 +130,7 @@ export default { }, methods: { async fetchData() { - this.plugins = await this.$http.get('/admin/plugins/market-data') + this.plugins = await this.$http.get('/admin/plugins/market/list') }, async installPlugin({ name, originalIndex }) { this.installing = name diff --git a/resources/assets/src/views/admin/Players.vue b/resources/assets/src/views/admin/Players.vue index 48f4b8c1..4562bdd4 100644 --- a/resources/assets/src/views/admin/Players.vue +++ b/resources/assets/src/views/admin/Players.vue @@ -149,7 +149,7 @@ export default { methods: { async fetchData() { const { data, totalRecords } = await this.$http.get( - `/admin/player-data${location.search}`, + `/admin/players/list${location.search}`, !location.search && this.serverParams, ) this.totalRecords = totalRecords diff --git a/resources/assets/src/views/admin/Reports.vue b/resources/assets/src/views/admin/Reports.vue index 087a9ee7..ebe256ec 100644 --- a/resources/assets/src/views/admin/Reports.vue +++ b/resources/assets/src/views/admin/Reports.vue @@ -110,7 +110,7 @@ export default { methods: { async fetchData() { const { data, totalRecords } = await this.$http.get( - '/admin/report-data', + '/admin/reports/list', this.serverParams, ) this.totalRecords = totalRecords diff --git a/resources/assets/src/views/admin/Users.vue b/resources/assets/src/views/admin/Users.vue index 02405a7e..780b3851 100644 --- a/resources/assets/src/views/admin/Users.vue +++ b/resources/assets/src/views/admin/Users.vue @@ -199,7 +199,7 @@ export default { methods: { async fetchData() { const { data, totalRecords } = await this.$http.get( - `/admin/user-data${location.search}`, + `/admin/users/list${location.search}`, !location.search && this.serverParams, ) this.totalRecords = totalRecords diff --git a/resources/assets/src/views/user/Closet.vue b/resources/assets/src/views/user/Closet.vue index d09c5af1..0952cc73 100644 --- a/resources/assets/src/views/user/Closet.vue +++ b/resources/assets/src/views/user/Closet.vue @@ -245,7 +245,7 @@ export default { items, category, total_pages: totalPages, }, } = await this.$http.get( - '/user/closet-data', + '/user/closet/list', { category: this.category, q: this.query, diff --git a/resources/assets/src/views/user/Report.vue b/resources/assets/src/views/user/Report.vue index f108b052..ee345e88 100644 --- a/resources/assets/src/views/user/Report.vue +++ b/resources/assets/src/views/user/Report.vue @@ -75,7 +75,7 @@ export default { }, methods: { async fetchData() { - this.reports = await this.$http.get('/user/report-list') + this.reports = await this.$http.get('/user/reports/list') }, }, } diff --git a/resources/assets/tests/views/admin/Players.test.ts b/resources/assets/tests/views/admin/Players.test.ts index 8d923641..39ab5804 100644 --- a/resources/assets/tests/views/admin/Players.test.ts +++ b/resources/assets/tests/views/admin/Players.test.ts @@ -11,7 +11,7 @@ test('fetch data after initializing', () => { Vue.prototype.$http.get.mockResolvedValue({ data: [] }) mount(Players) expect(Vue.prototype.$http.get).toBeCalledWith( - '/admin/player-data', + '/admin/players/list', { page: 1, perPage: 10, search: '', sortField: 'pid', sortType: 'asc', }, diff --git a/resources/assets/tests/views/admin/Users.test.ts b/resources/assets/tests/views/admin/Users.test.ts index b5666d5f..6287170e 100644 --- a/resources/assets/tests/views/admin/Users.test.ts +++ b/resources/assets/tests/views/admin/Users.test.ts @@ -15,7 +15,7 @@ test('fetch data after initializing', () => { Vue.prototype.$http.get.mockResolvedValue({ data: [] }) mount(Users) expect(Vue.prototype.$http.get).toBeCalledWith( - '/admin/user-data', + '/admin/users/list', { page: 1, perPage: 10, search: '', sortField: 'uid', sortType: 'asc', }, diff --git a/resources/assets/tests/views/user/Closet.test.ts b/resources/assets/tests/views/user/Closet.test.ts index feab6776..b0f0b172 100644 --- a/resources/assets/tests/views/user/Closet.test.ts +++ b/resources/assets/tests/views/user/Closet.test.ts @@ -14,7 +14,7 @@ test('fetch closet data before mount', () => { mount(Closet) jest.runAllTicks() expect(Vue.prototype.$http.get).toBeCalledWith( - '/user/closet-data', + '/user/closet/list', { category: 'skin', q: '', @@ -46,7 +46,7 @@ test('switch tabs', () => { .trigger('click') jest.runAllTicks() expect(Vue.prototype.$http.get).toBeCalledWith( - '/user/closet-data', + '/user/closet/list', { category: 'skin', q: '', @@ -59,7 +59,7 @@ test('switch tabs', () => { .trigger('click') jest.runAllTicks() expect(Vue.prototype.$http.get).toBeCalledWith( - '/user/closet-data', + '/user/closet/list', { category: 'cape', q: '', @@ -100,7 +100,7 @@ test('search textures', () => { jest.runAllTimers() jest.runAllTicks() expect(Vue.prototype.$http.get).toBeCalledWith( - '/user/closet-data', + '/user/closet/list', { category: 'skin', q: 'q', diff --git a/routes/api.php b/routes/api.php index 8a281f5f..72e33cf1 100644 --- a/routes/api.php +++ b/routes/api.php @@ -1,6 +1,6 @@ group(function () { Route::post('login', 'AuthController@jwtLogin'); diff --git a/routes/static.php b/routes/static.php index 60aedb56..e9d2fecb 100644 --- a/routes/static.php +++ b/routes/static.php @@ -1,14 +1,15 @@ name('avatar.')->group(function () { + Route::get('player/{name}', 'TextureController@avatarByPlayer')->name('player'); + Route::get('user/{uid}', 'TextureController@avatarByUser')->name('user'); + Route::get('{tid}', 'TextureController@avatarByTexture')->name('texture'); +}); -Route::get('/raw/{tid}', 'TextureController@raw'); - -Route::get('/preview/{tid}', 'TextureController@preview'); +Route::get('preview/{tid}', 'TextureController@preview'); diff --git a/routes/web.php b/routes/web.php index 8785e45e..64864b7a 100644 --- a/routes/web.php +++ b/routes/web.php @@ -13,173 +13,181 @@ use App\Http\Middleware; | */ -Route::get('/', 'HomeController@index'); -Route::get('/index.php', 'HomeController@index'); +Route::get('', 'HomeController@index'); -Route::get('/locale/{lang}', 'HomeController@locale'); +Route::prefix('auth')->name('auth.')->group(function () { + Route::middleware('guest')->group(function () { + Route::get('login', 'AuthController@login')->name('login'); + Route::post('login', 'AuthController@handleLogin')->name('login'); -/* - * Auth - */ -Route::group(['prefix' => 'auth'], function () { - Route::group(['middleware' => 'guest'], function () { - Route::get('/login', 'AuthController@login'); - Route::get('/register', 'AuthController@register'); - Route::get('/forgot', 'AuthController@forgot'); - Route::get('/reset/{uid}', 'AuthController@reset')->name('auth.reset')->middleware('signed'); + Route::get('register', 'AuthController@register')->name('register'); + Route::post('register', 'AuthController@handleRegister')->name('register'); - Route::get('/login/{driver}', 'AuthController@oauthLogin'); - Route::get('/login/{driver}/callback', 'AuthController@oauthCallback'); + Route::get('forgot', 'AuthController@forgot')->name('forgot'); + Route::post('forgot', 'AuthController@handleForgot')->name('forgot'); + + Route::middleware('signed')->name('reset')->group(function () { + Route::get('reset/{uid}', 'AuthController@reset'); + Route::post('reset/{uid}', 'AuthController@handleReset'); + }); + + Route::get('login/{driver}', 'AuthController@oauthLogin'); + Route::get('login/{driver}/callback', 'AuthController@oauthCallback'); }); - Route::post('/logout', 'AuthController@logout')->middleware('authorize'); - Route::any('/captcha', 'AuthController@captcha'); + Route::post('logout', 'AuthController@logout')->name('logout')->middleware('authorize'); + Route::any('captcha', 'AuthController@captcha'); - Route::post('/login', 'AuthController@handleLogin'); - Route::post('/register', 'AuthController@handleRegister'); - Route::post('/forgot', 'AuthController@handleForgot'); - Route::post('/reset/{uid}', 'AuthController@handleReset')->middleware('signed'); - Route::view('/bind', 'auth.bind')->middleware(['authorize', Middleware\EnsureEmailFilled::class]); - Route::post('/bind', 'AuthController@fillEmail')->middleware(['authorize', Middleware\EnsureEmailFilled::class]); - Route::get('/verify/{uid}', 'AuthController@verify')->name('auth.verify')->middleware('signed'); + Route::middleware(['authorize', Middleware\EnsureEmailFilled::class]) + ->name('bind') + ->group(function () { + Route::view('bind', 'auth.bind'); + Route::post('bind', 'AuthController@fillEmail'); + }); + + Route::get('verify/{uid}', 'AuthController@verify')->name('verify')->middleware('signed'); }); -/* - * User Center - */ -Route::group([ - 'middleware' => ['authorize', Middleware\RequireBindPlayer::class], - 'prefix' => 'user', -], function () { - Route::any('', 'UserController@index'); - Route::get('/notifications/{id}', 'UserController@readNotification'); - Route::get('/score-info', 'UserController@scoreInfo'); - Route::post('/sign', 'UserController@sign'); +Route::prefix('user') + ->name('user.') + ->middleware(['authorize', Middleware\RequireBindPlayer::class]) + ->group(function () { + Route::get('', 'UserController@index')->name('home'); + Route::get('notifications/{id}', 'UserController@readNotification')->name('notification'); + Route::get('score-info', 'UserController@scoreInfo')->name('score'); + Route::post('sign', 'UserController@sign')->name('sign'); - Route::view('/reports', 'user.report'); - Route::get('/report-list', 'ReportController@track'); + Route::prefix('reports')->group(function () { + Route::view('', 'user.report'); + Route::get('list', 'ReportController@track'); + }); - // Profile - Route::get('/profile', 'UserController@profile'); - Route::post('/profile', 'UserController@handleProfile'); - Route::post('/profile/avatar', 'UserController@setAvatar'); + Route::prefix('profile')->group(function () { + Route::get('', 'UserController@profile')->name('profile'); + Route::post('', 'UserController@handleProfile')->name('profile'); + Route::post('avatar', 'UserController@setAvatar')->name('profile.avatar'); + }); - // Email Verification - Route::post('/email-verification', 'UserController@sendVerificationEmail'); + Route::post('email-verification', 'UserController@sendVerificationEmail'); - // Player - Route::group(['prefix' => 'player', 'middleware' => 'verified'], function () { - Route::any('', 'PlayerController@index'); - Route::get('/list', 'PlayerController@listAll'); - Route::post('/add', 'PlayerController@add'); - Route::post('/set/{pid}', 'PlayerController@setTexture'); - Route::post('/texture/clear/{pid}', 'PlayerController@clearTexture'); - Route::post('/rename/{pid}', 'PlayerController@rename'); - Route::post('/delete/{pid}', 'PlayerController@delete'); - Route::view('/bind', 'user.bind'); - Route::post('/bind', 'PlayerController@bind'); + Route::prefix('player') + ->name('player.') + ->middleware('verified') + ->group(function () { + Route::get('', 'PlayerController@index')->name('page'); + Route::get('list', 'PlayerController@listAll')->name('list'); + Route::post('add', 'PlayerController@add')->name('add'); + Route::post('set/{pid}', 'PlayerController@setTexture')->name('set'); + Route::post('texture/clear/{pid}', 'PlayerController@clearTexture')->name('clear'); + Route::post('rename/{pid}', 'PlayerController@rename')->name('rename'); + Route::post('delete/{pid}', 'PlayerController@delete')->name('delete'); + Route::view('bind', 'user.bind')->name('bind'); + Route::post('bind', 'PlayerController@bind')->name('bind'); + }); + + Route::prefix('closet')->name('closet.')->group(function () { + Route::get('', 'ClosetController@index')->name('page'); + Route::get('list', 'ClosetController@getClosetData')->name('list'); + Route::post('add', 'ClosetController@add')->name('add'); + Route::post('remove/{tid}', 'ClosetController@remove')->name('remove'); + Route::post('rename/{tid}', 'ClosetController@rename')->name('rename'); + }); + + // OAuth2 Management + Route::view('oauth/manage', 'user.oauth')->middleware('verified'); }); - // Closet - Route::get('/closet', 'ClosetController@index'); - Route::get('/closet-data', 'ClosetController@getClosetData'); - Route::post('/closet/add', 'ClosetController@add'); - Route::post('/closet/remove/{tid}', 'ClosetController@remove'); - Route::post('/closet/rename/{tid}', 'ClosetController@rename'); +Route::prefix('skinlib')->name('skinlib.')->group(function () { + Route::view('', 'skinlib.index')->name('home'); + Route::any('info/{tid}', 'SkinlibController@info')->name('info'); + Route::any('show/{tid}', 'SkinlibController@show')->name('show'); + Route::any('data', 'SkinlibController@getSkinlibFiltered')->name('list'); - // OAuth2 Management - Route::view('/oauth/manage', 'user.oauth')->middleware('verified'); -}); - -/* - * Skin Library - */ -Route::group(['prefix' => 'skinlib'], function () { - Route::view('', 'skinlib.index'); - Route::any('/info/{tid}', 'SkinlibController@info'); - Route::any('/show/{tid}', 'SkinlibController@show'); - Route::any('/data', 'SkinlibController@getSkinlibFiltered'); - - Route::group([ - 'middleware' => ['authorize', 'verified'], - ], function () { - Route::get('/upload', 'SkinlibController@upload'); - Route::post('/upload', 'SkinlibController@handleUpload'); - Route::post('/model', 'SkinlibController@model'); - Route::post('/rename', 'SkinlibController@rename'); - Route::post('/privacy', 'SkinlibController@privacy'); - Route::post('/delete', 'SkinlibController@delete'); - Route::post('/report', 'ReportController@submit'); + Route::middleware(['authorize', 'verified'])->group(function () { + Route::prefix('upload')->name('upload')->group(function () { + Route::get('', 'SkinlibController@upload'); + Route::post('', 'SkinlibController@handleUpload'); + }); + Route::post('model', 'SkinlibController@model'); + Route::post('rename', 'SkinlibController@rename'); + Route::post('privacy', 'SkinlibController@privacy'); + Route::post('delete', 'SkinlibController@delete'); + Route::post('report', 'ReportController@submit'); }); }); -/* - * Admin Panel - */ -Route::group(['middleware' => ['authorize', 'admin'], 'prefix' => 'admin'], function () { - Route::get('/', 'AdminController@index'); - Route::get('/chart', 'AdminController@chartData'); - Route::post('/notifications/send', 'AdminController@sendNotification'); +Route::prefix('admin') + ->name('admin.') + ->middleware(['authorize', 'admin']) + ->group(function () { + Route::get('', 'AdminController@index'); + Route::get('chart', 'AdminController@chartData'); + Route::post('notifications/send', 'AdminController@sendNotification'); - Route::any('/customize', 'AdminController@customize'); - Route::any('/score', 'AdminController@score'); - Route::any('/options', 'AdminController@options'); - Route::any('/resource', 'AdminController@resource'); + Route::any('customize', 'AdminController@customize'); + Route::any('score', 'AdminController@score'); + Route::any('options', 'AdminController@options'); + Route::any('resource', 'AdminController@resource'); - Route::get('/status', 'AdminController@status'); + Route::get('status', 'AdminController@status'); - Route::view('/users', 'admin.users'); - Route::post('/users', 'AdminController@userAjaxHandler'); - Route::any('/user-data', 'AdminController@getUserData'); + Route::prefix('users')->group(function () { + Route::view('', 'admin.users'); + Route::post('', 'AdminController@userAjaxHandler'); + Route::get('list', 'AdminController@getUserData'); + }); - Route::view('/players', 'admin.players'); - Route::post('/players', 'AdminController@playerAjaxHandler'); - Route::any('/player-data', 'AdminController@getPlayerData'); + Route::prefix('players')->group(function () { + Route::view('', 'admin.players'); + Route::post('', 'AdminController@playerAjaxHandler'); + Route::get('list', 'AdminController@getPlayerData'); + }); - Route::view('/reports', 'admin.reports'); - Route::post('/reports', 'ReportController@review'); - Route::any('/report-data', 'ReportController@manage'); + Route::prefix('reports')->group(function () { + Route::view('', 'admin.reports'); + Route::post('', 'ReportController@review'); + Route::any('list', 'ReportController@manage'); + }); - Route::group(['prefix' => 'i18n'], function () { - Route::view('', 'admin.i18n'); - Route::get('list', 'TranslationsController@list'); - Route::post('', 'TranslationsController@create'); - Route::put('', 'TranslationsController@update'); - Route::delete('', 'TranslationsController@delete'); + Route::prefix('i18n')->group(function () { + Route::view('', 'admin.i18n'); + Route::get('list', 'TranslationsController@list'); + Route::post('', 'TranslationsController@create'); + Route::put('', 'TranslationsController@update'); + Route::delete('', 'TranslationsController@delete'); + }); + + Route::prefix('plugins')->group(function () { + Route::get('data', 'PluginController@getPluginData'); + + Route::view('manage', 'admin.plugins'); + Route::post('manage', 'PluginController@manage'); + Route::any('config/{name}', 'PluginController@config'); + Route::get('readme/{name}', 'PluginController@readme'); + + Route::prefix('market')->group(function () { + Route::view('', 'admin.market'); + Route::get('list', 'MarketController@marketData'); + Route::post('download', 'MarketController@download'); + }); + }); + + Route::prefix('update')->middleware('super-admin')->group(function () { + Route::get('', 'UpdateController@showUpdatePage'); + Route::post('download', 'UpdateController@download'); + }); }); - Route::group(['prefix' => 'plugins', 'middleware' => 'super-admin'], function () { - Route::get('/data', 'PluginController@getPluginData'); - - Route::view('/manage', 'admin.plugins'); - Route::post('/manage', 'PluginController@manage'); - Route::any('/config/{name}', 'PluginController@config'); - Route::get('/readme/{name}', 'PluginController@readme'); - - Route::view('/market', 'admin.market'); - Route::get('/market-data', 'MarketController@marketData'); - Route::post('/market/download', 'MarketController@download'); +Route::prefix('setup')->group(function () { + Route::middleware('setup')->group(function () { + Route::view('', 'setup.wizard.welcome'); + Route::any('database', 'SetupController@database'); + Route::view('info', 'setup.wizard.info'); + Route::post('finish', 'SetupController@finish'); }); - Route::group(['prefix' => 'update', 'middleware' => 'super-admin'], function () { - Route::any('', 'UpdateController@showUpdatePage'); - Route::any('/download', 'UpdateController@download'); - }); -}); - -/* - * Setup and Update - */ -Route::group(['prefix' => 'setup'], function () { - Route::group(['middleware' => 'setup'], function () { - Route::view('/', 'setup.wizard.welcome'); - Route::any('/database', 'SetupController@database'); - Route::view('/info', 'setup.wizard.info'); - Route::post('/finish', 'SetupController@finish'); - }); - - Route::group(['middleware' => 'authorize'], function () { - Route::view('/update', 'setup.updates.welcome')->middleware('setup'); - Route::any('/exec-update', 'UpdateController@update')->middleware('setup'); + Route::middleware('authorize')->group(function () { + Route::view('update', 'setup.updates.welcome')->middleware('setup'); + Route::any('exec-update', 'UpdateController@update')->middleware('setup'); }); }); diff --git a/tests/HttpTest/ControllersTest/AdminControllerTest.php b/tests/HttpTest/ControllersTest/AdminControllerTest.php index 8058aa1a..329ce90e 100644 --- a/tests/HttpTest/ControllersTest/AdminControllerTest.php +++ b/tests/HttpTest/ControllersTest/AdminControllerTest.php @@ -151,7 +151,7 @@ class AdminControllerTest extends TestCase public function testGetUserData() { - $this->getJson('/admin/user-data') + $this->getJson('/admin/users/list') ->assertJsonStructure([ 'data' => [[ 'uid', @@ -166,7 +166,7 @@ class AdminControllerTest extends TestCase ]); $user = factory(User::class)->create(); - $this->getJson('/admin/user-data?uid='.$user->uid) + $this->getJson('/admin/users/list?uid='.$user->uid) ->assertJson([ 'data' => [[ 'uid' => $user->uid, @@ -189,7 +189,7 @@ class AdminControllerTest extends TestCase $player = factory(Player::class)->create(); $user = $player->user; - $this->getJson('/admin/player-data') + $this->getJson('/admin/players/list') ->assertJsonStructure([ 'data' => [[ 'pid', @@ -201,7 +201,7 @@ class AdminControllerTest extends TestCase ]], ]); - $this->getJson('/admin/player-data?uid='.$user->uid) + $this->getJson('/admin/players/list?uid='.$user->uid) ->assertJson([ 'data' => [[ 'pid' => $player->pid, diff --git a/tests/HttpTest/ControllersTest/AuthControllerTest.php b/tests/HttpTest/ControllersTest/AuthControllerTest.php index 4f5251db..db16b167 100644 --- a/tests/HttpTest/ControllersTest/AuthControllerTest.php +++ b/tests/HttpTest/ControllersTest/AuthControllerTest.php @@ -177,6 +177,7 @@ class AuthControllerTest extends TestCase $this->flushSession(); // Logged in should be in success if logged in with player name + auth()->logout(); $this->postJson( '/auth/login', [ 'identification' => $player->name, @@ -453,6 +454,7 @@ class AuthControllerTest extends TestCase // Require player name option(['register_with_player_name' => true]); + auth()->logout(); $this->postJson( '/auth/register', [ diff --git a/tests/HttpTest/ControllersTest/ClosetControllerTest.php b/tests/HttpTest/ControllersTest/ClosetControllerTest.php index 76e57df4..982e2c7a 100644 --- a/tests/HttpTest/ControllersTest/ClosetControllerTest.php +++ b/tests/HttpTest/ControllersTest/ClosetControllerTest.php @@ -38,7 +38,7 @@ class ClosetControllerTest extends TestCase }); // Use default query parameters - $this->getJson('/user/closet-data') + $this->getJson('/user/closet/list') ->assertJsonStructure([ 'data' => [ 'category', @@ -48,17 +48,17 @@ class ClosetControllerTest extends TestCase ]); // Responsive - $result = $this->json('get', '/user/closet-data?perPage=0')->json()['data']; + $result = $this->json('get', '/user/closet/list?perPage=0')->json()['data']; $this->assertCount(6, $result['items']); - $result = $this->json('get', '/user/closet-data?perPage=8')->json()['data']; + $result = $this->json('get', '/user/closet/list?perPage=8')->json()['data']; $this->assertCount(8, $result['items']); - $result = $this->json('get', '/user/closet-data?perPage=8&page=2')->json()['data']; + $result = $this->json('get', '/user/closet/list?perPage=8&page=2')->json()['data']; $this->assertCount(2, $result['items']); // Get capes $cape = factory(Texture::class, 'cape')->create(); $this->user->closet()->attach($cape->tid, ['item_name' => 'custom_name']); - $this->getJson('/user/closet-data?category=cape') + $this->getJson('/user/closet/list?category=cape') ->assertJson(['data' => [ 'category' => 'cape', 'total_pages' => 1, @@ -71,7 +71,7 @@ class ClosetControllerTest extends TestCase // Search by keyword $random = $textures->random(); - $this->getJson('/user/closet-data?q='.$random->name) + $this->getJson('/user/closet/list?q='.$random->name) ->assertJson(['data' => [ 'category' => 'skin', 'total_pages' => 1, diff --git a/tests/HttpTest/ControllersTest/MarketControllerTest.php b/tests/HttpTest/ControllersTest/MarketControllerTest.php index 72f955a7..d1e49f2d 100644 --- a/tests/HttpTest/ControllersTest/MarketControllerTest.php +++ b/tests/HttpTest/ControllersTest/MarketControllerTest.php @@ -119,7 +119,7 @@ class MarketControllerTest extends TestCase ]); // Expected an exception, but unable to be asserted. - $this->getJson('/admin/plugins/market-data'); + $this->getJson('/admin/plugins/market/list'); $this->mock(PluginManager::class, function ($mock) { $mock->shouldReceive('get') @@ -132,7 +132,7 @@ class MarketControllerTest extends TestCase ->andReturn(null); $mock->shouldReceive('getUnsatisfied')->twice(); }); - $this->getJson('/admin/plugins/market-data') + $this->getJson('/admin/plugins/market/list') ->assertJsonStructure([ [ 'name', @@ -146,7 +146,7 @@ class MarketControllerTest extends TestCase ], ]); - $this->getJson('/admin/plugins/market-data') + $this->getJson('/admin/plugins/market/list') ->assertJson(['message' => 'Only version 1 of market registry is accepted.']); } } diff --git a/tests/HttpTest/ControllersTest/ReportControllerTest.php b/tests/HttpTest/ControllersTest/ReportControllerTest.php index 711e810f..84f87d00 100644 --- a/tests/HttpTest/ControllersTest/ReportControllerTest.php +++ b/tests/HttpTest/ControllersTest/ReportControllerTest.php @@ -113,7 +113,7 @@ class ReportControllerTest extends TestCase $report->save(); $this->actingAs($user) - ->getJson('/user/report-list') + ->getJson('/user/reports/list') ->assertJson([[ 'tid' => 1, 'reason' => 'test', @@ -136,7 +136,7 @@ class ReportControllerTest extends TestCase $report->save(); $this->actingAs($reporter) - ->getJson('/admin/report-data') + ->getJson('/admin/reports/list') ->assertJson([ 'totalRecords' => 1, 'data' => [[ diff --git a/tests/HttpTest/ControllersTest/UpdateControllerTest.php b/tests/HttpTest/ControllersTest/UpdateControllerTest.php index fea90590..d9bda627 100644 --- a/tests/HttpTest/ControllersTest/UpdateControllerTest.php +++ b/tests/HttpTest/ControllersTest/UpdateControllerTest.php @@ -60,7 +60,7 @@ class UpdateControllerTest extends TestCase $this->appendToGuzzleQueue([ new Response(200, [], $this->mockFakeUpdateInfo('1.2.3')), ]); - $this->getJson('/admin/update/download') + $this->postJson('/admin/update/download') ->assertJson([ 'code' => 1, 'message' => trans('admin.update.info.up-to-date'), @@ -74,7 +74,7 @@ class UpdateControllerTest extends TestCase $this->mock(PackageManager::class, function ($mock) { $mock->shouldReceive('download')->andThrow(new \Exception('ddd')); }); - $this->getJson('/admin/update/download')->assertJson(['code' => 1]); + $this->postJson('/admin/update/download')->assertJson(['code' => 1]); $this->mock(PackageManager::class, function ($mock) { $mock->shouldReceive('download')->andReturnSelf(); $mock->shouldReceive('extract')->andReturn(true); @@ -83,7 +83,7 @@ class UpdateControllerTest extends TestCase $mock->shouldReceive('delete')->with(storage_path('options.php'))->once(); $mock->shouldReceive('exists')->with(storage_path('install.lock'))->andReturn(true); }); - $this->getJson('/admin/update/download') + $this->postJson('/admin/update/download') ->assertJson(['code' => 0, 'message' => trans('admin.update.complete')]); } diff --git a/tests/HttpTest/MiddlewareTest/CheckAdministratorTest.php b/tests/HttpTest/MiddlewareTest/CheckAdministratorTest.php index d7ad0184..57d4f57e 100644 --- a/tests/HttpTest/MiddlewareTest/CheckAdministratorTest.php +++ b/tests/HttpTest/MiddlewareTest/CheckAdministratorTest.php @@ -12,17 +12,17 @@ class CheckAdministratorTest extends TestCase $this->get('/admin')->assertRedirect('/auth/login'); // Normal user - $this->actingAs(factory(User::class)->make()) + $this->actingAs(factory(User::class)->create()) ->get('/admin') ->assertStatus(403); // Admin - $this->actingAs(factory(User::class, 'admin')->make()) + $this->actingAs(factory(User::class, 'admin')->create()) ->get('/admin') ->assertSuccessful(); // Super admin - $this->actingAs(factory(User::class, 'superAdmin')->make()) + $this->actingAs(factory(User::class, 'superAdmin')->create()) ->get('/admin') ->assertSuccessful(); } diff --git a/tests/HttpTest/MiddlewareTest/CheckSuperAdminTest.php b/tests/HttpTest/MiddlewareTest/CheckSuperAdminTest.php index f7126e89..a3bb6b19 100644 --- a/tests/HttpTest/MiddlewareTest/CheckSuperAdminTest.php +++ b/tests/HttpTest/MiddlewareTest/CheckSuperAdminTest.php @@ -9,13 +9,13 @@ class CheckSuperAdminTest extends TestCase public function testHandle() { // Admin - $this->actAs(factory(User::class, 'admin')->make()) - ->get('/admin/plugins/manage') + $this->actAs(factory(User::class, 'admin')->create()) + ->get('/admin/update') ->assertForbidden(); // Super admin - $this->actAs(factory(User::class, 'superAdmin')->make()) - ->get('/admin/plugins/manage') + $this->actAs(factory(User::class, 'superAdmin')->create()) + ->get('/admin/update') ->assertSuccessful(); } } diff --git a/tests/HttpTest/MiddlewareTest/RedirectToSetupTest.php b/tests/HttpTest/MiddlewareTest/RedirectToSetupTest.php index 9dce4ca0..286058a7 100644 --- a/tests/HttpTest/MiddlewareTest/RedirectToSetupTest.php +++ b/tests/HttpTest/MiddlewareTest/RedirectToSetupTest.php @@ -12,7 +12,7 @@ class RedirectToSetupTest extends TestCase public function testHandle() { - $superAdmin = factory(User::class, 'superAdmin')->make(); + $superAdmin = factory(User::class, 'superAdmin')->create(); $current = config('app.version'); config(['app.version' => '100.0.0']); diff --git a/tests/HttpTest/ViewTest/ComposersTest/FootComposerTest.php b/tests/HttpTest/ViewTest/ComposersTest/FootComposerTest.php index d4a708fd..c592a3fa 100644 --- a/tests/HttpTest/ViewTest/ComposersTest/FootComposerTest.php +++ b/tests/HttpTest/ViewTest/ComposersTest/FootComposerTest.php @@ -18,7 +18,7 @@ class FootComposerTest extends TestCase option([ 'custom_js' => '"
"