init testu
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
from collections import namedtuple
|
||||
from typing import Optional
|
||||
|
||||
import pytest
|
||||
|
||||
from database import models
|
||||
from graphql_schema.entities.resolvers.aircraft import AircraftQueryResolver
|
||||
from tests.factories import create_pilot
|
||||
from utils.str_utils import random_str
|
||||
|
||||
AircraftData = namedtuple('AircraftData', ["aircraft", "user"])
|
||||
|
||||
|
||||
async def create_aircraft(db, data: Optional[dict] = None) -> AircraftData:
|
||||
if not data:
|
||||
data = {}
|
||||
|
||||
if not data.get("created_by_id"):
|
||||
pilot = await create_pilot(db)
|
||||
data["created_by_id"] = pilot.id
|
||||
else:
|
||||
pilot = await models.User.get_one(db, id=data['created_by_id'])
|
||||
|
||||
return AircraftData(
|
||||
aircraft=await models.Aircraft.create(
|
||||
db,
|
||||
{
|
||||
"call_sign": data.pop("call_sign", f"OK-{random_str(4)}"),
|
||||
"is_public": data.pop("is_public", False),
|
||||
"created_by_id": data.pop('created_by_id'),
|
||||
"seats": data.pop("seats", 2),
|
||||
**data
|
||||
}
|
||||
),
|
||||
user=pilot
|
||||
)
|
||||
|
||||
|
||||
async def test_private_aircraft(db):
|
||||
aircraft_data = await create_aircraft(db)
|
||||
|
||||
resolver = AircraftQueryResolver()
|
||||
|
||||
params =[
|
||||
{"id": aircraft_data.aircraft.id, "created_by_id": 234}
|
||||
]
|
||||
for param in params:
|
||||
aircraft = await resolver.get_one(**param)
|
||||
assert aircraft.id == aircraft_data.aircraft.id
|
||||
@@ -0,0 +1,3 @@
|
||||
async def test_simple_query(db):
|
||||
# query_builder = QueryBuilder()
|
||||
pass
|
||||
Reference in New Issue
Block a user