Added market share growth rate data endpoint

This commit is contained in:
Sergei Tsõganov 2022-09-05 14:44:24 +03:00
parent 261e2d3162
commit dc4c3cf616
6 changed files with 90 additions and 11 deletions

View file

@ -12,6 +12,7 @@ shop:
period: 1
period_unit: m
uuid: 1b3ee442-e8fe-4922-9492-8fcb9dccc69c
created_at: <%= 2.days.ago.to_s :db %>
airport:
name: airport.test
@ -24,6 +25,7 @@ airport:
period: 1
period_unit: m
uuid: 2df2c1a1-8f6a-490a-81be-8bdf29866880
created_at: <%= 2.days.ago.to_s :db %>
library:
name: library.test
@ -36,6 +38,7 @@ library:
period: 1
period_unit: m
uuid: 647bcc48-8d5e-4a04-8ce5-2a3cd17b6eab
created_at: <%= 2.days.ago.to_s :db %>
metro:
name: metro.test
@ -48,6 +51,7 @@ metro:
period: 1
period_unit: m
uuid: ef97cb80-333b-4893-b9df-163f2b452798
created_at: <%= 2.days.ago.to_s :db %>
hospital:
name: hospital.test

View file

@ -7,10 +7,12 @@ class ReppV1StatsMarketShareTest < ActionDispatch::IntegrationTest
token = "Basic #{token}"
@auth_headers = { 'Authorization' => token }
@today = Time.zone.today.strftime('%m.%y')
end
def test_shows_market_share_data
get '/repp/v1/stats/market_share', headers: @auth_headers
def test_shows_market_share_distribution_data
get '/repp/v1/stats/market_share_distribution', headers: @auth_headers,
params: { q: { end_date: @today } }
json = JSON.parse(response.body, symbolize_names: true)
assert_response :ok
@ -22,4 +24,22 @@ class ReppV1StatsMarketShareTest < ActionDispatch::IntegrationTest
assert_equal json[:data][0][:name], 'Best Names'
assert json[:data][0][:selected]
end
def test_shows_market_share_growth_rate_data
prev_date = Time.zone.today.last_month.strftime('%m.%y')
get '/repp/v1/stats/market_share_growth_rate', headers: @auth_headers,
params: { q: { end_date: @today,
compare_to_date: prev_date } }
json = JSON.parse(response.body, symbolize_names: true)
assert_response :ok
assert_equal 1000, json[:code]
assert_equal 'Command completed successfully', json[:message]
data = json[:data]
assert data[:data].is_a? Hash
assert data[:prev_data].is_a? Hash
assert_equal data[:data][:name], @today
assert data[:data][:domains].is_a? Array
end
end