Sha256: 1bdc930ad49a1aa189a1d43fdcfa0e6f30d06c882a3239e5468051a198b821d2
Contents?: true
Size: 1.98 KB
Versions: 1
Compression:
Stored size: 1.98 KB
Contents
require 'test/unit' require 'fluent/test' class MongoOutputTest < Test::Unit::TestCase def setup Fluent::Test.setup require 'fluent/plugin/out_mongo' end CONFIG = %[ type mongo database fluent collection test ] def create_driver(conf = CONFIG) Fluent::Test::BufferedOutputTestDriver.new(Fluent::MongoOutput) { def start super end def shutdown super end def operate(records) records end }.configure(conf) end def test_configure d = create_driver(%[ type mongo database fluent_test collection test_collection host fluenter port 27018 capped capped_size 100 ]) assert_equal('fluent_test', d.instance.database) assert_equal('test_collection', d.instance.collection) assert_equal('fluenter', d.instance.host) assert_equal(27018, d.instance.port) assert_equal({:capped => true, :size => 100}, d.instance.argument) end def test_format d = create_driver time = Time.parse("2011-01-02 13:14:15 UTC").to_i d.emit({'a' => 1}, time) d.emit({'a' => 2}, time) d.expect_format({'a' => 1, d.instance.time_key => time}.to_msgpack) d.expect_format({'a' => 2, d.instance.time_key => time}.to_msgpack) d.run end def emit_documents(d) time = Time.parse("2011-01-02 13:14:15 UTC").to_i d.emit({'a' => 1}, time) d.emit({'a' => 2}, time) time end def test_write d = create_driver t = emit_documents(d) documents = d.run assert_equal([{'a' => 1, d.instance.time_key => Time.at(t)}, {'a' => 2, d.instance.time_key => Time.at(t)}], documents) end def test_write_at_enable_tag d = create_driver(CONFIG + %[ include_tag_key true include_time_key false ]) t = emit_documents(d) documents = d.run assert_equal([{'a' => 1, d.instance.tag_key => 'test'}, {'a' => 2, d.instance.tag_key => 'test'}], documents) end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
fluent-plugin-mongo-0.4.0 | test/plugin/out_mongo.rb |