Initial checkin
This commit is contained in:
125
test/test_vehicle.py
Normal file
125
test/test_vehicle.py
Normal file
@@ -0,0 +1,125 @@
|
||||
from flask import json
|
||||
from app.extensions import db
|
||||
from app.models.vehicle import Vehicle
|
||||
from test import client
|
||||
|
||||
def test_list_vehicles_empty_db_empty_list(client):
|
||||
rv = client.get('/vehicles')
|
||||
assert len(json.loads(rv.data)) == 0
|
||||
|
||||
def test_list_vehicles_with_data(client):
|
||||
db.session.add(Vehicle(**{
|
||||
"id": 1,
|
||||
"license_plate": "NY0001",
|
||||
"battery_level": 90,
|
||||
"in_use": True,
|
||||
"model": "Niu",
|
||||
"location_lat": 40.680245,
|
||||
"location_long": -73.996955,
|
||||
}))
|
||||
db.session.commit()
|
||||
rv = client.get('/vehicles')
|
||||
assert len(json.loads(rv.data)) == 1
|
||||
|
||||
def test_get_single_vehicle(client):
|
||||
db.session.add(Vehicle(**{
|
||||
"id": 1,
|
||||
"license_plate": "NY0002",
|
||||
"battery_level": 90,
|
||||
"in_use": True,
|
||||
"model": "Niu",
|
||||
"location_lat": 40.680245,
|
||||
"location_long": -73.996955,
|
||||
}))
|
||||
db.session.add(Vehicle(**{
|
||||
"id": 2,
|
||||
"license_plate": "NY0003",
|
||||
"battery_level": 95,
|
||||
"in_use": True,
|
||||
"model": "Niu",
|
||||
"location_lat": 40.680245,
|
||||
"location_long": -73.996955,
|
||||
}))
|
||||
db.session.commit()
|
||||
|
||||
rv = client.get('/vehicles')
|
||||
assert len(json.loads(rv.data)) == 2
|
||||
|
||||
rv = client.get('/vehicles/1')
|
||||
data = json.loads(rv.data)
|
||||
assert data['id'] == 1
|
||||
assert data['license_plate'] == 'NY0002'
|
||||
|
||||
def test_create_vehicles(client):
|
||||
client.post('/vehicles', data={
|
||||
"license_plate": "NY0003",
|
||||
"battery_level": 90,
|
||||
"in_use": True,
|
||||
"model": "Niu",
|
||||
"location_lat": 40.680245,
|
||||
"location_long": -73.996955,
|
||||
})
|
||||
rv = client.get('/vehicles/1')
|
||||
data = json.loads(rv.data)
|
||||
assert data['id'] == 1
|
||||
assert data['license_plate'] == 'NY0003'
|
||||
|
||||
client.post('/vehicles', data={
|
||||
"license_plate": "NY0004",
|
||||
"battery_level": 90,
|
||||
"in_use": True,
|
||||
"model": "Niu",
|
||||
"location_lat": 40.680245,
|
||||
"location_long": -73.996955,
|
||||
})
|
||||
rv = client.get('/vehicles/2')
|
||||
data = json.loads(rv.data)
|
||||
assert data['id'] == 2
|
||||
assert data['license_plate'] == 'NY0004'
|
||||
|
||||
def test_update_vehicle(client):
|
||||
client.post('/vehicles', data={
|
||||
"license_plate": "NY0006",
|
||||
"battery_level": 90,
|
||||
"in_use": True,
|
||||
"model": "Niu",
|
||||
"location_lat": 40.680245,
|
||||
"location_long": -73.996955,
|
||||
})
|
||||
rv = client.get('/vehicles/1')
|
||||
data = json.loads(rv.data)
|
||||
assert data['id'] == 1
|
||||
assert data['license_plate'] == 'NY0006'
|
||||
|
||||
rv = client.post('/vehicles/1', data={
|
||||
"battery_level": 85,
|
||||
})
|
||||
data = json.loads(rv.data)
|
||||
assert data['id'] == 1
|
||||
assert data['battery_level'] == 85
|
||||
|
||||
rv = client.get('/vehicles/1')
|
||||
data = json.loads(rv.data)
|
||||
assert data['battery_level'] == 85
|
||||
|
||||
def test_delete_vehicle(client):
|
||||
client.post('/vehicles', data={
|
||||
"license_plate": "NY0007",
|
||||
"battery_level": 90,
|
||||
"in_use": True,
|
||||
"model": "Niu",
|
||||
"location_lat": 40.680245,
|
||||
"location_long": -73.996955,
|
||||
})
|
||||
rv = client.get('/vehicles/1')
|
||||
data = json.loads(rv.data)
|
||||
assert data['id'] == 1
|
||||
assert data['license_plate'] == 'NY0007'
|
||||
|
||||
rv = client.delete('/vehicles/1')
|
||||
data = json.loads(rv.data)
|
||||
assert data == 1
|
||||
|
||||
rv = client.get('/vehicles')
|
||||
assert len(json.loads(rv.data)) == 0
|
||||
|
||||
Reference in New Issue
Block a user