Sha256: d45c1ebb77a402691a8c29e472d60c49b8add8a7724bacbc5e90009f2dffa247
Contents?: true
Size: 1.88 KB
Versions: 2
Compression:
Stored size: 1.88 KB
Contents
require 'spec_helper' require 'fluent/test/driver/output' require 'fluent/plugin/out_prometheus' require_relative 'shared' describe Fluent::Plugin::PrometheusOutput do let(:tag) { 'prometheus.test' } let(:driver) { Fluent::Test::Driver::Output.new(Fluent::Plugin::PrometheusOutput).configure(config) } let(:registry) { ::Prometheus::Client::Registry.new } before do allow(Prometheus::Client).to receive(:registry).and_return(registry) end describe '#configure' do it_behaves_like 'output configuration' end describe '#testinitlabels' do it_behaves_like 'initalized metrics' end describe '#run' do let(:message) { {"foo" => 100, "bar" => 100, "baz" => 100, "qux" => 10} } context 'simple config' do let(:config) { BASE_CONFIG + %( <metric> name simple type counter desc Something foo. key foo </metric> ) } it 'adds a new counter metric' do expect(registry.metrics.map(&:name)).not_to eq([:simple]) driver.run(default_tag: tag) { driver.feed(event_time, message) } expect(registry.metrics.map(&:name)).to eq([:simple]) end end it_behaves_like 'instruments record' end describe '#run with symbolized keys' do let(:message) { {:foo => 100, :bar => 100, :baz => 100, :qux => 10} } context 'simple config' do let(:config) { BASE_CONFIG + %( <metric> name simple type counter desc Something foo. key foo </metric> ) } it 'adds a new counter metric' do expect(registry.metrics.map(&:name)).not_to eq([:simple]) driver.run(default_tag: tag) { driver.feed(event_time, message) } expect(registry.metrics.map(&:name)).to eq([:simple]) end end it_behaves_like 'instruments record' end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
fluent-plugin-prometheus-2.2.0 | spec/fluent/plugin/out_prometheus_spec.rb |
fluent-plugin-prometheus-2.1.0 | spec/fluent/plugin/out_prometheus_spec.rb |