Sha256: 8f86848aeaa76ab84a82f6005e7013618b1f7f78d91426eaa1af0a067d6809c2

Contents?: true

Size: 917 Bytes

Versions: 23

Compression:

Stored size: 917 Bytes

Contents

require "spec_helper"

describe Lita::PluginBuilder, lita: true do
  let(:robot) { instance_double("Lita::Robot") }
  subject { plugin.new(robot) }

  describe "#build_adapter" do
    let(:builder) do
      described_class.new(:test_adapter) do
        def run
          self.class.namespace
        end
      end
    end

    let(:plugin) { builder.build_adapter }

    it "builds an adapter" do
      expect(subject.run).to eq("test_adapter")
    end
  end

  describe "#build_handler" do
    builder = described_class.new(:test_handler) do
      route(/namespace/) { |response| response.reply(self.class.namespace) }
    end

    plugin = builder.build_handler

    describe plugin, lita_handler: true do
      before { registry.register_handler(plugin) }

      it "builds a handler from a block" do
        send_message("namespace")
        expect(replies.last).to eq("test_handler")
      end
    end
  end
end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
lita-4.8.0 spec/lita/plugin_builder_spec.rb
lita-4.8.0.beta1 spec/lita/plugin_builder_spec.rb
lita-4.7.1 spec/lita/plugin_builder_spec.rb
lita-4.7.0 spec/lita/plugin_builder_spec.rb
lita-4.6.1 spec/lita/plugin_builder_spec.rb
lita-4.6.0 spec/lita/plugin_builder_spec.rb
lita-4.5.0 spec/lita/plugin_builder_spec.rb
lita-4.4.3 spec/lita/plugin_builder_spec.rb
lita-4.4.2 spec/lita/plugin_builder_spec.rb
lita-4.4.1 spec/lita/plugin_builder_spec.rb
lita-4.4.0 spec/lita/plugin_builder_spec.rb
lita-4.3.2 spec/lita/plugin_builder_spec.rb
lita-4.3.1 spec/lita/plugin_builder_spec.rb
lita-4.3.0 spec/lita/plugin_builder_spec.rb
lita-4.2.1 spec/lita/plugin_builder_spec.rb
lita-4.2.0 spec/lita/plugin_builder_spec.rb
lita-4.1.0 spec/lita/plugin_builder_spec.rb
lita-4.0.4 spec/lita/plugin_builder_spec.rb
lita-4.0.3 spec/lita/plugin_builder_spec.rb
lita-4.0.2 spec/lita/plugin_builder_spec.rb