dm-active_model 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,5 @@
1
+ README.rdoc
2
+ lib/**/*.rb
3
+ bin/*
4
+ features/**/*.feature
5
+ LICENSE
@@ -0,0 +1,5 @@
1
+ *.sw?
2
+ .DS_Store
3
+ coverage
4
+ rdoc
5
+ pkg
@@ -0,0 +1,77 @@
1
+ [fb2fe87 | Sun Dec 20 19:59:22 UTC 2009] snusnu <gamsnjaga@gmail.com>
2
+
3
+ * Thx to jeweler this is now a gem
4
+
5
+ [53df775 | Thu Sep 24 03:06:19 UTC 2009] snusnu <gamsnjaga@gmail.com>
6
+
7
+ * All lint and rails_compliance specs pass.
8
+
9
+ [64c47dc | Thu Sep 24 02:53:17 UTC 2009] snusnu <gamsnjaga@gmail.com>
10
+
11
+ * Simplified #errors default implementation
12
+
13
+ [03beebe | Thu Sep 24 02:29:53 UTC 2009] snusnu <gamsnjaga@gmail.com>
14
+
15
+ * Only rely on active_model/lint for amo compliance specs
16
+
17
+ [f45713a | Thu Sep 24 02:29:33 UTC 2009] snusnu <gamsnjaga@gmail.com>
18
+
19
+ * Refactored rails_compliance_spec a bit
20
+
21
+ [755a48c | Thu Sep 24 02:20:57 UTC 2009] snusnu <gamsnjaga@gmail.com>
22
+
23
+ * Make it easy to move rails compliance specs to rails_datamapper
24
+
25
+ active_model/lint itself isn't really strict about what exact
26
+ String it gets back from either of the following methods that
27
+ are supported by the object returned from #class.model_name
28
+
29
+ #singular
30
+ #plural
31
+ #element
32
+ #human
33
+ #collection
34
+ #partial_path
35
+
36
+ All lint cares about, is that these methods return Strings
37
+
38
+ Therefore it's probably best to push specs that test for
39
+ rails's own implementation of those active_model strings
40
+ down to something like rails_datamapper.
41
+
42
+ Currently the rails compliance specs for #collection and
43
+ #partial_path fail. Need to investigate this.
44
+
45
+ [31d28fd | Thu Sep 24 00:23:40 UTC 2009] snusnu <gamsnjaga@gmail.com>
46
+
47
+ * All specs pass, changed dm-core dependency to '~>0.10'
48
+
49
+ [5cb1320 | Wed Sep 23 23:27:42 UTC 2009] snusnu <gamsnjaga@gmail.com>
50
+
51
+ * Also run active_model/lint when running the specsuite
52
+
53
+ Currently, if dm-validations are not required, all specs
54
+ pass. If dm-validations are required, 1 spec fails because
55
+ DataMapper::Validate::ValidationErrors seems to implement
56
+ #[](field) in an incompatible way. This will need more
57
+ investigation.
58
+
59
+ If this can be fixed upstream, all specs should pass
60
+
61
+ [4b1ccd0 | Wed Sep 23 22:37:59 UTC 2009] snusnu <gamsnjaga@gmail.com>
62
+
63
+ * Added implementation and initial specs
64
+
65
+ The final goal is to rely solely on active_model/lint.rb
66
+ to perform the compliance tests. However, lint.rb still
67
+ needs to be updated to cover the intended behavior more
68
+ precisely.
69
+
70
+ Nevertheless, next step is to include active_model as a
71
+ development dependency and run both lint.rb and our own
72
+ specs for the time being.
73
+
74
+ [2eb914c | Wed Sep 23 18:23:27 UTC 2009] snusnu <gamsnjaga@gmail.com>
75
+
76
+ * Initial commit to dm-active_model.
77
+
data/LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2009 Martin Gamsjaeger (snusnu)
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,18 @@
1
+ = dm-active_model
2
+
3
+ This plugin makes datamapper compliant with active_model conventions and thus compatible with rails3.
4
+
5
+ == Note on Patches/Pull Requests
6
+
7
+ * Fork the project.
8
+ * Make your feature addition or bug fix.
9
+ * Add tests for it. This is important so I don't break it in a
10
+ future version unintentionally.
11
+ * Commit, do not mess with rakefile, version, or history.
12
+ (if you want to have your own version, that is fine but
13
+ bump version in a commit by itself I can ignore when I pull)
14
+ * Send me a pull request. Bonus points for topic branches.
15
+
16
+ == Copyright
17
+
18
+ Copyright (c) 2009 Martin Gamsjaeger (snusnu). See LICENSE for details.
@@ -0,0 +1,35 @@
1
+ require 'rubygems'
2
+ require 'rake'
3
+
4
+ require File.expand_path('../lib/dm-active_model/version', __FILE__)
5
+
6
+ FileList['tasks/**/*.rake'].each { |task| load task }
7
+
8
+ begin
9
+
10
+ gem 'jeweler', '~> 1.4'
11
+ require 'jeweler'
12
+
13
+ Jeweler::Tasks.new do |gem|
14
+
15
+ gem.version = DataMapper::ActiveModel::VERSION
16
+
17
+ gem.name = 'dm-active_model'
18
+ gem.summary = 'active_model compliance for datamapper'
19
+ gem.description = 'A datamapper plugin for active_model compliance and thus rails 3 compatibility.'
20
+ gem.email = 'gamsnjaga [a] gmail [d] com'
21
+ gem.homepage = 'http://github.com/snusnu/dm-active_model'
22
+ gem.authors = [ 'Martin Gamsjaeger (snusnu)' ]
23
+
24
+ gem.add_dependency 'dm-core', '~> 0.10'
25
+
26
+ gem.add_development_dependency 'rspec', '~> 1.2.9'
27
+ gem.add_development_dependency 'yard', '~> 0.4.0'
28
+
29
+ end
30
+
31
+ Jeweler::GemcutterTasks.new
32
+
33
+ rescue LoadError
34
+ puts 'Jeweler (or a dependency) not available. Install it with: gem install jeweler'
35
+ end
data/TODO ADDED
File without changes
@@ -0,0 +1,75 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = %q{dm-active_model}
8
+ s.version = "0.0.2"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Martin Gamsjaeger (snusnu)"]
12
+ s.date = %q{2009-12-20}
13
+ s.description = %q{A datamapper plugin for active_model compliance and thus rails 3 compatibility.}
14
+ s.email = %q{gamsnjaga [a] gmail [d] com}
15
+ s.extra_rdoc_files = [
16
+ "LICENSE",
17
+ "README.rdoc",
18
+ "TODO"
19
+ ]
20
+ s.files = [
21
+ ".document",
22
+ ".gitignore",
23
+ "CHANGELOG",
24
+ "LICENSE",
25
+ "README.rdoc",
26
+ "Rakefile",
27
+ "TODO",
28
+ "dm-active_model.gemspec",
29
+ "lib/dm-active_model.rb",
30
+ "lib/dm-active_model/version.rb",
31
+ "spec/amo_compliance_spec.rb",
32
+ "spec/dm-active_model_spec.rb",
33
+ "spec/rails_compliance_spec.rb",
34
+ "spec/rcov.opts",
35
+ "spec/spec.opts",
36
+ "spec/spec_helper.rb",
37
+ "tasks/changelog.rake",
38
+ "tasks/ci.rake",
39
+ "tasks/metrics.rake",
40
+ "tasks/spec.rake",
41
+ "tasks/yard.rake",
42
+ "tasks/yardstick.rake"
43
+ ]
44
+ s.homepage = %q{http://github.com/snusnu/dm-active_model}
45
+ s.rdoc_options = ["--charset=UTF-8"]
46
+ s.require_paths = ["lib"]
47
+ s.rubygems_version = %q{1.3.5}
48
+ s.summary = %q{active_model compliance for datamapper}
49
+ s.test_files = [
50
+ "spec/amo_compliance_spec.rb",
51
+ "spec/dm-active_model_spec.rb",
52
+ "spec/rails_compliance_spec.rb",
53
+ "spec/spec_helper.rb"
54
+ ]
55
+
56
+ if s.respond_to? :specification_version then
57
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
58
+ s.specification_version = 3
59
+
60
+ if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
61
+ s.add_runtime_dependency(%q<dm-core>, ["~> 0.10"])
62
+ s.add_development_dependency(%q<rspec>, ["~> 1.2.9"])
63
+ s.add_development_dependency(%q<yard>, ["~> 0.4.0"])
64
+ else
65
+ s.add_dependency(%q<dm-core>, ["~> 0.10"])
66
+ s.add_dependency(%q<rspec>, ["~> 1.2.9"])
67
+ s.add_dependency(%q<yard>, ["~> 0.4.0"])
68
+ end
69
+ else
70
+ s.add_dependency(%q<dm-core>, ["~> 0.10"])
71
+ s.add_dependency(%q<rspec>, ["~> 1.2.9"])
72
+ s.add_dependency(%q<yard>, ["~> 0.4.0"])
73
+ end
74
+ end
75
+
@@ -0,0 +1,71 @@
1
+ module DataMapper
2
+ module ActiveModel
3
+
4
+ # This is mostly copied from active_model and adapted to use extlib under the hood.
5
+ # see http://github.com/rails/rails/blob/master/activemodel/lib/active_model/naming.rb
6
+ class Name < String
7
+
8
+ attr_reader :singular, :plural, :element, :collection, :partial_path, :human
9
+ alias_method :cache_key, :collection
10
+
11
+ def initialize(name)
12
+ super
13
+ @singular = Extlib::Inflection.underscore(self).tr('/', '_').freeze
14
+ @plural = Extlib::Inflection.pluralize(@singular).freeze
15
+ @element = Extlib::Inflection.underscore(Extlib::Inflection.demodulize(self)).freeze
16
+ @human = @element.gsub(/_/, " ")
17
+ @collection = Extlib::Inflection.pluralize(Extlib::Inflection.underscore(self)).freeze
18
+ @partial_path = "#{@collection}/#{@element}".freeze
19
+ end
20
+
21
+ end
22
+
23
+ module ClassMethods
24
+
25
+ # Returns an ActiveModel::Name object for module. It can be
26
+ # used to retrieve all kinds of naming-related information.
27
+ def model_name
28
+ @_model_name ||= DataMapper::ActiveModel::Name.new(name)
29
+ end
30
+
31
+ end
32
+
33
+ module InstanceMethods
34
+
35
+
36
+ def self.included(host)
37
+ host.class_eval do
38
+ alias :new_record? :new?
39
+ end
40
+ end
41
+
42
+ def to_model
43
+ self
44
+ end
45
+
46
+ # Define the minimum requirements if the resource
47
+ # has no concept of validation baked in, which
48
+ # happens if dm-validations is not required.
49
+ unless respond_to?(:validatable?)
50
+
51
+ def valid?
52
+ true
53
+ end
54
+
55
+ def errors
56
+ obj = Object.new
57
+ def obj.[](key) [] end
58
+ def obj.full_messages() [] end
59
+ obj
60
+ end
61
+
62
+ end
63
+
64
+ end
65
+
66
+ end
67
+
68
+ Model.append_extensions(ActiveModel::ClassMethods)
69
+ Model.append_inclusions(ActiveModel::InstanceMethods)
70
+
71
+ end
@@ -0,0 +1,7 @@
1
+ module DataMapper
2
+ module ActiveModel
3
+
4
+ VERSION = '0.0.2'.freeze
5
+
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ describe 'every active_model compliant object', :shared => true do
2
+
3
+ it 'must pass the official active_model/lint test' do
4
+ ActiveModel::Lint.test(@object).should be_passed
5
+ end
6
+
7
+ end
@@ -0,0 +1,25 @@
1
+ require 'spec_helper'
2
+
3
+ describe 'An active_model compliant DataMapper::Resource' do
4
+
5
+ before :all do
6
+
7
+ module ComplianceTest
8
+ class ProfileInfo
9
+ include DataMapper::Resource
10
+ property :id, Serial
11
+ end
12
+ end
13
+
14
+ DataMapper.setup(:default, 'sqlite3::memory:')
15
+ DataMapper.auto_migrate!
16
+
17
+ end
18
+
19
+ before :each do
20
+ @object = ComplianceTest::ProfileInfo.create.to_model
21
+ end
22
+
23
+ it_should_behave_like 'every active_model compliant object'
24
+
25
+ end
@@ -0,0 +1,50 @@
1
+ # TODO move these specs into rails_datamapper
2
+ require 'active_model/naming'
3
+
4
+ describe 'An active_model compliant DataMapper::Resource that is compatible with rails3' do
5
+
6
+ before :all do
7
+
8
+ module ComplianceTest
9
+ class ProfileInfo
10
+ include DataMapper::Resource
11
+ property :id, Serial
12
+ end
13
+ end
14
+
15
+ DataMapper.setup(:default, 'sqlite3::memory:')
16
+ DataMapper.auto_migrate!
17
+
18
+ end
19
+
20
+ before :each do
21
+ @object = ComplianceTest::ProfileInfo.create.to_model
22
+ end
23
+
24
+ it_should_behave_like 'every active_model compliant object'
25
+
26
+ it '#class.model_name.singular should follow active_model conventions' do
27
+ @object.class.model_name.singular.should == ActiveModel::Name.new(@object.class.name).singular
28
+ end
29
+
30
+ it '#class.model_name.plural should follow active_model conventions' do
31
+ @object.class.model_name.plural.should == ActiveModel::Name.new(@object.class.name).plural
32
+ end
33
+
34
+ it '#class.model_name.element should follow active_model conventions' do
35
+ @object.class.model_name.element.should == ActiveModel::Name.new(@object.class.name).element
36
+ end
37
+
38
+ it '#class.model_name.human should follow active_model conventions' do
39
+ @object.class.model_name.human.should == ActiveModel::Name.new(@object.class.name).human
40
+ end
41
+
42
+ it '#class.model_name.collection should follow active_model conventions' do
43
+ @object.class.model_name.collection.should == ActiveModel::Name.new(@object.class.name).collection
44
+ end
45
+
46
+ it '#class.model_name.partial_path should follow active_model conventions' do
47
+ @object.class.model_name.partial_path.should == ActiveModel::Name.new(@object.class.name).partial_path
48
+ end
49
+
50
+ end
@@ -0,0 +1,6 @@
1
+ --exclude "spec"
2
+ --sort coverage
3
+ --callsites
4
+ --xrefs
5
+ --profile
6
+ --text-summary
@@ -0,0 +1,2 @@
1
+ --format specdoc
2
+ --colour
@@ -0,0 +1,52 @@
1
+ require 'rubygems'
2
+
3
+ # Use local dm-core if running from a typical dev checkout.
4
+ lib = File.join('..', '..', 'dm-core', 'lib')
5
+ $LOAD_PATH.unshift(lib) if File.directory?(lib)
6
+ require 'dm-core'
7
+
8
+ # Support running specs with 'rake spec' and 'spec'
9
+ $LOAD_PATH.unshift('lib') unless $LOAD_PATH.include?('lib')
10
+
11
+ require 'dm-active_model'
12
+
13
+ # test with official active_model lint
14
+ require 'active_model/lint'
15
+
16
+ # run our own specs for the time being. lint still needs to be updated
17
+ require 'amo_compliance_spec'
18
+
19
+ def load_driver(name, default_uri)
20
+ return false if ENV['ADAPTER'] != name.to_s
21
+
22
+ begin
23
+ DataMapper.setup(name, ENV["#{name.to_s.upcase}_SPEC_URI"] || default_uri)
24
+ DataMapper::Repository.adapters[:default] = DataMapper::Repository.adapters[name]
25
+ true
26
+ rescue LoadError => e
27
+ warn "Could not load do_#{name}: #{e}"
28
+ false
29
+ end
30
+ end
31
+
32
+ ENV['ADAPTER'] ||= 'sqlite3'
33
+
34
+ HAS_SQLITE3 = load_driver(:sqlite3, 'sqlite3::memory:')
35
+ HAS_MYSQL = load_driver(:mysql, 'mysql://localhost/dm_core_test')
36
+ HAS_POSTGRES = load_driver(:postgres, 'postgres://postgres@localhost/dm_core_test')
37
+
38
+
39
+ Spec::Runner.configure do |config|
40
+
41
+ config.before(:all) do
42
+
43
+ # Support testing with(out)
44
+ # dm-validations enabled
45
+
46
+ if ENV['USE_DM_VALIDATIONS'] == 'true'
47
+ require 'dm-validations'
48
+ end
49
+
50
+ end
51
+
52
+ end
@@ -0,0 +1,20 @@
1
+ require 'time'
2
+
3
+ desc 'update changelog'
4
+ task :changelog do
5
+ File.open('CHANGELOG', 'w+') do |changelog|
6
+ `git log -z --abbrev-commit`.split("\0").each do |commit|
7
+ next if commit =~ /^Merge: \d*/
8
+ ref, author, time, _, title, _, message = commit.split("\n", 7)
9
+ ref = ref[/commit ([0-9a-f]+)/, 1]
10
+ author = author[/Author: (.*)/, 1].strip
11
+ time = Time.parse(time[/Date: (.*)/, 1]).utc
12
+ title.strip!
13
+
14
+ changelog.puts "[#{ref} | #{time}] #{author}"
15
+ changelog.puts '', " * #{title}"
16
+ changelog.puts '', message.rstrip if message
17
+ changelog.puts
18
+ end
19
+ end
20
+ end
@@ -0,0 +1 @@
1
+ task :ci => [ :verify_measurements, 'metrics:all' ]
@@ -0,0 +1,36 @@
1
+ begin
2
+ require 'metric_fu'
3
+ rescue LoadError
4
+ namespace :metrics do
5
+ task :all do
6
+ abort 'metric_fu is not available. In order to run metrics:all, you must: gem install metric_fu'
7
+ end
8
+ end
9
+ end
10
+
11
+ begin
12
+ require 'reek/adapters/rake_task'
13
+
14
+ Reek::RakeTask.new do |t|
15
+ t.fail_on_error = true
16
+ t.verbose = false
17
+ t.source_files = 'lib/**/*.rb'
18
+ end
19
+ rescue LoadError
20
+ task :reek do
21
+ abort 'Reek is not available. In order to run reek, you must: gem install reek'
22
+ end
23
+ end
24
+
25
+ begin
26
+ require 'roodi'
27
+ require 'roodi_task'
28
+
29
+ RoodiTask.new do |t|
30
+ t.verbose = false
31
+ end
32
+ rescue LoadError
33
+ task :roodi do
34
+ abort 'Roodi is not available. In order to run roodi, you must: gem install roodi'
35
+ end
36
+ end
@@ -0,0 +1,25 @@
1
+ require 'spec/rake/spectask'
2
+ require 'spec/rake/verify_rcov'
3
+
4
+ spec_defaults = lambda do |spec|
5
+ spec.pattern = 'spec/**/*_spec.rb'
6
+ spec.libs << 'lib' << 'spec'
7
+ spec.spec_opts << '--options' << 'spec/spec.opts'
8
+ end
9
+
10
+ Spec::Rake::SpecTask.new(:spec, &spec_defaults)
11
+
12
+ Spec::Rake::SpecTask.new(:rcov) do |rcov|
13
+ spec_defaults.call(rcov)
14
+ rcov.rcov = true
15
+ rcov.rcov_opts = File.read('spec/rcov.opts').split(/\s+/)
16
+ end
17
+
18
+ RCov::VerifyTask.new(:verify_rcov => :rcov) do |rcov|
19
+ rcov.threshold = 100
20
+ end
21
+
22
+ task :spec => :check_dependencies
23
+ task :rcov => :check_dependencies
24
+
25
+ task :default => :spec
@@ -0,0 +1,9 @@
1
+ begin
2
+ require 'yard'
3
+
4
+ YARD::Rake::YardocTask.new
5
+ rescue LoadError
6
+ task :yard do
7
+ abort 'YARD is not available. In order to run yard, you must: gem install yard'
8
+ end
9
+ end
@@ -0,0 +1,19 @@
1
+ begin
2
+ require 'pathname'
3
+ require 'yardstick/rake/measurement'
4
+ require 'yardstick/rake/verify'
5
+
6
+ # yardstick_measure task
7
+ Yardstick::Rake::Measurement.new
8
+
9
+ # verify_measurements task
10
+ Yardstick::Rake::Verify.new do |verify|
11
+ verify.threshold = 100
12
+ end
13
+ rescue LoadError
14
+ %w[ yardstick_measure verify_measurements ].each do |name|
15
+ task name.to_s do
16
+ abort "Yardstick is not available. In order to run #{name}, you must: gem install yardstick"
17
+ end
18
+ end
19
+ end
metadata ADDED
@@ -0,0 +1,110 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: dm-active_model
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.2
5
+ platform: ruby
6
+ authors:
7
+ - Martin Gamsjaeger (snusnu)
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-12-20 00:00:00 +01:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: dm-core
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ~>
22
+ - !ruby/object:Gem::Version
23
+ version: "0.10"
24
+ version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: rspec
27
+ type: :development
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ~>
32
+ - !ruby/object:Gem::Version
33
+ version: 1.2.9
34
+ version:
35
+ - !ruby/object:Gem::Dependency
36
+ name: yard
37
+ type: :development
38
+ version_requirement:
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ~>
42
+ - !ruby/object:Gem::Version
43
+ version: 0.4.0
44
+ version:
45
+ description: A datamapper plugin for active_model compliance and thus rails 3 compatibility.
46
+ email: gamsnjaga [a] gmail [d] com
47
+ executables: []
48
+
49
+ extensions: []
50
+
51
+ extra_rdoc_files:
52
+ - LICENSE
53
+ - README.rdoc
54
+ - TODO
55
+ files:
56
+ - .document
57
+ - .gitignore
58
+ - CHANGELOG
59
+ - LICENSE
60
+ - README.rdoc
61
+ - Rakefile
62
+ - TODO
63
+ - dm-active_model.gemspec
64
+ - lib/dm-active_model.rb
65
+ - lib/dm-active_model/version.rb
66
+ - spec/amo_compliance_spec.rb
67
+ - spec/dm-active_model_spec.rb
68
+ - spec/rails_compliance_spec.rb
69
+ - spec/rcov.opts
70
+ - spec/spec.opts
71
+ - spec/spec_helper.rb
72
+ - tasks/changelog.rake
73
+ - tasks/ci.rake
74
+ - tasks/metrics.rake
75
+ - tasks/spec.rake
76
+ - tasks/yard.rake
77
+ - tasks/yardstick.rake
78
+ has_rdoc: true
79
+ homepage: http://github.com/snusnu/dm-active_model
80
+ licenses: []
81
+
82
+ post_install_message:
83
+ rdoc_options:
84
+ - --charset=UTF-8
85
+ require_paths:
86
+ - lib
87
+ required_ruby_version: !ruby/object:Gem::Requirement
88
+ requirements:
89
+ - - ">="
90
+ - !ruby/object:Gem::Version
91
+ version: "0"
92
+ version:
93
+ required_rubygems_version: !ruby/object:Gem::Requirement
94
+ requirements:
95
+ - - ">="
96
+ - !ruby/object:Gem::Version
97
+ version: "0"
98
+ version:
99
+ requirements: []
100
+
101
+ rubyforge_project:
102
+ rubygems_version: 1.3.5
103
+ signing_key:
104
+ specification_version: 3
105
+ summary: active_model compliance for datamapper
106
+ test_files:
107
+ - spec/amo_compliance_spec.rb
108
+ - spec/dm-active_model_spec.rb
109
+ - spec/rails_compliance_spec.rb
110
+ - spec/spec_helper.rb