Added API routes to provide some information for JS; added CoffeeScript to grab benchmark results for a test
This commit is contained in:
23
src/routes/api1.rb
Normal file
23
src/routes/api1.rb
Normal file
@ -0,0 +1,23 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
# /api/v1 routes
|
||||
class GameData < Sinatra::Base
|
||||
|
||||
get '/api/v1/benchmark/details' do
|
||||
benchmark_id = params[:benchmark_id]
|
||||
|
||||
benchmark = Benchmark.where(id: benchmark_id).first()
|
||||
|
||||
json benchmark.values()
|
||||
end
|
||||
|
||||
get '/api/v1/results' do
|
||||
test_id = params[:test_id]
|
||||
benchmark_id = params[:benchmark_id]
|
||||
|
||||
results = Result.where(test_id: test_id, benchmark_id: benchmark_id).all()
|
||||
|
||||
json results.map(&:values)
|
||||
end
|
||||
|
||||
end
|
@ -6,3 +6,5 @@ require_relative 'benchmark'
|
||||
require_relative 'result'
|
||||
require_relative 'reports'
|
||||
require_relative 'test'
|
||||
|
||||
require_relative 'api1'
|
||||
|
@ -27,7 +27,7 @@ class GameData < Sinatra::Base
|
||||
result_maximum = params[:result_maximum] if params.key?(:result_maximum)
|
||||
|
||||
Result.create(
|
||||
hardware_id: params[:result_hardware],
|
||||
test_id: params[:result_test],
|
||||
benchmark_id: params[:result_benchmark],
|
||||
avg_score: params[:result_average],
|
||||
min_score: result_minimum,
|
||||
@ -35,8 +35,8 @@ class GameData < Sinatra::Base
|
||||
)
|
||||
|
||||
if params.key?(:result_referrer)
|
||||
if params[:result_referrer] == 'hardware'
|
||||
redirect "/hardware/#{params[:result_hardware]}"
|
||||
if params[:result_referrer] == 'test'
|
||||
redirect "/test/#{params[:result_test]}"
|
||||
elsif params[:result_referrer] == 'benchmark'
|
||||
redirect "/benchmark/#{params[:result_benchmark]}"
|
||||
end
|
||||
|
@ -40,11 +40,9 @@ class GameData < Sinatra::Base
|
||||
|
||||
get '/test/:test_id' do
|
||||
tst = Test.where(id: params[:test_id]).first()
|
||||
benchmarks = Benchmark.order(:name).all()
|
||||
erb :'test/view', locals: {
|
||||
title: tst.name,
|
||||
test: tst,
|
||||
benchmarks: benchmarks
|
||||
test: tst
|
||||
}
|
||||
end
|
||||
|
||||
|
Reference in New Issue
Block a user