From 43a303b09d3056e698cd9f46f6f64fe5786432d4 Mon Sep 17 00:00:00 2001 From: Holger Just Date: Wed, 20 Dec 2017 21:27:12 +0100 Subject: [PATCH] Include Enumerable module into Flows --- lib/rackstash/flows.rb | 2 ++ spec/rackstash/flows_spec.rb | 8 ++++++++ 2 files changed, 10 insertions(+) diff --git a/lib/rackstash/flows.rb b/lib/rackstash/flows.rb index bcdbd5a..47ecca8 100644 --- a/lib/rackstash/flows.rb +++ b/lib/rackstash/flows.rb @@ -14,6 +14,8 @@ module Rackstash # used to write a single log event of a {Buffer} to multiple flows. Each # {Logger} object has an associated Flows object to define the logger's flows. class Flows + include ::Enumerable + # @param flows [::Array] the {Flow} objects # which should be part of the list. If any of the arguments is not a # {Flow} already, we assume it is an adapter and create a new {Flow} for diff --git a/spec/rackstash/flows_spec.rb b/spec/rackstash/flows_spec.rb index 6b93e7b..eff68c9 100644 --- a/spec/rackstash/flows_spec.rb +++ b/spec/rackstash/flows_spec.rb @@ -19,6 +19,14 @@ describe Rackstash::Flows do flow end + it 'is an Enumerable' do + expect(described_class).to be < Enumerable + expect(::Enumerable.public_instance_methods - flows.methods) + .to be_empty + + expect(flows.map {}).to eql [] + end + describe '#initialize' do it 'accepts a single flow' do list = described_class.new(a_flow)