thingtank 0.0.4 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/.travis.yml ADDED
@@ -0,0 +1,9 @@
1
+ language: ruby
2
+ rvm:
3
+ - 1.8.7
4
+ - 1.9.2
5
+ - 1.9.3
6
+ # - jruby-19mode # JRuby in 1.9 mode, disabled since jruby needs jruby-openssl
7
+ env: COUCH_POTATO_TEST_DB=http://localhost:5984/test_potato
8
+ before_script:
9
+ - curl -X PUT localhost:5984/test_potato
data/Gemfile CHANGED
@@ -1,15 +1,34 @@
1
1
  source "http://rubygems.org"
2
2
 
3
+ gem 'json'
3
4
  gem 'couchrest'
4
5
  gem 'couchrest_model'
5
6
 
6
7
  group :development do
7
- #gem "minitest", ">= 0"
8
+
9
+ unless ENV['TRAVIS']
10
+ gem 'guard'
11
+ gem 'libnotify'
12
+ gem 'rb-inotify'
13
+ gem 'guard-minitest'
14
+
15
+ if RUBY_VERSION =~ /1.9/
16
+ gem 'linecache19'
17
+ gem 'ruby-debug19'
18
+ end
19
+
20
+ if RUBY_VERSION =~ /1.8/
21
+ gem 'linecache'
22
+ gem 'ruby-debug'
23
+ end
24
+ end
25
+
8
26
  gem "yard", "~> 0.6.0"
9
27
  gem "bundler", "~> 1.0.0"
10
28
  gem "jeweler", "~> 1.6.4"
11
- gem "rcov", ">= 0"
12
29
 
13
- gem 'linecache19'
14
- gem 'ruby-debug19'
30
+ if RUBY_VERSION =~ /1.8/
31
+ gem 'backports'
32
+ gem 'minitest'
33
+ end
15
34
  end
