codders-dataset 1.3.2.1

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.

Potentially problematic release.


This version of codders-dataset might be problematic. Click here for more details.

Files changed (47) hide show
  1. data/CHANGELOG +67 -0
  2. data/LICENSE +19 -0
  3. data/README +111 -0
  4. data/Rakefile +31 -0
  5. data/TODO +15 -0
  6. data/VERSION.yml +4 -0
  7. data/lib/dataset.rb +130 -0
  8. data/lib/dataset/base.rb +157 -0
  9. data/lib/dataset/collection.rb +19 -0
  10. data/lib/dataset/database/base.rb +43 -0
  11. data/lib/dataset/database/mysql.rb +34 -0
  12. data/lib/dataset/database/postgresql.rb +34 -0
  13. data/lib/dataset/database/sqlite3.rb +32 -0
  14. data/lib/dataset/extensions/cucumber.rb +20 -0
  15. data/lib/dataset/extensions/rspec.rb +21 -0
  16. data/lib/dataset/extensions/test_unit.rb +60 -0
  17. data/lib/dataset/instance_methods.rb +10 -0
  18. data/lib/dataset/load.rb +47 -0
  19. data/lib/dataset/record/fixture.rb +73 -0
  20. data/lib/dataset/record/heirarchy.rb +65 -0
  21. data/lib/dataset/record/meta.rb +30 -0
  22. data/lib/dataset/record/model.rb +50 -0
  23. data/lib/dataset/resolver.rb +110 -0
  24. data/lib/dataset/session.rb +51 -0
  25. data/lib/dataset/session_binding.rb +319 -0
  26. data/lib/dataset/version.rb +9 -0
  27. data/plugit/descriptor.rb +25 -0
  28. data/spec/dataset/cucumber_spec.rb +54 -0
  29. data/spec/dataset/database/base_spec.rb +21 -0
  30. data/spec/dataset/record/heirarchy_spec.rb +14 -0
  31. data/spec/dataset/resolver_spec.rb +110 -0
  32. data/spec/dataset/rspec_spec.rb +133 -0
  33. data/spec/dataset/session_binding_spec.rb +203 -0
  34. data/spec/dataset/session_spec.rb +299 -0
  35. data/spec/dataset/test_unit_spec.rb +210 -0
  36. data/spec/fixtures/datasets/constant_not_defined.rb +0 -0
  37. data/spec/fixtures/datasets/ending_with_dataset.rb +2 -0
  38. data/spec/fixtures/datasets/exact_name.rb +2 -0
  39. data/spec/fixtures/datasets/not_a_dataset_base.rb +2 -0
  40. data/spec/fixtures/more_datasets/in_another_directory.rb +2 -0
  41. data/spec/models.rb +18 -0
  42. data/spec/schema.rb +26 -0
  43. data/spec/spec_helper.rb +47 -0
  44. data/spec/stubs/mini_rails.rb +18 -0
  45. data/spec/stubs/test_help.rb +1 -0
  46. data/tasks/dataset.rake +19 -0
  47. metadata +164 -0
