Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions app/models/distribution_data.rb
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@ def nodes_distribution
DailyStatistic.recent.first&.nodes_distribution || DailyStatistic.where.not(nodes_distribution: nil).recent.first&.nodes_distribution || []
end

def updated_at
DailyStatistic.recent.first&.updated_at
def created_at_unixtimestamp
DailyStatistic.recent.first&.created_at_unixtimestamp
end

def block_propagation_delay_history
Expand Down
4 changes: 0 additions & 4 deletions app/serializers/daily_statistic_serializer.rb
Original file line number Diff line number Diff line change
Expand Up @@ -142,8 +142,4 @@ class DailyStatisticSerializer
attribute :activity_address_contract_distribution, if: Proc.new { |_record, params|
params.present? && params[:indicator].include?("activity_address_contract_distribution")
}

attribute :last_updated_timestamp do |object|
(object.updated_at.to_i * 1000).to_s
end
end
4 changes: 2 additions & 2 deletions app/serializers/distribution_data_serializer.rb
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ class DistributionDataSerializer
end
end

attribute :last_updated_timestamp do |object|
(object.updated_at.to_i * 1000).to_s
attribute :created_at_unixtimestamp do |object|
object.created_at_unixtimestamp.to_s
end
end
4 changes: 2 additions & 2 deletions app/serializers/epoch_statistic_serializer.rb
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ class EpochStatisticSerializer
}
end

attribute :last_updated_timestamp do |object|
(object.updated_at.to_i * 1000).to_s
attribute :created_at_unixtimestamp do |object|
object.updated_at.to_i.to_s
end
end
4 changes: 2 additions & 2 deletions app/serializers/statistic_serializer.rb
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ class StatisticSerializer
params && params[:info_name] == "maintenance_info"
}

attribute :last_updated_timestamp do |object|
(object.updated_at.to_i * 1000).to_s
attribute :created_at_unixtimestamp do |object|
object.updated_at.to_i.to_s
end
end
12 changes: 6 additions & 6 deletions test/controllers/api/v1/daily_statistics_controller_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ class DailyStatisticsControllerTest < ActionDispatch::IntegrationTest
daily_statistic_data = DailyStatistic.order(:created_at_unixtimestamp).valid_indicators
valid_get api_v1_daily_statistic_url("transactions_count")