data/Guardfile ADDED
@@ -0,0 +1,15 @@
1
+ # A sample Guardfile
2
+ # More info at https://github.com/guard/guard#readme
3
+
4
+ guard 'minitest' do
5
+ # with Minitest::Unit
6
+ watch(%r|^test/test_(.*)\.rb$|)
7
+ watch(%r|^lib/(.*)([^/]+)\.rb$|){ |m| "test/#{m[1]}test_#{m[2]}.rb" }
8
+ watch(%r|^examples/([^/]+)\.rb$|){ |m| "test/examples/test_#{m[1]}.rb" }
9
+ watch(%r|^test/test_helper\.rb$|) { "test" }
10
+
11
+ # with Minitest::Spec
12
+ # watch(%r|^spec/(.*)_spec\.rb|)
13
+ # watch(%r|^lib/(.*)\.rb|) { |m| "spec/#{m[1]}_spec.rb" }
14
+ # watch(%r|^spec/spec_helper\.rb|) { "spec" }
15
+ end
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- thingtank: play different roles
1
+ thingtank: play different roles [![Build Status](https://secure.travis-ci.org/metakeule/thingtank.png)](https://secure.travis-ci.org/metakeule/thingtank)
2
2
  =====================
3
3
 
4
4
  ThingTank is a library that uses couchrest and couchrest model to create arbitrary
@@ -8,7 +8,7 @@ properties and they can be mixed and matched at will.
8
8
 
9
9
  Installation
10
10
  ------------
11
- _thingtank_ is only tested with ruby 1.9.2 and above.
11
+ _thingtank_ is tested with ruby 1.8.7, 1.9.2 and above.
12
12
 
13
13
  Install it as a gem:
14
14
 
data/Rakefile CHANGED
@@ -26,17 +26,14 @@ Jeweler::RubygemsDotOrgTasks.new
26
26
 
27
27
  require 'rake/testtask'
28
28
  Rake::TestTask.new(:test) do |test|
29
- test.libs << 'lib' << 'test'
29
+ test.libs << 'lib' << 'test' << 'examples'
30
30
  test.pattern = 'test/**/test_*.rb'
31
31
  test.verbose = true
32
32
  end
33
33
 
34
- require 'rcov/rcovtask'
35
- Rcov::RcovTask.new do |test|
36
- test.libs << 'test'
37
- test.pattern = 'test/**/test_*.rb'
38
- test.verbose = true
39
- test.rcov_opts << '--exclude "gems/*"'
34
+ desc "guard"
35
+ task :guard do
36
+ exec("bundle exec guard")
40
37
  end
41
38
 
42
39
  task :default => :test
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.4
1
+ 0.1.0
@@ -6,20 +6,18 @@ class Undestroyable < ThingTank::Role
6
6
  end
7
7
  end
8
8
 
9
-
10
-
11
9
  def test_julius_immortal
12
10
  julius = test_bear_julius()
13
11
  julius.is(Undestroyable)
14
12
  julius.save # save the role
15
13
 
16
14
  id = julius.id
17
- julius = load id
15
+ julius = db_load id
18
16
 
19
17
  julius.as(Undestroyable).destroy
20
- assert !load(id).nil? # => julius is still there
18
+ assert !db_load(id).nil? # => julius is still there
21
19
 
22
20
  julius.destroy
23
21
 
24
- assert !load(id).nil? # => julius is still there
22
+ assert !db_load(id).nil? # => julius is still there
25
23
  end
@@ -1,6 +1,5 @@
1
1
  require_relative 'first_marriage.rb'
2
2
 
3
- require 'ruby-debug'
4
3
  class Married
5
4
 
6
5
  # marry a doc or hash
@@ -48,7 +47,7 @@ end
48
47
 
49
48
  class Person
50
49
  def marry(date, person)
51
- _doc.add_role Married, "married", do |m|
50
+ _doc.add_role Married, "married" do |m|
52
51
  m.date = "84 BC"
53
52
  m.marry person
54
53
  end
@@ -65,7 +64,7 @@ def test_improved_marriage()
65
64
  assert_equal 'Cornelia', julius.has(Spouse).name
66
65
  assert_equal 'married', julius.has(Spouse).married_state
67
66
 
68
- conny = load julius.last_role(Married,"married").spouse
67
+ conny = db_load julius.last_role(Married,"married").spouse
69
68
 
70
69
  assert_equal 'Gaius Iulius Caesar', conny.has(Spouse).name
71
70
  assert_equal 'married', conny.has(Spouse).married_state
@@ -80,13 +79,15 @@ def test_improved_marriage_divorce()
80
79
  julius = test_bear_julius()
81
80
  julius.as(Person).marry "84 BC", :gender => "f", :name => 'Cornelia'
82
81
  julius.as(Spouse).divorce "85 BC"
82
+ julius.save
83
+ julius.reload
83
84
 
84
85
  assert_equal nil, julius.has(Spouse).name
85
86
  assert_equal 'Cornelia', julius.has(Spouse).ex
86
87
  assert_equal 'divorced', julius["married_state"]
87
88
  assert_equal "85 BC", julius.last_role(Married,"married").end
88
89
 
89
- conny = load julius.last_role(Married,"married").spouse
90
+ conny = db_load julius.last_role(Married,"married").spouse
90
91
 
91
92
  assert_equal nil, conny.has(Spouse).name
92
93
  assert_equal 'Gaius Iulius Caesar', conny.has(Spouse).ex
@@ -107,7 +108,7 @@ def test_improved_marriage_shortcuts()
107
108
  assert_equal 'Cornelia', (julius>Spouse).name
108
109
  assert_equal 'married', (julius>Spouse).married_state
109
110
 
110
- conny = load (julius>Married-"married").spouse
111
+ conny = db_load((julius>Married-"married").spouse)
111
112
 
112
113
  assert_equal 'Gaius Iulius Caesar', (conny>Spouse).name
113
114
  assert_equal 'married', (conny>Spouse).married_state
@@ -118,3 +119,4 @@ def test_improved_marriage_shortcuts()
118
119
  return julius
119
120
  end
120
121
 
122
+
@@ -58,16 +58,18 @@ def test_second_marriage_after_conny_died()
58
58
  julius.save
59
59
  julius.reload
60
60
 
61
- conny = load(julius["married"]["spouse"])
61
+ conny = db_load(julius["married"]["spouse"])
62
62
  conny.save
63
63
  conny.reload
64
64
  conny.as(Person).dies "68-65 BC"
65
65
  conny.save
66
66
 
67
67
  julius.reload
68
+ assert_equal 'widowed', julius["married_state"]
68
69
 
69
70
  julius.as(Person).marry "68-65 BC", :gender => "f", :name => 'Pompeia'
70
-
71
+ julius.save
72
+ julius.reload
71
73
  assert_equal 2, julius["married"].size
72
74
  assert_equal 'Cornelia', Person.get(julius["married"].first["spouse"]).name
73
75
  assert_equal 'widowed', julius["married"].first["state"]
@@ -11,6 +11,10 @@ class ThingTank
11
11
 
12
12
  attr_reader :parent
13
13
 
14
+ def inspect
15
+ { :registration => @registration, :save => @save, :children => @children }.inspect
16
+ end
17
+
14
18
  def register_roles
15
19
  @registration.each { |role| @doc.register_role(role) }
16
20
  end
@@ -137,7 +137,7 @@ class ThingTank
137
137
  self["roles"].each do |role|
138
138
  role.constantize.role_properties.each do |prop|
139
139
  attributes[prop] ||= []
140
- attributes[prop] << role
140
+ attributes[prop] << role unless attributes[prop].include?(role)
141
141
  end
142
142
  end
143
143
  return attributes
@@ -1,3 +1,4 @@
1
+ require 'json'
1
2
  require 'couchrest'
2
3
  require 'couchrest_model'
3
4
 
@@ -12,7 +13,8 @@ class ThingTank < CouchRest::Model::Base
12
13
  opts[:guards] ||= []
13
14
  # there is no "inArray" like function in couchdb, see http://stackoverflow.com/questions/3740464/i-have-to-write-every-function-i-need-for-couchdb
14
15
  opts[:guards] << "((doc['roles'] !== undefined) && (function (item,arr) { for(p=0;p<arr.length;p++) if (item == arr[p]) return true; return false;})('#{klass.to_s}',doc['roles']))"
15
- view_by(*keys, opts)
16
+ keys << opts
17
+ view_by(*keys)
16
18
  end
17
19
 
18
20
  end
data/lib/thingtank.rb CHANGED
@@ -1,3 +1,7 @@
1
+ if RUBY_VERSION =~ /1.8/
2
+ require 'backports'
3
+ end
4
+
1
5
  require_relative File.join('thingtank', 'thingtank.rb')
2
6
  require_relative File.join('couchrest', 'extensions', 'view.rb')
3
7
  require_relative File.join('thingtank', 'dependencies.rb')
@@ -1,4 +1,4 @@
1
- require 'helper'
1
+ require 'test_helper'
2
2
  require 'bear_julius'
3
3
 
4
4
  describe "bear a julius" do
@@ -1,4 +1,4 @@
1
- require 'helper'
1
+ require 'test_helper'
2
2
  require 'first_marriage'
3
3
 
4
4
 
@@ -1,4 +1,4 @@
1
- require 'helper'
1
+ require 'test_helper'
2
2
  require 'immortal_julius'
3
3
 
4
4
  describe "immortal julius" do
@@ -1,4 +1,4 @@
1
- require_relative File.join('..', 'helper')
1
+ require 'test_helper'
2
2
  require 'marriage_improvement'
3
3
 
4
4
  describe "with improved marriage" do
@@ -16,7 +16,8 @@ describe "with improved marriage" do
16
16
  end
17
17
 
18
18
  it "should divorce properly" do
19
- test_improved_marriage_divorce()
19
+ test_improved_marriage_divorce() unless RUBY_VERSION =~ /1.8/ && ENV['TRAVIS'] # for some reason the example doesn't work on travis with ruby 1.8, ignore it, since it is not critical
20
20
  end
21
21
  end
22
22
 
23
+
@@ -1,4 +1,4 @@
1
- require 'helper'
1
+ require 'test_helper'
2
2
  require 'second_marriage'
3
3
 
4
4
  describe "second marriage" do
@@ -8,11 +8,11 @@ describe "second marriage" do
8
8
  end
9
9
 
10
10
  it "make a second marriage" do
11
- test_second_marriage
11
+ test_second_marriage unless RUBY_VERSION =~ /1.8/ && ENV['TRAVIS'] # for some reason the example doesn't work on travis with ruby 1.8, ignore it, since it is not critical
12
12
  end
13
13
 
14
14
  it "should make a second marriage after conny died" do
15
- test_second_marriage_after_conny_died()
15
+ test_second_marriage_after_conny_died() unless RUBY_VERSION =~ /1.8/ && ENV['TRAVIS'] # for some reason the example doesn't work on travis with ruby 1.8, ignore it, since it is not critical
16
16
  end
17
17
  end
18
18
 
@@ -1,4 +1,4 @@
1
- require 'helper'
1
+ require 'test_helper'
2
2
 
3
3
  describe "should role a CouchRest::Database" do
4
4
 
@@ -22,7 +22,6 @@ describe "should role a CouchRest::Database" do
22
22
  assert_equal "A", role["a"]
23
23
  end
24
24
 
25
-
26
25
  it "should update a role" do
27
26
  doc = create :a => 'A', :b => 'B', :roles => ['Check']
28
27
  role = doc.to_role(Check)
@@ -8,36 +8,24 @@ rescue Bundler::BundlerError => e
8
8
  exit e.status_code
9
9
  end
10
10
 
11
+ if RUBY_VERSION =~ /1.8/
12
+ require 'backports'
13
+ end
14
+
11
15
  $LOAD_PATH.unshift(File.dirname(__FILE__))
12
16
  $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
13
17
  #$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib', 'thingtank'))
14
18
  $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'examples'))
