Skip to content

Instantly share code, notes, and snippets.

@rugyoga
Created February 18, 2021 21:59
Show Gist options
  • Save rugyoga/041a18c2d9985fba05d1504656112e4f to your computer and use it in GitHub Desktop.
Save rugyoga/041a18c2d9985fba05d1504656112e4f to your computer and use it in GitHub Desktop.
def schema do
schema(%{
accel_x: spec(is_float()),
accel_y: spec(is_float()),
accel_z: spec(is_float()),
ambient_air_temp: spec(is_float()),
barometric_pressure: spec(is_float()),
battery_level: spec(is_float()),
data_provider_id: spec(Util.is_UUID()),
diagnostic_codes: coll_of(spec(is_binary())),
drive_started_at: spec(Util.is_date()),
dtc_count: spec(is_integer()),
engine_coolant_temp: spec(is_float()),
engine_load: spec(is_float()),
engine_speed: spec(is_float()),
ev_charge_level: spec(is_float()),
ev_current: spec(is_float()),
ev_voltage: spec(is_float()),
fuel_economy: spec(is_float()),
fuel_level: spec(is_float()),
fuel_percent: spec(is_float()),
fuel_rate: spec(is_float()),
fuel_type: spec(is_binary()),
fuel_usage: spec(is_float()),
fuel_usage_total: spec(is_float()),
intake_manifold_pressure: spec(is_float()),
is_braking: spec(is_boolean()),
is_driving: spec(is_boolean()),
is_fuel_level_calculated: spec(is_boolean()),
is_fuel_percent_calculated: spec(is_boolean()),
is_ignition_on: spec(is_boolean()),
last_message_id: spec(Util.is_UUID()),
last_moved_at: spec(Util.is_date()),
mass_air_flow: spec(is_float()),
max_acceleration: spec(is_float()),
max_deceleration: spec(is_float()),
max_speed: spec(is_float()),
number_of_warm_ups_since_dtcs_cleared: spec(is_integer()),
odometer: spec(is_float()),
oil_pressure: spec(is_float()),
service_interval_oil_distance: spec(is_float()),
speed: spec(is_float()),
supported_params: coll_of(spec(is_binary())),
throttle_position: spec(is_float()),
time: spec(Util.is_date()),
tire_pressure_fl: spec(is_float()),
tire_pressure_fr: spec(is_float()),
tire_pressure_bl: spec(is_float()),
tire_pressure_br: spec(is_float()),
trip_odometer: spec(is_float()),
vin: spec(Util.is_VIN()),
} |> Util.stringify_keys)
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment