mirror of
https://github.com/arcan1s/ffxivbis.git
synced 2025-08-01 06:59:57 +00:00
initial commit
This commit is contained in:
81
test/test_view_player.py
Normal file
81
test/test_view_player.py
Normal file
@ -0,0 +1,81 @@
|
||||
from typing import Any, List
|
||||
|
||||
from service.api.utils import make_json
|
||||
from service.core.party import Party
|
||||
from service.models.piece import Piece
|
||||
from service.models.player import Player
|
||||
|
||||
|
||||
async def test_players_get(server: Any, party: Party, player: Player) -> None:
|
||||
party.set_player(player)
|
||||
|
||||
response = await server.get('/api/v1/party')
|
||||
assert response.status == 200
|
||||
assert await response.text() == make_json(party.party, {}, 200)
|
||||
|
||||
|
||||
async def test_players_get_with_filter(server: Any, party: Party, player: Player, player2: Player) -> None:
|
||||
party.set_player(player)
|
||||
|
||||
response = await server.get('/api/v1/party', params={'nick': player.nick})
|
||||
assert response.status == 200
|
||||
assert await response.text() == make_json([player], {'nick': player.nick}, 200)
|
||||
|
||||
response = await server.get('/api/v1/party', params={'nick': player2.nick})
|
||||
assert response.status == 200
|
||||
assert await response.text() == make_json([player2], {'nick': player2.nick}, 200)
|
||||
|
||||
|
||||
async def test_players_post_add(server: Any, party: Party, player: Player) -> None:
|
||||
party.remove_player(player.player_id)
|
||||
|
||||
response = await server.get('/api/v1/party', params={'nick': player.nick})
|
||||
assert response.status == 200
|
||||
assert await response.text() == make_json([], {'nick': player.nick}, 200)
|
||||
|
||||
response = await server.post('/api/v1/party', json={
|
||||
'action': 'add',
|
||||
'job': player.job.name,
|
||||
'nick': player.nick
|
||||
})
|
||||
assert response.status == 200
|
||||
|
||||
assert player.player_id in party.players
|
||||
|
||||
|
||||
async def test_players_post_remove(server: Any, party: Party, player: Player) -> None:
|
||||
response = await server.get('/api/v1/party', params={'nick': player.nick})
|
||||
assert response.status == 200
|
||||
assert await response.text() == make_json([player], {'nick': player.nick}, 200)
|
||||
|
||||
response = await server.post('/api/v1/party', json={
|
||||
'action': 'remove',
|
||||
'job': player.job.name,
|
||||
'nick': player.nick
|
||||
})
|
||||
assert response.status == 200
|
||||
|
||||
response = await server.get('/api/v1/party', params={'nick': player.nick})
|
||||
assert response.status == 200
|
||||
assert await response.text() == make_json([], {'nick': player.nick}, 200)
|
||||
|
||||
assert player.player_id not in party.players
|
||||
|
||||
|
||||
async def test_players_post_add_with_link(server: Any, party: Party, player: Player,
|
||||
bis_link: str, bis_set: List[Piece]) -> None:
|
||||
party.remove_player(player.player_id)
|
||||
|
||||
response = await server.get('/api/v1/party', params={'nick': player.nick})
|
||||
assert response.status == 200
|
||||
assert await response.text() == make_json([], {'nick': player.nick}, 200)
|
||||
|
||||
response = await server.post('/api/v1/party', json={
|
||||
'action': 'add',
|
||||
'job': player.job.name,
|
||||
'nick': player.nick,
|
||||
'link': bis_link
|
||||
})
|
||||
assert response.status == 200
|
||||
|
||||
assert party.players[player.player_id].bis.pieces == bis_set
|
Reference in New Issue
Block a user