inspec/test/unit/utils/telemetry/data_series_test.rb
Miah Johnson 5adf33469a improve testing for DataSeries#to_h and DataSeries#to_json
Signed-off-by: Miah Johnson <miah@chia-pet.org>
2019-04-11 12:22:29 -07:00

48 lines
1.2 KiB
Ruby

require 'inspec/utils/telemetry'
require 'json'
require_relative '../../../helper.rb'
class TestTelemetryDataSeries < Minitest::Test
def test_name
ds = Inspec::Telemetry::DataSeries.new('fizz')
refute_nil ds
assert_equal 'fizz', ds.name
end
def test_data
ds = Inspec::Telemetry::DataSeries.new('fizz')
refute_nil ds.data
assert_kind_of Array, ds.data
assert_empty ds.data
end
def test_data_append
ds = Inspec::Telemetry::DataSeries.new('fizz')
assert_empty ds.data
assert ds << 'foo'
assert_equal ['foo'], ds.data
end
def test_data_push_alias
ds = Inspec::Telemetry::DataSeries.new('fizz')
assert_empty ds.data
assert ds.push 'bar'
assert_equal ['bar'], ds.data
end
def test_to_h
ds = Inspec::Telemetry::DataSeries.new('fizz')
ds << 'foo'
assert_kind_of Hash, ds.to_h
assert_equal 'fizz', ds.to_h[:name]
assert_equal ['foo'], ds.to_h[:data]
end
def test_to_json
ds = Inspec::Telemetry::DataSeries.new('fizz')
ds << 'foo'
assert_kind_of String, ds.to_json
assert_equal '{"name":"fizz","data":["foo"]}', ds.to_json
assert JSON.parse(ds.to_json)
end
end