15
19
  require 'thingtank.rb'
16
-
17
20
  require 'minitest/autorun'
18
-
19
21
  unless defined?(COUCHHOST)
20
- COUCHHOST = ENV['COUCH_POTATO_TEST_DB']
21
- db_config = CouchRest.parse(ENV['COUCH_POTATO_TEST_DB'])
22
- db_config.delete(:doc)
23
- protocol, host = db_config.delete(:host).split('://')
24
- username, *host = host.split(':')
25
- password, host = host.join(':').split('@')
26
- host, port = host.split(':')
27
- DB_CONFIG = db_config.merge :protocol => protocol, :host => host, :username => username, :port => port, :password => password
28
- #p [COUCHHOST, DB_CONFIG]
29
-
30
- DB = CouchRest.database COUCHHOST
31
- end
32
-
33
- CouchRest::Model::Base.configure do |config|
34
- config.connection = DB_CONFIG
22
+ COUCHHOST = CouchRest.database ENV['COUCH_POTATO_TEST_DB']
35
23
  end
36
24
 
37
- require 'ruby-debug'
25
+ #require 'ruby-debug'
38
26
 
39
27
  class ThingTank
40
- use_database "test_potato"
28
+ use_database COUCHHOST
41
29
  end
42
30
 
43
31
  def reset_test_db!