assert_equal [%w(transactions_count created_at_unixtimestamp last_updated_timestamp).sort], json.dig("data").map { |item|
assert_equal [%w(transactions_count created_at_unixtimestamp).sort], json.dig("data").map { |item|
item.dig("attributes").keys.sort
}.uniq
assert_equal DailyStatisticSerializer.new(daily_statistic_data, params: { indicator: "transactions_count" }).serialized_json,
Expand All @@ -61,7 +61,7 @@ class DailyStatisticsControllerTest < ActionDispatch::IntegrationTest
daily_statistic_data = DailyStatistic.order(created_at_unixtimestamp: :asc).valid_indicators
valid_get api_v1_daily_statistic_url("addresses_count")

assert_equal [%w(addresses_count created_at_unixtimestamp last_updated_timestamp).sort],
assert_equal [%w(addresses_count created_at_unixtimestamp).sort],
json.dig("data").map { |item|
item.dig("attributes").keys.sort
}.uniq
Expand All @@ -74,7 +74,7 @@ class DailyStatisticsControllerTest < ActionDispatch::IntegrationTest
create_list(:daily_statistic, 15)
valid_get api_v1_daily_statistic_url("total_dao_deposit")

assert_equal [%w(total_dao_deposit created_at_unixtimestamp last_updated_timestamp).sort],
assert_equal [%w(total_dao_deposit created_at_unixtimestamp).sort],
json.dig("data").map { |item|
item.dig("attributes").keys.sort
}.uniq
Expand All @@ -101,9 +101,9 @@ class DailyStatisticsControllerTest < ActionDispatch::IntegrationTest
daily_statistic_data = DailyStatistic.order(:created_at_unixtimestamp).valid_indicators
valid_get api_v1_daily_statistic_url("avg_hash_rate")

assert_equal [%w(avg_hash_rate created_at_unixtimestamp last_updated_timestamp).sort], json.dig("data").map { |item|
item.dig("attributes").keys.sort
}.uniq
assert_equal [%w(avg_hash_rate created_at_unixtimestamp).sort], json.dig("data").map { |item|
item.dig("attributes").keys.sort
}.uniq
assert_equal DailyStatisticSerializer.new(daily_statistic_data, params: { indicator: "avg_hash_rate" }).serialized_json,
response.body
assert_equal 100, json.dig("data").size
Expand Down
16 changes: 8 additions & 8 deletions test/controllers/api/v1/epoch_statistics_controller_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -40,38 +40,38 @@ class EpochStatisticsControllerTest < ActionDispatch::IntegrationTest
end

test "should return difficulty, uncle_rate and epoch number" do
(1..15).each {|number| create(:epoch_statistic, epoch_number: number)}
(1..15).each { |number| create(:epoch_statistic, epoch_number: number) }
block_statistic_data = EpochStatistic.order(epoch_number: :desc).reverse
valid_get api_v1_epoch_statistic_url("difficulty-uncle_rate")

assert_equal [%w(difficulty uncle_rate epoch_number largest_block largest_tx last_updated_timestamp).sort], json.dig("data").map { |item| item.dig("attributes").keys.sort }.uniq
assert_equal [%w(difficulty uncle_rate epoch_number largest_block largest_tx created_at_unixtimestamp).sort], json.dig("data").map { |item| item.dig("attributes").keys.sort }.uniq
assert_equal EpochStatisticSerializer.new(block_statistic_data, { params: { indicator: "difficulty-uncle_rate" } }).serialized_json, response.body
end

test "should return difficulty, hash_rate and epoch number" do
(1..15).each {|number| create(:epoch_statistic, epoch_number: number)}
(1..15).each { |number| create(:epoch_statistic, epoch_number: number) }
block_statistic_data = EpochStatistic.order(epoch_number: :desc).reverse
valid_get api_v1_epoch_statistic_url("difficulty-hash_rate")

assert_equal [%w(difficulty hash_rate epoch_number largest_block largest_tx last_updated_timestamp).sort], json.dig("data").map { |item| item.dig("attributes").keys.sort }.uniq
assert_equal [%w(difficulty hash_rate epoch_number largest_block largest_tx created_at_unixtimestamp).sort], json.dig("data").map { |item| item.dig("attributes").keys.sort }.uniq
assert_equal EpochStatisticSerializer.new(block_statistic_data, { params: { indicator: "difficulty-hash_rate" } }).serialized_json, response.body
end

test "should return epoch_time and epoch_length" do
(1..15).each {|number| create(:epoch_statistic, epoch_number: number)}
(1..15).each { |number| create(:epoch_statistic, epoch_number: number) }
block_statistic_data = EpochStatistic.order(epoch_number: :desc).reverse
valid_get api_v1_epoch_statistic_url("epoch_time-epoch_length")

assert_equal [%w(epoch_length epoch_time epoch_number largest_block largest_tx last_updated_timestamp).sort], json.dig("data").map { |item| item.dig("attributes").keys.sort }.uniq
assert_equal [%w(epoch_length epoch_time epoch_number largest_block largest_tx created_at_unixtimestamp).sort], json.dig("data").map { |item| item.dig("attributes").keys.sort }.uniq
assert_equal EpochStatisticSerializer.new(block_statistic_data, { params: { indicator: "epoch_time-epoch_length" } }).serialized_json, response.body
end

test "should return latest 10 epoch statistics when limit is not present" do
(1..15).each {|number| create(:epoch_statistic, epoch_number: number)}
(1..15).each { |number| create(:epoch_statistic, epoch_number: number) }
block_statistic_data = EpochStatistic.order(epoch_number: :desc).limit(10).reverse
valid_get api_v1_epoch_statistic_url("difficulty-uncle_rate", limit: 10)

assert_equal [%w(difficulty uncle_rate epoch_number largest_block largest_tx last_updated_timestamp).sort], json.dig("data").map { |item| item.dig("attributes").keys.sort }.uniq
assert_equal [%w(difficulty uncle_rate epoch_number largest_block largest_tx created_at_unixtimestamp).sort], json.dig("data").map { |item| item.dig("attributes").keys.sort }.uniq
assert_equal EpochStatisticSerializer.new(block_statistic_data, { params: { indicator: "difficulty-uncle_rate" } }).serialized_json, response.body
end

Expand Down
2 changes: 1 addition & 1 deletion test/controllers/api/v1/statistics_controller_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ class StatisticsControllerTest < ActionDispatch::IntegrationTest
StatisticInfo.default.reset_all!
valid_get api_v1_statistic_url("miner_ranking")

assert_equal %w(last_updated_timestamp miner_ranking), json.dig("data", "attributes").keys.sort
assert_equal %w(created_at_unixtimestamp miner_ranking), json.dig("data", "attributes").keys.sort
end

test "should return right ranking" do
Expand Down
Loading