Initial checkin

This commit is contained in:
2023-05-18 18:21:00 -04:00
commit 1c64f16aef
21 changed files with 1020 additions and 0 deletions

125
test/test_vehicle.py Normal file
View 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