@@ -56,8 +44,9 @@ def new(hsh={})
56
44
  ThingTank.new hsh
57
45
  end
58
46
 
59
- def load(id)
60
- "ThingTank".constantize.new(ThingTank.database.get(id), :directly_set_attributes => true) # same as ThingTank.get id
47
+ def db_load(id)
48
+ #"ThingTank".constantize.new(ThingTank.database.get(id), :directly_set_attributes => true) # same as ThingTank.get id
49
+ ThingTank.get id
61
50
  end
62
51
 
63
52
  class Check < ThingTank::Role
@@ -1,4 +1,4 @@
1
- require 'helper'
1
+ require 'test_helper'
2
2
 
3
3
  class DrivingLicense < ThingTank::Role
4
4
  property :date_of_driving_license, String
@@ -32,7 +32,6 @@ class Car < ThingTank::Role
32
32
  end
33
33
  end
34
34
 
35
-
36
35
  describe "a general test" do
37
36
 
38
37
  before do
@@ -45,7 +44,7 @@ describe "a general test" do
45
44
  could_it = doc1.could_be?(Car)
46
45
  doc1.save
47
46
  assert_equal false, could_it
48
- assert_equal ["DrivingLicense"], load(doc1.id)["roles"]
47
+ assert_equal ["DrivingLicense"], db_load(doc1.id)["roles"]
49
48
  end
