rails-cache-tags 1.1.1 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
data/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2012 amikhailov
1
+ Copyright (c) 2012 Alexei Mikhailov
2
2
 
3
3
  MIT License
4
4
 
data/README.md CHANGED
@@ -1,6 +1,7 @@
1
1
  # Synopsys
2
2
 
3
3
  Tagged caching support within your Rails application. Tested against Rails 3.0, Rails 3.1 and Rails 3.2
4
+ [Dalli](https://github.com/mperham/dalli) store is also supported!
4
5
 
5
6
  # Installation
6
7
 
@@ -30,6 +31,39 @@ cache.delete_tag "baz"
30
31
  cache.read "foo" => nil
31
32
  ```
32
33
 
34
+ More realistic example:
35
+ ```ruby
36
+ class PostsController < ApplicationController
37
+ def index
38
+ @posts = cache.fetch("index", :tags =>
39
+
40
+ @posts = cache.read("posts") || begin
41
+ posts_from_db = Post.all
42
+
43
+ cache.write "posts", :tags => {:post => posts_from_db.map(&:id)}
44
+
45
+ posts_from_db
46
+ end
47
+ end
48
+
49
+ def show
50
+ id = params[:id]
51
+
52
+ @post = cache.fetch(["post", id], :tags => {:post => id}) do
53
+ Post.find(id)
54
+ end
55
+ end
56
+
57
+ def update
58
+ @post = Post.find(params[:id])
59
+
60
+ if @post.update_attributes
61
+ cache.delete_tag :post => @post.id
62
+ end
63
+ end
64
+ end
65
+ ```
66
+
33
67
  In your controller:
34
68
  ```ruby
35
69
  class PostController < ActionController::Base
@@ -51,6 +85,6 @@ end
51
85
  2. Create your feature branch (`git checkout -b my-new-feature`)
52
86
  3. Commit your changes (`git commit -am 'Added some feature'`)
53
87
  4. Write tests!
54
- 5. Run tests against all appraisals
88
+ 5. Run tests against all major version of Rails starting from 3.0
55
89
  6. Push to the branch (`git push origin my-new-feature`)
56
- 7. Create new Pull Request
90
+ 7. Create new Pull Request
@@ -5,6 +5,7 @@ require "action_controller"
5
5
  require "rails/cache/tag"
6
6
  require "rails/cache/tags/store"
7
7
 
8
+ # Patch ActiveSupport common store
8
9
  module ActiveSupport
9
10
  module Cache
10
11
  class Store
@@ -17,6 +18,7 @@ module ActiveSupport
17
18
  end
18
19
  end
19
20
 
21
+ # Patch ActionDispatch
20
22
  class ActionController::Base < ActionController::Metal
21
23
  def expire_fragments_by_tags *args
22
24
  return unless cache_configured?
@@ -24,4 +26,18 @@ class ActionController::Base < ActionController::Metal
24
26
  cache_store.delete_tag *args
25
27
  end
26
28
  alias expire_fragments_by_tag expire_fragments_by_tags
29
+ end
30
+
31
+ # Patch Dalli store
32
+ begin
33
+ require "dalli"
34
+ require "dalli/version"
35
+
36
+ if Dalli::VERSION.to_f > 2
37
+ require "active_support/cache/dalli_store"
38
+
39
+ ActiveSupport::Cache::DalliStore.extend(Rails::Cache::Tags::Store)
40
+ end
41
+ rescue LoadError, NameError
42
+ # ignore
27
43
  end
@@ -4,6 +4,9 @@ module Rails
4
4
  module Cache
5
5
  module Tags
6
6
  module Store
7
+ # cache entry (for Dalli mainly)
8
+ Entry = Struct.new(:value, :tags)
9
+
7
10
  # patched +new+ method
8
11
  def new(*args, &block) #:nodoc:
9
12
  unless acts_like?(:cached_tags)
@@ -37,8 +40,13 @@ module Rails
37
40
  def read_entry_with_tags(key, options) #:nodoc
38
41
  entry = read_entry_without_tags(key, options)
39
42
 
40
- if entry && entry.tags.present?
41
- current_versions = fetch_tags(entry.tags.keys)
43
+ # tags are supported only for ActiveSupport::Cache::Entry or Rails::Cache::Tags::Entry
44
+ tags = if entry.is_a?(ActiveSupport::Cache::Entry) || entry.is_a?(Entry)
45
+ entry.tags
46
+ end
47
+
48
+ if tags.is_a?(Hash) && tags.present?
49
+ current_versions = fetch_tags(entry.tags.keys).values
42
50
  saved_versions = entry.tags.values
43
51
 
44
52
  if current_versions != saved_versions
@@ -48,15 +56,27 @@ module Rails
48
56
  end
49
57
  end
50
58
 
51
- entry
59
+ entry.is_a?(Entry) ?
60
+ entry.value :
61
+ entry
52
62
  end # def read_entry_with_tags
53
63
 
54
64
  def write_entry_with_tags(key, entry, options) #:nodoc:
55
65
  tags = Rails::Cache::Tag.build_tags Array.wrap(options[:tags]).flatten.compact
56
66
 
57
67
  if entry && tags.present?
58
- current_versions = fetch_tags(tags) # => [1, 2, 3]
59
- entry.tags = Hash[tags.zip(current_versions).map { |tag, v| [tag.name, v || tag.increment(self)] }]
68
+ options[:raw] = false # force :raw => false
69
+
70
+ # Dalli treats ActiveSupport::Cache::Entry as deprecated behavior, so we use our own Entry class
71
+ entry = Entry.new(entry, nil) unless entry.is_a?(ActiveSupport::Cache::Entry)
72
+
73
+ entry.tags = fetch_tags(tags).reduce(HashWithIndifferentAccess.new) do |hash, v|
74
+ tag, value = v
75
+
76
+ hash[tag.name] = value || tag.increment(self)
77
+
78
+ hash
79
+ end
60
80
  end
61
81
 
62
82
  write_entry_without_tags(key, entry, options)
@@ -64,16 +84,19 @@ module Rails
64
84
 
65
85
  private
66
86
  # fetch tags versions from store
67
- # fetch ['user:1', 'post:2', 'country:2'] => [3, 4, nil]
87
+ # fetch ['user/1', 'post/2', 'country/2'] => [Tag('user/1') => 3, Tag('post/2') => 4, Tag('country/2') => nil]
68
88
  def fetch_tags(names) #:nodoc:
69
89
  tags = Rails::Cache::Tag.build_tags names
70
- keys = tags.map(&:to_key)
71
- stored = read_multi(*keys)
90
+ stored = read_multi(*tags.map(&:to_key))
72
91
 
73
- # we should save order
74
- keys.collect { |k| stored[k] }
75
- end
76
- end
92
+ # build hash
93
+ tags.reduce(Hash.new) do |hash, t|
94
+ hash[t] = stored[t.to_key]
95
+
96
+ hash
97
+ end
98
+ end # def fetch_tags
99
+ end # module InstanceMethods
77
100
  end # module Store
78
101
  end # module Tags
79
102
  end # module Cache
@@ -1,7 +1,7 @@
1
1
  module Rails
2
2
  module Cache
3
3
  module Tags
4
- VERSION = "1.1.1"
4
+ VERSION = "1.2.0"
5
5
  end
6
6
  end
7
7
  end
@@ -8,7 +8,7 @@ Gem::Specification.new do |gem|
8
8
  gem.summary = %q{Tagged caching support for Rails}
9
9
  gem.homepage = "https://github.com/take-five/rails-cache-tags"
10
10
 
11
- gem.files = `git ls-files`.split($\)
11
+ gem.files = %W(LICENSE README.md lib/rails-cache-tags.rb lib/rails/cache/tag.rb rails-cache-tags.gemspec lib/rails/cache/tags/store.rb lib/rails/cache/tags/version.rb test/cache_tags_test.rb test/caching_test.rb test/test_helper.rb)
12
12
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
13
13
  gem.name = "rails-cache-tags"
14
14
  gem.require_paths = %W(lib)
@@ -22,4 +22,5 @@ Gem::Specification.new do |gem|
22
22
  gem.add_development_dependency 'rack'
23
23
  gem.add_development_dependency 'mocha'
24
24
  gem.add_development_dependency 'simplecov'
25
+ gem.add_development_dependency 'dalli', '>= 2.0'
25
26
  end
@@ -73,6 +73,9 @@ module CacheTagsBehavior
73
73
  @cache.write("foo", "bar", :tags => {:baz => 1})
74
74
  assert_equal 'bar', @cache.read('foo')
75
75
 
76
+ @cache.delete_tag :baz => 2
77
+ assert_equal 'bar', @cache.read('foo')
78
+
76
79
  @cache.delete_tag :baz => 1
77
80
 
78
81
  assert_nil @cache.read('foo')
@@ -91,6 +94,6 @@ module CacheTagsBehavior
91
94
  end
92
95
  end
93
96
 
94
- [FileStoreTest, MemoryStoreTest, MemCacheStoreTest].each do |klass|
97
+ [FileStoreTest, MemoryStoreTest, MemCacheStoreTest, DalliStoreTest].each do |klass|
95
98
  klass.send :include, CacheTagsBehavior
96
99
  end
data/test/caching_test.rb CHANGED
@@ -3,138 +3,6 @@ $:.unshift(File.dirname(__FILE__))
3
3
  require 'test_helper'
4
4
  require 'logger'
5
5
 
6
- class CacheKeyTest < ActiveSupport::TestCase
7
- def test_expand_cache_key
8
- assert_equal '1/2/true', ActiveSupport::Cache.expand_cache_key([1, '2', true])
9
- assert_equal 'name/1/2/true', ActiveSupport::Cache.expand_cache_key([1, '2', true], :name)
10
- end
11
-
12
- def test_expand_cache_key_with_rails_cache_id
13
- begin
14
- ENV['RAILS_CACHE_ID'] = 'c99'
15
- assert_equal 'c99/foo', ActiveSupport::Cache.expand_cache_key(:foo)
16
- assert_equal 'c99/foo', ActiveSupport::Cache.expand_cache_key([:foo])
17
- assert_equal 'nm/c99/foo', ActiveSupport::Cache.expand_cache_key(:foo, :nm)
18
- assert_equal 'nm/c99/foo', ActiveSupport::Cache.expand_cache_key([:foo], :nm)
19
- ensure
20
- ENV['RAILS_CACHE_ID'] = nil
21
- end
22
- end
23
-
24
- def test_expand_cache_key_with_rails_app_version
25
- begin
26
- ENV['RAILS_APP_VERSION'] = 'rails3'
27
- assert_equal 'rails3/foo', ActiveSupport::Cache.expand_cache_key(:foo)
28
- ensure
29
- ENV['RAILS_APP_VERSION'] = nil
30
- end
31
- end
32
-
33
- def test_expand_cache_key_rails_cache_id_should_win_over_rails_app_version
34
- begin
35
- ENV['RAILS_CACHE_ID'] = 'c99'
36
- ENV['RAILS_APP_VERSION'] = 'rails3'
37
- assert_equal 'c99/foo', ActiveSupport::Cache.expand_cache_key(:foo)
38
- ensure
39
- ENV['RAILS_CACHE_ID'] = nil
40
- ENV['RAILS_APP_VERSION'] = nil
41
- end
42
- end
43
-
44
- def test_respond_to_cache_key
45
- key = 'foo'
46
- def key.cache_key
47
- :foo_key
48
- end
49
- assert_equal 'foo_key', ActiveSupport::Cache.expand_cache_key(key)
50
- end
51
-
52
- end
53
-
54
- class CacheStoreSettingTest < ActiveSupport::TestCase
55
- def test_file_fragment_cache_store
56
- store = ActiveSupport::Cache.lookup_store :file_store, "/path/to/cache/directory"
57
- assert_kind_of(ActiveSupport::Cache::FileStore, store)
58
- assert_equal "/path/to/cache/directory", store.cache_path
59
- end
60
-
61
- def test_mem_cache_fragment_cache_store
62
- MemCache.expects(:new).with(%w[localhost], {})
63
- store = ActiveSupport::Cache.lookup_store :mem_cache_store, "localhost"
64
- assert_kind_of(ActiveSupport::Cache::MemCacheStore, store)
65
- end
66
-
67
- def test_mem_cache_fragment_cache_store_with_given_mem_cache
68
- mem_cache = MemCache.new
69
- MemCache.expects(:new).never
70
- store = ActiveSupport::Cache.lookup_store :mem_cache_store, mem_cache
71
- assert_kind_of(ActiveSupport::Cache::MemCacheStore, store)
72
- end
73
-
74
- def test_mem_cache_fragment_cache_store_with_given_mem_cache_like_object
75
- MemCache.expects(:new).never
76
- memcache = Object.new
77
- def memcache.get() true end
78
- store = ActiveSupport::Cache.lookup_store :mem_cache_store, memcache
79
- assert_kind_of(ActiveSupport::Cache::MemCacheStore, store)
80
- end
81
-
82
- def test_mem_cache_fragment_cache_store_with_multiple_servers
83
- MemCache.expects(:new).with(%w[localhost 192.168.1.1], {})
84
- store = ActiveSupport::Cache.lookup_store :mem_cache_store, "localhost", '192.168.1.1'
85
- assert_kind_of(ActiveSupport::Cache::MemCacheStore, store)
86
- end
87
-
88
- def test_mem_cache_fragment_cache_store_with_options
89
- MemCache.expects(:new).with(%w[localhost 192.168.1.1], { :timeout => 10 })
90
- store = ActiveSupport::Cache.lookup_store :mem_cache_store, "localhost", '192.168.1.1', :namespace => 'foo', :timeout => 10
91
- assert_kind_of(ActiveSupport::Cache::MemCacheStore, store)
92
- assert_equal 'foo', store.options[:namespace]
93
- end
94
-
95
- def test_object_assigned_fragment_cache_store
96
- store = ActiveSupport::Cache.lookup_store ActiveSupport::Cache::FileStore.new("/path/to/cache/directory")
97
- assert_kind_of(ActiveSupport::Cache::FileStore, store)
98
- assert_equal "/path/to/cache/directory", store.cache_path
99
- end
100
- end
101
-
102
- class CacheStoreNamespaceTest < ActiveSupport::TestCase
103
- def test_static_namespace
104
- cache = ActiveSupport::Cache.lookup_store(:memory_store, :namespace => "tester")
105
- cache.write("foo", "bar")
106
- assert_equal "bar", cache.read("foo")
107
- assert_equal "bar", cache.instance_variable_get(:@data)["tester:foo"].value
108
- end
109
-
110
- def test_proc_namespace
111
- test_val = "tester"
112
- proc = lambda{test_val}
113
- cache = ActiveSupport::Cache.lookup_store(:memory_store, :namespace => proc)
114
- cache.write("foo", "bar")
115
- assert_equal "bar", cache.read("foo")
116
- assert_equal "bar", cache.instance_variable_get(:@data)["tester:foo"].value
117
- end
118
-
119
- def test_delete_matched_key_start
120
- cache = ActiveSupport::Cache.lookup_store(:memory_store, :namespace => "tester")
121
- cache.write("foo", "bar")
122
- cache.write("fu", "baz")
123
- cache.delete_matched(/^fo/)
124
- assert_equal false, cache.exist?("foo")
125
- assert_equal true, cache.exist?("fu")
126
- end
127
-
128
- def test_delete_matched_key
129
- cache = ActiveSupport::Cache.lookup_store(:memory_store, :namespace => "foo")
130
- cache.write("foo", "bar")
131
- cache.write("fu", "baz")
132
- cache.delete_matched(/OO/i)
133
- assert_equal false, cache.exist?("foo")
134
- assert_equal true, cache.exist?("fu")
135
- end
136
- end
137
-
138
6
  # Tests the base functionality that should be identical across all cache stores.
139
7
  module CacheStoreBehavior
140
8
  def test_should_read_and_write_strings
@@ -566,24 +434,37 @@ uses_memcached 'memcached backed store' do
566
434
  end
567
435
  end
568
436
  end
569
- end
570
437
 
571
- class CacheStoreLoggerTest < ActiveSupport::TestCase
572
- def setup
573
- @cache = ActiveSupport::Cache.lookup_store(:memory_store)
438
+ class DalliStoreTest < ActiveSupport::TestCase
439
+ def setup
440
+ @cache = ActiveSupport::Cache.lookup_store(:dalli_store, :expires_in => 60)
441
+ @peek = ActiveSupport::Cache.lookup_store(:dalli_store)
442
+ @data = @cache.instance_variable_get(:@data)
443
+ @cache.clear
444
+ @cache.silence!
445
+ end
574
446
 
575
- @buffer = StringIO.new
576
- @cache.logger = Logger.new(@buffer)
577
- end
447
+ def test_should_read_and_write_strings
448
+ assert_equal true, @cache.write('foo', 'bar')
449
+ assert_equal 'bar', @cache.read('foo')
450
+ end
578
451
 
579
- def test_logging
580
- @cache.fetch('foo') { 'bar' }
581
- assert_present @buffer.string
582
- end
452
+ def test_should_read_and_write_hash
453
+ assert_equal true, @cache.write('foo', {:a => "b"})
454
+ assert_equal({:a => "b"}, @cache.read('foo'))
455
+ end
583
456
 
584
- def test_mute_logging
585
- @cache.mute { @cache.fetch('foo') { 'bar' } }
586
- assert_blank @buffer.string
457
+ def test_should_read_and_write_integer
458
+ assert_equal true, @cache.write('foo', 1)
459
+ assert_equal 1, @cache.read('foo')
460
+ end
461
+
462
+ def test_read_multi
463
+ @cache.write('foo', 'bar')
464
+ @cache.write('fu', 'baz')
465
+ @cache.write('fud', 'biz')
466
+ assert_equal({"foo" => "bar", "fu" => "baz"}, @cache.read_multi('foo', 'fu'))
467
+ end
587
468
  end
588
469
  end
589
470
 
data/test/test_helper.rb CHANGED
@@ -1,5 +1,7 @@
1
1
  require "bundler/setup"
2
2
 
3
+ require 'rails'
4
+
3
5
  require 'active_support/all'
4
6
  require 'active_support/test_case'
5
7
  require "active_support/core_ext"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails-cache-tags
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
4
+ version: 1.2.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-07-09 00:00:00.000000000Z
12
+ date: 2012-07-16 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
16
- requirement: &18370040 !ruby/object:Gem::Requirement
16
+ requirement: &20459380 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '3.0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *18370040
24
+ version_requirements: *20459380
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: appraisal
27
- requirement: &18369620 !ruby/object:Gem::Requirement
27
+ requirement: &20458680 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *18369620
35
+ version_requirements: *20458680
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: minitest
38
- requirement: &18369080 !ruby/object:Gem::Requirement
38
+ requirement: &20457820 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '3.2'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *18369080
46
+ version_requirements: *20457820
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: memcache-client
49
- requirement: &18368620 !ruby/object:Gem::Requirement
49
+ requirement: &20457360 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '0'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *18368620
57
+ version_requirements: *20457360
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: rack
60
- requirement: &18368160 !ruby/object:Gem::Requirement
60
+ requirement: &20456820 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: '0'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *18368160
68
+ version_requirements: *20456820
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: mocha
71
- requirement: &18367680 !ruby/object:Gem::Requirement
71
+ requirement: &20455780 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: '0'
77
77
  type: :development
78
78
  prerelease: false
79
- version_requirements: *18367680
79
+ version_requirements: *20455780
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: simplecov
82
- requirement: &18367220 !ruby/object:Gem::Requirement
82
+ requirement: &20454640 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ! '>='
@@ -87,7 +87,18 @@ dependencies:
87
87
  version: '0'
88
88
  type: :development
89
89
  prerelease: false
90
- version_requirements: *18367220
90
+ version_requirements: *20454640
91
+ - !ruby/object:Gem::Dependency
92
+ name: dalli
93
+ requirement: &20440600 !ruby/object:Gem::Requirement
94
+ none: false
95
+ requirements:
96
+ - - ! '>='
97
+ - !ruby/object:Gem::Version
98
+ version: '2.0'
99
+ type: :development
100
+ prerelease: false
101
+ version_requirements: *20440600
91
102
  description: Tagged caching support for Rails
92
103
  email:
93
104
  - amikhailov83@gmail.com
@@ -95,17 +106,13 @@ executables: []
95
106
  extensions: []
96
107
  extra_rdoc_files: []
97
108
  files:
98
- - .gitignore
99
- - Appraisals
100
- - Gemfile
101
109
  - LICENSE
102
110
  - README.md
103
- - Rakefile
104
111
  - lib/rails-cache-tags.rb
105
112
  - lib/rails/cache/tag.rb
113
+ - rails-cache-tags.gemspec
106
114
  - lib/rails/cache/tags/store.rb
107
115
  - lib/rails/cache/tags/version.rb
108
- - rails-cache-tags.gemspec
109
116
  - test/cache_tags_test.rb
110
117
  - test/caching_test.rb
111
118
  - test/test_helper.rb
@@ -121,18 +128,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
121
128
  - - ! '>='
122
129
  - !ruby/object:Gem::Version
123
130
  version: '0'
124
- segments:
125
- - 0
126
- hash: -1966449301647994117
127
131
  required_rubygems_version: !ruby/object:Gem::Requirement
128
132
  none: false
129
133
  requirements:
130
134
  - - ! '>='
131
135
  - !ruby/object:Gem::Version
132
136
  version: '0'
133
- segments:
134
- - 0
135
- hash: -1966449301647994117
136
137
  requirements: []
137
138
  rubyforge_project:
138
139
  rubygems_version: 1.8.17
@@ -143,3 +144,4 @@ test_files:
143
144
  - test/cache_tags_test.rb
144
145
  - test/caching_test.rb
145
146
  - test/test_helper.rb
147
+ has_rdoc:
data/.gitignore DELETED
@@ -1,19 +0,0 @@
1
- *.gem
2
- *.rbc
3
- .bundle
4
- .config
5
- .yardoc
6
- Gemfile.lock
7
- InstalledFiles
8
- _yardoc
9
- coverage
10
- doc/
11
- lib/bundler/man
12
- pkg
13
- rdoc
14
- spec/reports
15
- test/tmp
16
- test/version_tmp
17
- tmp
18
- .idea
19
- gemfiles
data/Appraisals DELETED
@@ -1,11 +0,0 @@
1
- appraise "rails3.0" do
2
- gem "rails", "~> 3.0.0"
3
- end
4
-
5
- appraise "rails3.1" do
6
- gem "rails", "~> 3.1.0"
7
- end
8
-
9
- appraise "rails3.2" do
10
- gem "rails", "~> 3.2.0"
11
- end
data/Gemfile DELETED
@@ -1,4 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in rails-cache-tags.gemspec
4
- gemspec
data/Rakefile DELETED
@@ -1,11 +0,0 @@
1
- #!/usr/bin/env rake
2
- require "bundler/gem_tasks"
3
- require 'appraisal'
4
-
5
- desc 'Run tests'
6
- task :test do
7
- test_dir = File.expand_path(File.join("..", "test"), __FILE__)
8
-
9
- Dir[File.join(test_dir, '**', '*_test.rb')].each { |f| require f }
10
- require 'minitest/autorun'
11
- end