ardm 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.ruby-version +1 -0
- data/Gemfile +14 -2
- data/ardm.gemspec +1 -1
- data/lib/ardm.rb +8 -0
- data/lib/ardm/active_record.rb +0 -5
- data/lib/ardm/active_record/associations.rb +27 -10
- data/lib/ardm/active_record/predicate_builder/rails4.rb +12 -5
- data/lib/ardm/active_record/property.rb +4 -3
- data/lib/ardm/active_record/record.rb +10 -6
- data/lib/ardm/active_record/relation.rb +67 -2
- data/lib/ardm/data_mapper.rb +2 -0
- data/lib/ardm/data_mapper/record.rb +19 -22
- data/lib/ardm/property/support/paranoid_base.rb +1 -1
- data/lib/ardm/query/expression.rb +5 -15
- data/lib/ardm/query/operator.rb +3 -3
- data/lib/ardm/version.rb +1 -1
- data/spec/fixtures/article.rb +1 -1
- data/spec/fixtures/resource_blog.rb +53 -0
- data/spec/integration/comma_separated_list_spec.rb +4 -4
- data/spec/integration/dirty_minder_spec.rb +1 -1
- data/spec/integration/enum_spec.rb +2 -2
- data/spec/integration/epoch_time_spec.rb +2 -2
- data/spec/integration/file_path_spec.rb +4 -4
- data/spec/integration/flag_spec.rb +5 -3
- data/spec/integration/json_spec.rb +3 -3
- data/spec/public/model_spec.rb +78 -8
- data/spec/public/property_spec.rb +10 -6
- data/spec/public/resource_spec.rb +9 -64
- data/spec/shared/{finder_shared_spec.rb → finder_shared.rb} +134 -128
- data/spec/shared/{flags_shared_spec.rb → flags_shared.rb} +0 -0
- data/spec/shared/{public_property_spec.rb → public_property.rb} +0 -0
- data/spec/shared/{resource_spec.rb → resource.rb} +46 -31
- data/spec/shared/{semipublic_property_spec.rb → semipublic_property.rb} +0 -0
- data/spec/spec_helper.rb +11 -5
- data/spec/support/logger.rb +38 -0
- data/spec/unit/dirty_minder_spec.rb +4 -2
- data/spec/unit/paranoid_boolean_spec.rb +3 -3
- data/spec/unit/paranoid_datetime_spec.rb +3 -3
- metadata +59 -30
- checksums.yaml +0 -7
File without changes
|
File without changes
|
@@ -628,7 +628,7 @@ shared_examples 'A public Resource' do
|
|
628
628
|
describe 'on a resource that is changed outside another resource' do
|
629
629
|
before do
|
630
630
|
rescue_if @skip do
|
631
|
-
@user.
|
631
|
+
@user.clone.update(:description => 'Changed')
|
632
632
|
end
|
633
633
|
end
|
634
634
|
|
@@ -825,33 +825,39 @@ shared_examples 'A public Resource' do
|
|
825
825
|
end
|
826
826
|
|
827
827
|
it 'should save resource' do
|
828
|
-
|
829
|
-
|
828
|
+
skip_if !@user.respond_to?(:comments) do
|
829
|
+
expect(@return).to be(true)
|
830
|
+
end
|
830
831
|
end
|
831
832
|
|
832
833
|
it 'should save the first resource created through new' do
|
833
|
-
|
834
|
-
|
834
|
+
skip_if !@user.respond_to?(:comments) do
|
835
|
+
expect(@first_comment.new?).to be(false)
|
836
|
+
end
|
835
837
|
end
|
836
838
|
|
837
839
|
it 'should save the correct foreign key for the first resource' do
|
838
|
-
|
839
|
-
|
840
|
+
skip_if !@user.respond_to?(:comments) do
|
841
|
+
expect(@first_comment.user).to eql(@user)
|
842
|
+
end
|
840
843
|
end
|
841
844
|
|
842
845
|
it 'should save the second resource created through the constructor' do
|
843
|
-
skip "Changing a belongs_to parent should add the resource to the correct association"
|
844
|
-
|
846
|
+
skip "Changing a belongs_to parent should add the resource to the correct association" do
|
847
|
+
expect(@second_comment.new?).to be(false)
|
848
|
+
end
|
845
849
|
end
|
846
850
|
|
847
851
|
it 'should save the correct foreign key for the second resource' do
|
848
|
-
|
849
|
-
|
852
|
+
skip_if !@user.respond_to?(:comments) do
|
853
|
+
expect(@second_comment.user).to eql(@user)
|
854
|
+
end
|
850
855
|
end
|
851
856
|
|
852
857
|
it 'should create 2 extra resources in persistent storage' do
|
853
|
-
skip "Changing a belongs_to parent should add the resource to the correct association"
|
854
|
-
|
858
|
+
skip "Changing a belongs_to parent should add the resource to the correct association" do
|
859
|
+
expect(@user.comments.size).to eq(@initial_comments + 2)
|
860
|
+
end
|
855
861
|
end
|
856
862
|
end
|
857
863
|
|
@@ -870,8 +876,9 @@ shared_examples 'A public Resource' do
|
|
870
876
|
end
|
871
877
|
|
872
878
|
it 'should return true' do
|
873
|
-
|
874
|
-
|
879
|
+
skip_if !@user.respond_to?(:comments) do
|
880
|
+
expect(@return).to be(true)
|
881
|
+
end
|
875
882
|
end
|
876
883
|
|
877
884
|
it 'should not be dirty' do
|
@@ -879,13 +886,15 @@ shared_examples 'A public Resource' do
|
|
879
886
|
end
|
880
887
|
|
881
888
|
it 'should have saved the first child resource' do
|
882
|
-
|
883
|
-
|
889
|
+
skip_if !@user.respond_to?(:comments) do
|
890
|
+
expect(@first_comment.model.get(*@first_comment.key).body).to eq('It still has rough edges')
|
891
|
+
end
|
884
892
|
end
|
885
893
|
|
886
894
|
it 'should not have saved the second child resource' do
|
887
|
-
|
888
|
-
|
895
|
+
skip_if !@user.respond_to?(:comments) do
|
896
|
+
expect(@second_comment.model.get(*@second_comment.key).body).to eq('is it really?')
|
897
|
+
end
|
889
898
|
end
|
890
899
|
end
|
891
900
|
|
@@ -896,8 +905,9 @@ shared_examples 'A public Resource' do
|
|
896
905
|
end
|
897
906
|
|
898
907
|
it 'should not raise an exception when saving the resource' do
|
899
|
-
skip
|
900
|
-
|
908
|
+
skip do
|
909
|
+
expect { expect(@first_comment.send(method)).to be(false) }.not_to raise_error
|
910
|
+
end
|
901
911
|
end
|
902
912
|
end
|
903
913
|
|
@@ -937,23 +947,27 @@ shared_examples 'A public Resource' do
|
|
937
947
|
end
|
938
948
|
|
939
949
|
it 'should not be dirty' do
|
940
|
-
|
941
|
-
|
950
|
+
skip_if !@article.respond_to?(:paragraphs) do
|
951
|
+
expect(@article).not_to be_dirty
|
952
|
+
end
|
942
953
|
end
|
943
954
|
|
944
955
|
it 'should not be dirty' do
|
945
|
-
|
946
|
-
|
956
|
+
skip_if !@article.respond_to?(:paragraphs) do
|
957
|
+
expect(@paragraph).not_to be_dirty
|
958
|
+
end
|
947
959
|
end
|
948
960
|
|
949
961
|
it 'should set the related resource' do
|
950
|
-
|
951
|
-
|
962
|
+
skip_if !@article.respond_to?(:paragraphs) do
|
963
|
+
expect(@paragraph.article).to eq(@article)
|
964
|
+
end
|
952
965
|
end
|
953
966
|
|
954
967
|
it 'should set the foreign key properly' do
|
955
|
-
|
956
|
-
|
968
|
+
skip_if !@article.respond_to?(:paragraphs) do
|
969
|
+
expect(@paragraph.article_id).to eq(@article.id)
|
970
|
+
end
|
957
971
|
end
|
958
972
|
end
|
959
973
|
|
@@ -1211,8 +1225,9 @@ shared_examples 'A public Resource' do
|
|
1211
1225
|
end
|
1212
1226
|
|
1213
1227
|
it 'should not overwrite dirty key' do
|
1214
|
-
skip
|
1215
|
-
|
1228
|
+
skip do
|
1229
|
+
expect(@user.name).to eq('dkubb')
|
1230
|
+
end
|
1216
1231
|
end
|
1217
1232
|
end
|
1218
1233
|
end
|
File without changes
|
data/spec/spec_helper.rb
CHANGED
@@ -1,9 +1,10 @@
|
|
1
|
-
require
|
2
|
-
require 'database_cleaner'
|
1
|
+
Bundler.require(:default, :test)
|
3
2
|
|
4
3
|
ENV['ORM'] ||= 'active_record'
|
5
4
|
require 'ardm/env'
|
6
5
|
|
6
|
+
Dir["#{Pathname(__FILE__).dirname.expand_path}/{shared,support}/*.rb"].each { |file| require file }
|
7
|
+
|
7
8
|
Ardm.active_record do
|
8
9
|
ActiveRecord::Base.configurations = { "ardm" => {
|
9
10
|
"database" => "db/test.sqlite",
|
@@ -20,12 +21,17 @@ Ardm.active_record do
|
|
20
21
|
end
|
21
22
|
|
22
23
|
Ardm.data_mapper do
|
23
|
-
|
24
|
+
Bundler.require(:datamapper)
|
25
|
+
DataMapper.setup(:default, "sqlite3://#{File.expand_path("../../db/test.sqlite", __FILE__)}")
|
26
|
+
DataMapper.auto_migrate!
|
24
27
|
end
|
25
28
|
|
26
|
-
Dir["#{Pathname(__FILE__).dirname.expand_path}/shared/*.rb"].each { |file| require file }
|
27
|
-
|
28
29
|
RSpec.configure do |config|
|
30
|
+
config.treat_symbols_as_metadata_keys_with_true_values = true
|
31
|
+
if ENV["ORM"] == "active_record"
|
32
|
+
config.filter_run_excluding(:dm => true)
|
33
|
+
end
|
34
|
+
|
29
35
|
config.before(:suite) do
|
30
36
|
DatabaseCleaner.strategy = :transaction
|
31
37
|
DatabaseCleaner.clean_with(:truncation)
|
@@ -0,0 +1,38 @@
|
|
1
|
+
if defined?(::DataMapper)
|
2
|
+
module DataMapper::LogListener
|
3
|
+
def log(message)
|
4
|
+
DataMapper.logger.info("#{message.query}")
|
5
|
+
super
|
6
|
+
rescue Exception => e
|
7
|
+
::DataMapper.logger.error "[datamapper] #{e.class.name}: #{e.message}: #{message.inspect}}"
|
8
|
+
end
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
RSpec.configure do |config|
|
13
|
+
config.before(:each) do
|
14
|
+
require 'logger'
|
15
|
+
logger = Logger.new(nil)
|
16
|
+
|
17
|
+
if Ardm.rails4?
|
18
|
+
require 'active_support/logger'
|
19
|
+
logger = if ENV["VERBOSE"]
|
20
|
+
ActiveSupport::Logger.new(STDOUT)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
if defined?(::ActiveRecord::Base)
|
25
|
+
::ActiveRecord::Base.logger = logger
|
26
|
+
elsif defined?(::DataMapper)
|
27
|
+
require 'active_support/inflector'
|
28
|
+
driver = DataObjects.const_get(ActiveSupport::Inflector.camelize('sqlite3'), false)
|
29
|
+
|
30
|
+
DataObjects::Connection.send(:include, DataMapper::LogListener)
|
31
|
+
# FIXME Setting DataMapper::Logger.new($stdout, :off) alone won't work because the #log
|
32
|
+
# method is currently only available in DO and needs an explicit DO Logger instantiated.
|
33
|
+
# We turn the logger :off because ActiveSupport::Notifications handles displaying log messages
|
34
|
+
driver.logger = DataObjects::Logger.new($stdout, :off)
|
35
|
+
::DataMapper.logger = logger
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -31,8 +31,10 @@ describe Ardm::Property::DirtyMinder,'set!' do
|
|
31
31
|
end
|
32
32
|
|
33
33
|
shared_examples_for 'a hooked value' do
|
34
|
-
it 'should extend value with hook'
|
35
|
-
|
34
|
+
it 'should extend value with hook' do
|
35
|
+
skip "FIXME: This probably should pass" do
|
36
|
+
expect(object.get!(resource)).to be_kind_of(Ardm::Property::DirtyMinder::Hooker)
|
37
|
+
end
|
36
38
|
end
|
37
39
|
end
|
38
40
|
|
@@ -7,7 +7,7 @@ module ::ParanoidBooleanBlog
|
|
7
7
|
property :deleted, ParanoidBoolean
|
8
8
|
timestamps :at
|
9
9
|
|
10
|
-
|
10
|
+
before(:destroy, :before_destroy)
|
11
11
|
|
12
12
|
def before_destroy; end
|
13
13
|
end
|
@@ -50,7 +50,7 @@ describe Ardm::Property::ParanoidBoolean do
|
|
50
50
|
@resource = @model.create
|
51
51
|
end
|
52
52
|
|
53
|
-
it { expect(
|
53
|
+
it { expect(subject).to be_truthy }
|
54
54
|
|
55
55
|
it 'should not delete the resource from the datastore' do
|
56
56
|
expect(method(:subject)).not_to change { @model.with_deleted.size }.from(1)
|
@@ -94,7 +94,7 @@ describe Ardm::Property::ParanoidBoolean do
|
|
94
94
|
@resource = @model.create
|
95
95
|
end
|
96
96
|
|
97
|
-
it { expect(
|
97
|
+
it { expect(subject).to be_truthy }
|
98
98
|
|
99
99
|
it 'should delete the resource from the datastore' do
|
100
100
|
expect(method(:subject)).to change { @model.with_deleted.size }.from(1).to(0)
|
@@ -8,7 +8,7 @@ module ::ParanoidDateTimeBlog
|
|
8
8
|
property :deleted_at, ParanoidDateTime
|
9
9
|
timestamps :at
|
10
10
|
|
11
|
-
|
11
|
+
before(:destroy, :before_destroy)
|
12
12
|
|
13
13
|
def before_destroy; end
|
14
14
|
end
|
@@ -56,7 +56,7 @@ describe Ardm::Property::ParanoidDateTime do
|
|
56
56
|
@resource = @model.create
|
57
57
|
end
|
58
58
|
|
59
|
-
it { expect(
|
59
|
+
it { expect(subject).to be_truthy }
|
60
60
|
|
61
61
|
it 'should not delete the resource from the datastore' do
|
62
62
|
expect(method(:subject)).not_to change { @model.with_deleted.size }.from(1)
|
@@ -100,7 +100,7 @@ describe Ardm::Property::ParanoidDateTime do
|
|
100
100
|
@resource = @model.create
|
101
101
|
end
|
102
102
|
|
103
|
-
it { expect(
|
103
|
+
it { expect(subject).to be_truthy }
|
104
104
|
|
105
105
|
it 'should delete the resource from the datastore' do
|
106
106
|
expect(method(:subject)).to change { @model.with_deleted.size }.from(1).to(0)
|
metadata
CHANGED
@@ -1,7 +1,8 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ardm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
|
+
prerelease:
|
5
6
|
platform: ruby
|
6
7
|
authors:
|
7
8
|
- Martin Emde
|
@@ -14,127 +15,151 @@ dependencies:
|
|
14
15
|
- !ruby/object:Gem::Dependency
|
15
16
|
name: activesupport
|
16
17
|
requirement: !ruby/object:Gem::Requirement
|
18
|
+
none: false
|
17
19
|
requirements:
|
18
|
-
- -
|
20
|
+
- - ! '>='
|
19
21
|
- !ruby/object:Gem::Version
|
20
22
|
version: '3.2'
|
23
|
+
- - <
|
24
|
+
- !ruby/object:Gem::Version
|
25
|
+
version: '4.1'
|
21
26
|
type: :runtime
|
22
27
|
prerelease: false
|
23
28
|
version_requirements: !ruby/object:Gem::Requirement
|
29
|
+
none: false
|
24
30
|
requirements:
|
25
|
-
- -
|
31
|
+
- - ! '>='
|
26
32
|
- !ruby/object:Gem::Version
|
27
33
|
version: '3.2'
|
34
|
+
- - <
|
35
|
+
- !ruby/object:Gem::Version
|
36
|
+
version: '4.1'
|
28
37
|
- !ruby/object:Gem::Dependency
|
29
38
|
name: bcrypt-ruby
|
30
39
|
requirement: !ruby/object:Gem::Requirement
|
40
|
+
none: false
|
31
41
|
requirements:
|
32
|
-
- -
|
42
|
+
- - ~>
|
33
43
|
- !ruby/object:Gem::Version
|
34
44
|
version: 3.0.0
|
35
45
|
type: :runtime
|
36
46
|
prerelease: false
|
37
47
|
version_requirements: !ruby/object:Gem::Requirement
|
48
|
+
none: false
|
38
49
|
requirements:
|
39
|
-
- -
|
50
|
+
- - ~>
|
40
51
|
- !ruby/object:Gem::Version
|
41
52
|
version: 3.0.0
|
42
53
|
- !ruby/object:Gem::Dependency
|
43
54
|
name: fastercsv
|
44
55
|
requirement: !ruby/object:Gem::Requirement
|
56
|
+
none: false
|
45
57
|
requirements:
|
46
|
-
- -
|
58
|
+
- - ~>
|
47
59
|
- !ruby/object:Gem::Version
|
48
60
|
version: 1.5.4
|
49
61
|
type: :runtime
|
50
62
|
prerelease: false
|
51
63
|
version_requirements: !ruby/object:Gem::Requirement
|
64
|
+
none: false
|
52
65
|
requirements:
|
53
|
-
- -
|
66
|
+
- - ~>
|
54
67
|
- !ruby/object:Gem::Version
|
55
68
|
version: 1.5.4
|
56
69
|
- !ruby/object:Gem::Dependency
|
57
70
|
name: multi_json
|
58
71
|
requirement: !ruby/object:Gem::Requirement
|
72
|
+
none: false
|
59
73
|
requirements:
|
60
|
-
- -
|
74
|
+
- - ! '>'
|
61
75
|
- !ruby/object:Gem::Version
|
62
76
|
version: 1.3.2
|
63
77
|
type: :runtime
|
64
78
|
prerelease: false
|
65
79
|
version_requirements: !ruby/object:Gem::Requirement
|
80
|
+
none: false
|
66
81
|
requirements:
|
67
|
-
- -
|
82
|
+
- - ! '>'
|
68
83
|
- !ruby/object:Gem::Version
|
69
84
|
version: 1.3.2
|
70
85
|
- !ruby/object:Gem::Dependency
|
71
86
|
name: stringex
|
72
87
|
requirement: !ruby/object:Gem::Requirement
|
88
|
+
none: false
|
73
89
|
requirements:
|
74
|
-
- -
|
90
|
+
- - ~>
|
75
91
|
- !ruby/object:Gem::Version
|
76
92
|
version: 1.3.3
|
77
93
|
type: :runtime
|
78
94
|
prerelease: false
|
79
95
|
version_requirements: !ruby/object:Gem::Requirement
|
96
|
+
none: false
|
80
97
|
requirements:
|
81
|
-
- -
|
98
|
+
- - ~>
|
82
99
|
- !ruby/object:Gem::Version
|
83
100
|
version: 1.3.3
|
84
101
|
- !ruby/object:Gem::Dependency
|
85
102
|
name: uuidtools
|
86
103
|
requirement: !ruby/object:Gem::Requirement
|
104
|
+
none: false
|
87
105
|
requirements:
|
88
|
-
- -
|
106
|
+
- - ~>
|
89
107
|
- !ruby/object:Gem::Version
|
90
108
|
version: 2.1.2
|
91
109
|
type: :runtime
|
92
110
|
prerelease: false
|
93
111
|
version_requirements: !ruby/object:Gem::Requirement
|
112
|
+
none: false
|
94
113
|
requirements:
|
95
|
-
- -
|
114
|
+
- - ~>
|
96
115
|
- !ruby/object:Gem::Version
|
97
116
|
version: 2.1.2
|
98
117
|
- !ruby/object:Gem::Dependency
|
99
118
|
name: coercible
|
100
119
|
requirement: !ruby/object:Gem::Requirement
|
120
|
+
none: false
|
101
121
|
requirements:
|
102
|
-
- -
|
122
|
+
- - ! '>='
|
103
123
|
- !ruby/object:Gem::Version
|
104
124
|
version: '0'
|
105
125
|
type: :runtime
|
106
126
|
prerelease: false
|
107
127
|
version_requirements: !ruby/object:Gem::Requirement
|
128
|
+
none: false
|
108
129
|
requirements:
|
109
|
-
- -
|
130
|
+
- - ! '>='
|
110
131
|
- !ruby/object:Gem::Version
|
111
132
|
version: '0'
|
112
133
|
- !ruby/object:Gem::Dependency
|
113
134
|
name: rake
|
114
135
|
requirement: !ruby/object:Gem::Requirement
|
136
|
+
none: false
|
115
137
|
requirements:
|
116
|
-
- -
|
138
|
+
- - ~>
|
117
139
|
- !ruby/object:Gem::Version
|
118
140
|
version: 0.9.2
|
119
141
|
type: :development
|
120
142
|
prerelease: false
|
121
143
|
version_requirements: !ruby/object:Gem::Requirement
|
144
|
+
none: false
|
122
145
|
requirements:
|
123
|
-
- -
|
146
|
+
- - ~>
|
124
147
|
- !ruby/object:Gem::Version
|
125
148
|
version: 0.9.2
|
126
149
|
- !ruby/object:Gem::Dependency
|
127
150
|
name: rspec
|
128
151
|
requirement: !ruby/object:Gem::Requirement
|
152
|
+
none: false
|
129
153
|
requirements:
|
130
|
-
- -
|
154
|
+
- - ~>
|
131
155
|
- !ruby/object:Gem::Version
|
132
156
|
version: '2.0'
|
133
157
|
type: :development
|
134
158
|
prerelease: false
|
135
159
|
version_requirements: !ruby/object:Gem::Requirement
|
160
|
+
none: false
|
136
161
|
requirements:
|
137
|
-
- -
|
162
|
+
- - ~>
|
138
163
|
- !ruby/object:Gem::Version
|
139
164
|
version: '2.0'
|
140
165
|
description: ActiveRecord plugin to provide a smooth migration from DataMapper to
|
@@ -147,7 +172,8 @@ extra_rdoc_files:
|
|
147
172
|
- LICENSE
|
148
173
|
- README.md
|
149
174
|
files:
|
150
|
-
-
|
175
|
+
- .gitignore
|
176
|
+
- .ruby-version
|
151
177
|
- Gemfile
|
152
178
|
- LICENSE
|
153
179
|
- README.md
|
@@ -255,6 +281,7 @@ files:
|
|
255
281
|
- spec/fixtures/invention.rb
|
256
282
|
- spec/fixtures/network_node.rb
|
257
283
|
- spec/fixtures/person.rb
|
284
|
+
- spec/fixtures/resource_blog.rb
|
258
285
|
- spec/fixtures/software_package.rb
|
259
286
|
- spec/fixtures/ticket.rb
|
260
287
|
- spec/fixtures/tshirt.rb
|
@@ -306,14 +333,15 @@ files:
|
|
306
333
|
- spec/semipublic/property/text_spec.rb
|
307
334
|
- spec/semipublic/property/time_spec.rb
|
308
335
|
- spec/semipublic/property_spec.rb
|
309
|
-
- spec/shared/
|
310
|
-
- spec/shared/
|
336
|
+
- spec/shared/finder_shared.rb
|
337
|
+
- spec/shared/flags_shared.rb
|
311
338
|
- spec/shared/identity_function_group.rb
|
312
|
-
- spec/shared/
|
313
|
-
- spec/shared/
|
314
|
-
- spec/shared/
|
339
|
+
- spec/shared/public_property.rb
|
340
|
+
- spec/shared/resource.rb
|
341
|
+
- spec/shared/semipublic_property.rb
|
315
342
|
- spec/spec.opts
|
316
343
|
- spec/spec_helper.rb
|
344
|
+
- spec/support/logger.rb
|
317
345
|
- spec/unit/bcrypt_hash_spec.rb
|
318
346
|
- spec/unit/csv_spec.rb
|
319
347
|
- spec/unit/dirty_minder_spec.rb
|
@@ -334,25 +362,26 @@ files:
|
|
334
362
|
homepage: http://github.com/engineyard/ardm
|
335
363
|
licenses:
|
336
364
|
- MIT
|
337
|
-
metadata: {}
|
338
365
|
post_install_message:
|
339
366
|
rdoc_options: []
|
340
367
|
require_paths:
|
341
368
|
- lib
|
342
369
|
required_ruby_version: !ruby/object:Gem::Requirement
|
370
|
+
none: false
|
343
371
|
requirements:
|
344
|
-
- -
|
372
|
+
- - ! '>='
|
345
373
|
- !ruby/object:Gem::Version
|
346
374
|
version: '0'
|
347
375
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
376
|
+
none: false
|
348
377
|
requirements:
|
349
|
-
- -
|
378
|
+
- - ! '>='
|
350
379
|
- !ruby/object:Gem::Version
|
351
380
|
version: '0'
|
352
381
|
requirements: []
|
353
382
|
rubyforge_project:
|
354
|
-
rubygems_version:
|
383
|
+
rubygems_version: 1.8.23.2
|
355
384
|
signing_key:
|
356
|
-
specification_version:
|
385
|
+
specification_version: 3
|
357
386
|
summary: ActiveRecord plugin to provide a smooth migration from DataMapper to ActiveRecord
|
358
387
|
test_files: []
|