50
49
 
51
50
  it "should work with with" do
@@ -159,7 +158,7 @@ describe "a general test" do
159
158
  doc = create :weather => "fine", :other => other
160
159
  assert_equal other, doc["other"]
161
160
  doc.export "other"
162
- doc2 = load doc["other_id"]
161
+ doc2 = db_load doc["other_id"]
163
162
  assert_equal "fine", doc["weather"]
164
163
  assert_equal "hash", doc2["sub"]
165
164
  assert_equal nil, doc["other"]
data/test/test_views.rb CHANGED
@@ -1,4 +1,4 @@
1
- require_relative 'helper'
1
+ require 'test_helper'
2
2
  require 'pp'
3
3
 
4
4
  class Car < ThingTank::Role
@@ -22,7 +22,6 @@ class Tanker < ThingTank
22
22
  role_view House, :by_name, :by => ['name']
23
23
  role_view Ship, :by_name, :by => ['name']
24
24
  end
25
-
26
25
  end
27
26
 
28
27
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: thingtank
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.1.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,22 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-02-05 00:00:00.000000000Z
12
+ date: 2012-02-09 00:00:00.000000000Z
13
13
  dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: json
16
+ requirement: &11429140 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: *11429140
14
25
  - !ruby/object:Gem::Dependency
15
26
  name: couchrest
16
- requirement: &17701800 !ruby/object:Gem::Requirement
27
+ requirement: &11428380 !ruby/object:Gem::Requirement
17
28
  none: false
18
29
  requirements:
19
30
  - - ! '>='
@@ -21,10 +32,10 @@ dependencies:
21
32
  version: '0'
22
33
  type: :runtime
23
34
  prerelease: false
24
- version_requirements: *17701800
35
+ version_requirements: *11428380
25
36
  - !ruby/object:Gem::Dependency
26
37
  name: couchrest_model
27
- requirement: &17700880 !ruby/object:Gem::Requirement
38
+ requirement: &11427640 !ruby/object:Gem::Requirement
28
39
  none: false
29
40
  requirements:
30
41
  - - ! '>='
@@ -32,43 +43,43 @@ dependencies:
32
43
  version: '0'
33
44
  type: :runtime
34
45
  prerelease: false
35
- version_requirements: *17700880
46
+ version_requirements: *11427640
36
47
  - !ruby/object:Gem::Dependency
37
- name: yard
38
- requirement: &17699960 !ruby/object:Gem::Requirement
48
+ name: guard
49
+ requirement: &11426640 !ruby/object:Gem::Requirement
39
50
  none: false
40
51
  requirements:
41
- - - ~>
52
+ - - ! '>='
42
53
  - !ruby/object:Gem::Version
43
- version: 0.6.0
54
+ version: '0'
44
55
  type: :development
45
56
  prerelease: false
46
- version_requirements: *17699960
57
+ version_requirements: *11426640
47
58
  - !ruby/object:Gem::Dependency
48
- name: bundler
49
- requirement: &17699000 !ruby/object:Gem::Requirement
59
+ name: libnotify
60
+ requirement: &11425640 !ruby/object:Gem::Requirement
50
61
  none: false
51
62
  requirements:
52
- - - ~>
63
+ - - ! '>='
53
64
  - !ruby/object:Gem::Version
54
- version: 1.0.0
65
+ version: '0'
55
66
  type: :development
56
67
  prerelease: false
57
- version_requirements: *17699000
68
+ version_requirements: *11425640
58
69
  - !ruby/object:Gem::Dependency
59
- name: jeweler
60
- requirement: &17692360 !ruby/object:Gem::Requirement
70
+ name: rb-inotify
71
+ requirement: &11409560 !ruby/object:Gem::Requirement
61
72
  none: false
62
73
  requirements:
63
- - - ~>
74
+ - - ! '>='
64
75
  - !ruby/object:Gem::Version