@@ -0,0 +1,2 @@
1
+ class EndingWithDataset < Dataset::Base
2
+ end
@@ -0,0 +1,2 @@
1
+ class ExactName < Dataset::Base
2
+ end
@@ -0,0 +1,2 @@
1
+ class NotADatasetBase
2
+ end
@@ -0,0 +1,2 @@
1
+ class InAnotherDirectoryDataset < Dataset::Base
2
+ end
@@ -0,0 +1,18 @@
1
+ class Person < ActiveRecord::Base
2
+ attr_protected :last_name
3
+ end
4
+ class Place < ActiveRecord::Base
5
+ set_table_name 'places_table'
6
+ end
7
+ class Thing < ActiveRecord::Base; end
8
+ class Note < ActiveRecord::Base
9
+ belongs_to :person
10
+ end
11
+ class State < Place; end
12
+ class NorthCarolina < State; end
13
+
14
+ module Nested
15
+ class Place < ActiveRecord::Base
16
+ set_table_name 'places_table'
17
+ end
18
+ end
@@ -0,0 +1,26 @@
1
+ ActiveRecord::Schema.define(:version => 20081126181722) do
2
+ create_table :people, :force => true do |t|
3
+ t.column :first_name, :string
4
+ t.column :last_name, :string
5
+ end
6
+
7
+ create_table :places_table, :force => true do |t|
8
+ t.column :name, :string
9
+ t.column :location, :string
10
+ t.column :type, :string
11
+ end
12
+
13
+ create_table :things, :force => true do |t|
14
+ t.column :name, :string
15
+ t.column :description, :string
16
+ t.column :created_on, :date
17
+ t.column :updated_on, :date
18
+ end
19
+
20
+ create_table :notes, :force => true do |t|
21
+ t.column :person_id, :integer
22
+ t.column :content, :string
23
+ t.column :created_at, :datetime
24
+ t.column :updated_at, :datetime
25
+ end
26
+ end
@@ -0,0 +1,47 @@
1
+ SPEC_ROOT = File.expand_path(File.dirname(__FILE__))
2
+ require "#{SPEC_ROOT}/../plugit/descriptor"
3
+
4
+ # From RSpec's spec_helper.rb. Necessary to run an example group.
5
+ def with_sandboxed_options
6
+ attr_reader :options
7
+
8
+ before(:each) do
9
+ @original_rspec_options = ::Spec::Runner.options
10
+ ::Spec::Runner.use(@options = ::Spec::Runner::Options.new(StringIO.new, StringIO.new))
11
+ end
12
+
13
+ after(:each) do
14
+ ::Spec::Runner.use(@original_rspec_options)
15
+ end
16
+
17
+ yield
18
+ end
19
+
20
+ $LOAD_PATH << SPEC_ROOT
21
+ RAILS_ROOT = "#{SPEC_ROOT}/.."
22
+ $LOAD_PATH << "#{RAILS_ROOT}/lib"
23
+ RAILS_LOG_FILE = "#{RAILS_ROOT}/log/test.log"
24
+ SQLITE_DATABASE = "#{SPEC_ROOT}/sqlite3.db"
25
+
26
+ require 'fileutils'
27
+ FileUtils.mkdir_p(File.dirname(RAILS_LOG_FILE))
28
+ FileUtils.touch(RAILS_LOG_FILE)
29
+ FileUtils.mkdir_p("#{SPEC_ROOT}/tmp")
30
+ FileUtils.rm_rf("#{SPEC_ROOT}/tmp/*")
31
+ FileUtils.rm_f(SQLITE_DATABASE)
32
+
33
+ require 'logger'
34
+ RAILS_DEFAULT_LOGGER = Logger.new(RAILS_LOG_FILE)
35
+ RAILS_DEFAULT_LOGGER.level = Logger::DEBUG
36
+
37
+ ActiveRecord::Base.silence do
38
+ ActiveRecord::Base.configurations = {'test' => {
39
+ 'adapter' => 'sqlite3',
40
+ 'database' => SQLITE_DATABASE
41
+ }}
42
+ ActiveRecord::Base.establish_connection 'test'
43
+ load "#{SPEC_ROOT}/schema.rb"
44
+ end
45
+
46
+ require "models"
47
+ require "dataset"
@@ -0,0 +1,18 @@
1
+ # Define some stubs to fake Rails...
2
+ module ActiveRecord
3
+ class Base
4
+ end
5
+ end
6
+
7
+ module ActionController
8
+ class Dispatcher
9
+ end
10
+
11
+ class Base
12
+ end
13
+
14
+ class IntegrationTest
15
+ def self.use_transactional_fixtures=(x)
16
+ end
17
+ end
18
+ end
@@ -0,0 +1 @@
1
+ # This file is loaded by rails/world.rb
@@ -0,0 +1,19 @@
1
+ namespace :db do
2
+ namespace :dataset do
3
+ desc "Load one or more datasets into the current environment's database using DATASETS=name,name"
4
+ task :load => :environment do
5
+ require 'dataset'
6
+ dataset_names = (ENV['DATASETS'] || 'default').split(',')
7
+
8
+ context = Class.new do
9
+ extend Dataset::ContextClassMethods
10
+ datasets_directory [
11
+ "#{RAILS_ROOT}/spec/datasets",
12
+ "#{RAILS_ROOT}/test/datasets"
13
+ ].detect {|path| File.directory?(path)}
14
+ add_dataset *dataset_names
15
+ dataset_session.load_datasets_for self
16
+ end
17
+ end
18
+ end
19
+ end
metadata ADDED
@@ -0,0 +1,164 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: codders-dataset
3
+ version: !ruby/object:Gem::Version
4
+ hash: 77
5
+ prerelease: false
6
+ segments:
7
+ - 1
8
+ - 3
9
+ - 2
10
+ - 1
11
+ version: 1.3.2.1
12
+ platform: ruby
13
+ authors:
14
+ - Adam Williams
15
+ autorequire:
16
+ bindir: bin
17
+ cert_chain: []
18
+
19
+ date: 2009-12-29 00:00:00 +01:00
20
+ default_executable:
21
+ dependencies:
22
+ - !ruby/object:Gem::Dependency
23
+ name: activesupport
24
+ prerelease: false
25
+ requirement: &id001 !ruby/object:Gem::Requirement
26
+ none: false
27
+ requirements:
28
+ - - ">="
29
+ - !ruby/object:Gem::Version
30
+ hash: 3
31
+ segments:
32
+ - 2
33
+ - 3
34
+ - 0
35
+ version: 2.3.0
36
+ type: :runtime
37
+ version_requirements: *id001
38
+ - !ruby/object:Gem::Dependency
39
+ name: activerecord
40
+ prerelease: false
41
+ requirement: &id002 !ruby/object:Gem::Requirement
42
+ none: false
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ hash: 3
47
+ segments:
48
+ - 2
49
+ - 3
50
+ - 0
51
+ version: 2.3.0
52
+ type: :runtime
53
+ version_requirements: *id002
54
+ description: A simple API for creating and finding sets of data in your database, built on ActiveRecord.
55
+ email: adam@thewilliams.ws
56
+ executables: []
57
+
58
+ extensions: []
59
+
60
+ extra_rdoc_files:
61
+ - LICENSE
62
+ - README
63
+ - TODO
64
+ files:
65
+ - CHANGELOG
66
+ - LICENSE
67
+ - README
68
+ - Rakefile
69
+ - TODO
70
+ - VERSION.yml
71
+ - lib/dataset.rb
72
+ - lib/dataset/base.rb
73
+ - lib/dataset/collection.rb
74
+ - lib/dataset/database/base.rb
75
+ - lib/dataset/database/mysql.rb
76
+ - lib/dataset/database/postgresql.rb
77
+ - lib/dataset/database/sqlite3.rb
78
+ - lib/dataset/extensions/cucumber.rb
79
+ - lib/dataset/extensions/rspec.rb
80
+ - lib/dataset/extensions/test_unit.rb
81
+ - lib/dataset/instance_methods.rb
82
+ - lib/dataset/load.rb
83
+ - lib/dataset/record/fixture.rb
84
+ - lib/dataset/record/heirarchy.rb
85
+ - lib/dataset/record/meta.rb
86
+ - lib/dataset/record/model.rb
87
+ - lib/dataset/resolver.rb
88
+ - lib/dataset/session.rb
89
+ - lib/dataset/session_binding.rb
90
+ - lib/dataset/version.rb
91
+ - plugit/descriptor.rb
92
+ - tasks/dataset.rake
93
+ - spec/dataset/cucumber_spec.rb
94
+ - spec/dataset/database/base_spec.rb
95
+ - spec/dataset/record/heirarchy_spec.rb
96
+ - spec/dataset/resolver_spec.rb
97
+ - spec/dataset/rspec_spec.rb
98
+ - spec/dataset/session_binding_spec.rb
99
+ - spec/dataset/session_spec.rb
100
+ - spec/dataset/test_unit_spec.rb
101
+ - spec/fixtures/datasets/constant_not_defined.rb
102
+ - spec/fixtures/datasets/ending_with_dataset.rb
103
+ - spec/fixtures/datasets/exact_name.rb
104
+ - spec/fixtures/datasets/not_a_dataset_base.rb
105
+ - spec/fixtures/more_datasets/in_another_directory.rb
106
+ - spec/models.rb
107
+ - spec/schema.rb
108
+ - spec/spec_helper.rb
109
+ - spec/stubs/mini_rails.rb
110
+ - spec/stubs/test_help.rb
111
+ has_rdoc: true
112
+ homepage: http://github.com/codders/dataset
113
+ licenses: []
114
+
115
+ post_install_message:
116
+ rdoc_options:
117
+ - --charset=UTF-8
118
+ require_paths:
119
+ - lib
120
+ - tasks
121
+ required_ruby_version: !ruby/object:Gem::Requirement
122
+ none: false
123
+ requirements:
124
+ - - ">="
125
+ - !ruby/object:Gem::Version
126
+ hash: 3
127
+ segments:
128
+ - 0
129
+ version: "0"
130
+ required_rubygems_version: !ruby/object:Gem::Requirement
131
+ none: false
132
+ requirements:
133
+ - - ">="
134
+ - !ruby/object:Gem::Version
135
+ hash: 3
136
+ segments:
137
+ - 0
138
+ version: "0"
139
+ requirements: []
140
+
141
+ rubyforge_project:
142
+ rubygems_version: 1.3.7
143
+ signing_key:
144
+ specification_version: 3
145
+ summary: A simple API for creating and finding sets of data in your database, built on ActiveRecord.
146
+ test_files:
147
+ - spec/dataset/cucumber_spec.rb
148
+ - spec/dataset/database/base_spec.rb
149
+ - spec/dataset/record/heirarchy_spec.rb
150
+ - spec/dataset/resolver_spec.rb
151
+ - spec/dataset/rspec_spec.rb
152
+ - spec/dataset/session_binding_spec.rb
153
+ - spec/dataset/session_spec.rb
154
+ - spec/dataset/test_unit_spec.rb
155
+ - spec/fixtures/datasets/constant_not_defined.rb
156
+ - spec/fixtures/datasets/ending_with_dataset.rb
157
+ - spec/fixtures/datasets/exact_name.rb
158
+ - spec/fixtures/datasets/not_a_dataset_base.rb
159
+ - spec/fixtures/more_datasets/in_another_directory.rb
160
+ - spec/models.rb
161
+ - spec/schema.rb
162
+ - spec/spec_helper.rb
163
+ - spec/stubs/mini_rails.rb
164
+ - spec/stubs/test_help.rb