test/spec_setup.rb in rtomayko-rack-cache-0.2.0 vs test/spec_setup.rb in rtomayko-rack-cache-0.3.0

- old
+ new

@@ -14,23 +14,27 @@ # of the MemCached meta and entity stores. ENV['MEMCACHED'] ||= 'localhost:11215' $memcached = nil def have_memcached?(server=ENV['MEMCACHED']) - return true if $memcached + return $memcached unless $memcached.nil? + v, $VERBOSE = $VERBOSE, nil # silence warnings from memcached require 'memcached' + $VERBOSE = v $memcached = Memcached.new(server) $memcached.set('ping', '') true rescue LoadError => boom - $memcached = nil + $memcached = false false rescue => boom - $memcached = nil + $memcached = false false end +have_memcached? + def need_memcached(forwhat) if have_memcached? yield else STDERR.puts "skipping memcached #{forwhat} (MEMCACHED environment variable not set)" @@ -123,23 +127,26 @@ @cache_prototype ||= Rack::Cache::Context.new(@app, &@cache_config) @cache = @cache_prototype.clone @caches << @cache @request = Rack::MockRequest.new(@cache) yield @cache if block_given? - @response = @request.send(method, uri, opts) + @response = @request.request(method.to_s.upcase, uri, opts) @responses << @response @response end def get(stem, env={}, &b) request(:get, stem, env, &b) end + def head(stem, env={}, &b) + request(:head, stem, env, &b) + end + def post(*args, &b) request(:post, *args, &b) end - end module TestHelpers include FileUtils @@ -147,11 +154,11 @@ @@temp_dir_count = 0 def create_temp_directory @@temp_dir_count += 1 - path = F.join(Dir.tmpdir, "rcl-#{$$}-#{@@temp_dir_count}") + path = F.join(Dir.tmpdir, "rack-cache-#{$$}-#{@@temp_dir_count}") mkdir_p path if block_given? yield path remove_entry_secure path end @@ -184,6 +191,5 @@ # Defines an instance method within a class def class_def name, &blk class_eval { define_method name, &blk } end end -