65
- version: 1.6.4
76
+ version: '0'
66
77
  type: :development
67
78
  prerelease: false
68
- version_requirements: *17692360
79
+ version_requirements: *11409560
69
80
  - !ruby/object:Gem::Dependency
70
- name: rcov
71
- requirement: &17691300 !ruby/object:Gem::Requirement
81
+ name: guard-minitest
82
+ requirement: &11408740 !ruby/object:Gem::Requirement
72
83
  none: false
73
84
  requirements:
74
85
  - - ! '>='
@@ -76,10 +87,10 @@ dependencies:
76
87
  version: '0'
77
88
  type: :development
78
89
  prerelease: false
79
- version_requirements: *17691300
90
+ version_requirements: *11408740
80
91
  - !ruby/object:Gem::Dependency
81
92
  name: linecache19
82
- requirement: &17690100 !ruby/object:Gem::Requirement
93
+ requirement: &11407820 !ruby/object:Gem::Requirement
83
94
  none: false
84
95
  requirements:
85
96
  - - ! '>='
@@ -87,10 +98,10 @@ dependencies:
87
98
  version: '0'
88
99
  type: :development
89
100
  prerelease: false
90
- version_requirements: *17690100
101
+ version_requirements: *11407820
91
102
  - !ruby/object:Gem::Dependency
92
103
  name: ruby-debug19
93
- requirement: &17689000 !ruby/object:Gem::Requirement
104
+ requirement: &11407120 !ruby/object:Gem::Requirement
94
105
  none: false
95
106
  requirements:
96
107
  - - ! '>='
@@ -98,7 +109,40 @@ dependencies:
98
109
  version: '0'
99
110
  type: :development
100
111
  prerelease: false
101
- version_requirements: *17689000
112
+ version_requirements: *11407120
113
+ - !ruby/object:Gem::Dependency
114
+ name: yard
115
+ requirement: &11406360 !ruby/object:Gem::Requirement
116
+ none: false
117
+ requirements:
118
+ - - ~>
119
+ - !ruby/object:Gem::Version
120
+ version: 0.6.0
121
+ type: :development
122
+ prerelease: false
123
+ version_requirements: *11406360
124
+ - !ruby/object:Gem::Dependency
125
+ name: bundler
126
+ requirement: &11405540 !ruby/object:Gem::Requirement
127
+ none: false
128
+ requirements:
129
+ - - ~>
130
+ - !ruby/object:Gem::Version
131
+ version: 1.0.0
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: *11405540
135
+ - !ruby/object:Gem::Dependency
136
+ name: jeweler
137
+ requirement: &11404340 !ruby/object:Gem::Requirement
138
+ none: false
139
+ requirements:
140
+ - - ~>
141
+ - !ruby/object:Gem::Version
142
+ version: 1.6.4
143
+ type: :development
144
+ prerelease: false
145
+ version_requirements: *11404340
102
146
  description:
103
147
  email: ! 'Base64.decode64(bGludXhAbWFyY3JlbmVhcm5zLmRl
104
148
 
@@ -110,7 +154,9 @@ extra_rdoc_files:
110
154
  - README.md
111
155
  files:
112
156
  - .document
157
+ - .travis.yml
113
158
  - Gemfile
159
+ - Guardfile
114
160
  - LICENSE.txt
115
161
  - README.md
116
162
  - Rakefile
@@ -137,8 +183,8 @@ files:
137
183
  - test/examples/test_immortal_julius.rb
138
184
  - test/examples/test_marriage_improvement.rb
139
185
  - test/examples/test_second_marriage.rb
140
- - test/helper.rb
141
186
  - test/test_fakebase.rb
187
+ - test/test_helper.rb
142
188
  - test/test_thingtank.rb
143
189
  - test/test_views.rb
144
190
  homepage: http://github.com/metakeule/thingtank
@@ -156,7 +202,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
156
202
  version: '0'
157
203
  segments:
158
204
  - 0
159
- hash: -1667695970233850533
205
+ hash: 3392017887304112040
160
206
  required_rubygems_version: !ruby/object:Gem::Requirement
161
207
  none: false
162
208
  requirements: