Commit a8e3360
Changed files (3)
spec
minbox
lib/minbox/inbox.rb
@@ -2,10 +2,14 @@
module Minbox
class Inbox
- include Singleton
include Enumerable
- def initialize(root_dir: 'tmp')
+ def self.instance(root_dir:)
+ @instances ||= {}
+ @instances[root_dir] ||= new(root_dir: root_dir)
+ end
+
+ def initialize(root_dir:)
empty!
::Listen.to(File.expand_path(root_dir), only: /\.eml$/) do |modified, added, removed|
added.each do |file|
lib/minbox.rb
@@ -5,7 +5,6 @@ require 'concurrent'
require 'hashie'
require 'listen'
require 'logger'
-require 'singleton'
require 'socket'
require 'minbox/client'
spec/minbox/inbox_spec.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
RSpec.describe Minbox::Inbox do
- subject! { described_class.instance }
+ subject! { described_class.instance(root_dir: 'tmp') }
before do
IO.write("tmp/1.eml", Mail.new do