Sha256: c6f1b0be929ddd710d1676da6fa324bcf67e31902b7ed59a792277d770bef7fe
Contents?: true
Size: 1.7 KB
Versions: 2
Compression:
Stored size: 1.7 KB
Contents
require 'helper' require 'net/http' class MackerelWebhookInputTest < Test::Unit::TestCase def setup Fluent::Test.setup end PORT = unused_port CONFIG = %[ port #{PORT} tag mwebhook ] def create_driver(conf=CONFIG, tag='test') Fluent::Test::OutputTestDriver.new(Fluent::WebhookMackerelInput, tag).configure(conf) end def test_configure assert_raise(Fluent::ConfigError) { d = create_driver('') } d = create_driver assert_equal 'mwebhook', d.instance.tag assert_equal PORT, d.instance.port assert_equal '/', d.instance.mount assert_equal '0.0.0.0', d.instance.bind end def test_basic d = create_driver time = Time.parse("2011-01-02 13:14:15 UTC").to_i Fluent::Engine.now = time d.expect_emit "mwebhook.alert", time, { :event => 'alert', 'host' => { 'id' => 'abcabc' }, 'alert' => { 'url' => 'http://', }, } payload = { 'event' => 'alert', 'host' => { 'id' => 'abcabc' }, 'alert' => { 'url' => 'http://', }, } d.run do d.expected_emits.each {|tag, time, record| res = post("/", payload.to_json) assert_equal "204", res.code } end end def test_405 create_driver.run do http = Net::HTTP.new("127.0.0.1", PORT) req = Net::HTTP::Get.new('/') res = http.request(req) assert_equal "405", res.code end end def post(path, params, header = {}) http = Net::HTTP.new("127.0.0.1", PORT) req = Net::HTTP::Post.new(path, header) if params.is_a?(String) req.body = params else req.set_form_data(params) end http.request(req) end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
fluent-plugin-webhook-mackerel-0.1.0 | test/plugin/test_in_webhook_mackerel.rb |
fluent-plugin-webhook-mackerel-0.0.1 | test/plugin/test_in_webhook_mackerel.rb |