active_finite 0.1.0 → 0.1.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.
- data/README.rdoc +1 -1
- data/VERSION +1 -1
- data/lib/active_finite.rb +4 -3
- data/spec/active_finite_spec.rb +16 -1
- metadata +2 -3
- data/active_finite.gemspec +0 -69
data/README.rdoc
CHANGED
@@ -31,7 +31,7 @@ Note that if it doesn't matter what the column's name is, the method
|
|
31
31
|
default_column_name can be used.
|
32
32
|
|
33
33
|
Now that we some hellos in our Hello model, we can access them using:
|
34
|
-
hellos = active_finite :hellos
|
34
|
+
hellos = active_finite :hellos
|
35
35
|
|
36
36
|
The variable hellos now holds a class derived from ActiveRecord named
|
37
37
|
Hello, so all of the normal ActiveRecord methods can be used.
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.1
|
data/lib/active_finite.rb
CHANGED
@@ -6,8 +6,7 @@ require 'json'
|
|
6
6
|
|
7
7
|
def active_finite sym
|
8
8
|
anon = Class.new ActiveRecord::Base
|
9
|
-
|
10
|
-
klass
|
9
|
+
Object.const_set(sym.to_s.singularize.capitalize, anon)
|
11
10
|
end
|
12
11
|
|
13
12
|
def create_finite args
|
@@ -53,7 +52,9 @@ def modify_finite args
|
|
53
52
|
end
|
54
53
|
|
55
54
|
klass = active_finite table_name
|
56
|
-
|
55
|
+
ActiveRecord::Base.transaction do
|
56
|
+
yield to_be_modified, klass, column_name
|
57
|
+
end
|
57
58
|
end
|
58
59
|
|
59
60
|
def default_column_name
|
data/spec/active_finite_spec.rb
CHANGED
@@ -28,7 +28,7 @@ ActiveRecord::Base.establish_connection(
|
|
28
28
|
create_finite in_table: :colors, values: finites
|
29
29
|
|
30
30
|
finites.each do |f|
|
31
|
-
Color.
|
31
|
+
Color.where(default_column_name => f).should_not nil
|
32
32
|
end
|
33
33
|
end
|
34
34
|
|
@@ -63,6 +63,21 @@ ActiveRecord::Base.establish_connection(
|
|
63
63
|
Villan.where(default_column_name => v).should_not nil
|
64
64
|
end
|
65
65
|
end
|
66
|
+
|
67
|
+
it 'will fail atomically' do
|
68
|
+
ActiveRecord::Schema.define do
|
69
|
+
create_table :wu_members do |t|
|
70
|
+
t.string default_column_name, :null => false
|
71
|
+
end
|
72
|
+
end
|
73
|
+
begin
|
74
|
+
create_finite in_table: :wu_members, values: ['rza', 'gza', nil]
|
75
|
+
rescue
|
76
|
+
['rza', 'gza'].each do |w|
|
77
|
+
active_finite(:wu_members).where(default_column_name => w).should nil
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
66
81
|
end
|
67
82
|
|
68
83
|
describe 'drop_finite' do
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: active_finite
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.1.
|
5
|
+
version: 0.1.1
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- me
|
@@ -95,7 +95,6 @@ files:
|
|
95
95
|
- README.rdoc
|
96
96
|
- Rakefile
|
97
97
|
- VERSION
|
98
|
-
- active_finite.gemspec
|
99
98
|
- lib/active_finite.rb
|
100
99
|
- spec/active_finite_spec.rb
|
101
100
|
- spec/spec_helper.rb
|
@@ -114,7 +113,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
114
113
|
requirements:
|
115
114
|
- - ">="
|
116
115
|
- !ruby/object:Gem::Version
|
117
|
-
hash:
|
116
|
+
hash: -1023988333
|
118
117
|
segments:
|
119
118
|
- 0
|
120
119
|
version: "0"
|
data/active_finite.gemspec
DELETED
@@ -1,69 +0,0 @@
|
|
1
|
-
# Generated by jeweler
|
2
|
-
# DO NOT EDIT THIS FILE DIRECTLY
|
3
|
-
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
|
-
# -*- encoding: utf-8 -*-
|
5
|
-
|
6
|
-
Gem::Specification.new do |s|
|
7
|
-
s.name = %q{active_finite}
|
8
|
-
s.version = "0.1.0"
|
9
|
-
|
10
|
-
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
|
-
s.authors = ["me"]
|
12
|
-
s.date = %q{2011-04-12}
|
13
|
-
s.description = %q{longer description of your gem}
|
14
|
-
s.email = %q{me@stuffihavemade.com}
|
15
|
-
s.extra_rdoc_files = [
|
16
|
-
"LICENSE.txt",
|
17
|
-
"README.rdoc"
|
18
|
-
]
|
19
|
-
s.files = [
|
20
|
-
".document",
|
21
|
-
"Gemfile",
|
22
|
-
"LICENSE.txt",
|
23
|
-
"README.rdoc",
|
24
|
-
"Rakefile",
|
25
|
-
"VERSION",
|
26
|
-
"active_finite.gemspec",
|
27
|
-
"lib/active_finite.rb",
|
28
|
-
"spec/active_finite_spec.rb",
|
29
|
-
"spec/spec_helper.rb",
|
30
|
-
"spec/villans.json"
|
31
|
-
]
|
32
|
-
s.homepage = %q{http://github.com/r4pdevteam/active_finite}
|
33
|
-
s.licenses = ["MIT"]
|
34
|
-
s.require_paths = ["lib"]
|
35
|
-
s.rubygems_version = %q{1.5.0}
|
36
|
-
s.summary = %q{one-line summary of your gem}
|
37
|
-
s.test_files = [
|
38
|
-
"spec/active_finite_spec.rb",
|
39
|
-
"spec/spec_helper.rb"
|
40
|
-
]
|
41
|
-
|
42
|
-
if s.respond_to? :specification_version then
|
43
|
-
s.specification_version = 3
|
44
|
-
|
45
|
-
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
46
|
-
s.add_runtime_dependency(%q<activesupport>, ["~> 3.0.3"])
|
47
|
-
s.add_runtime_dependency(%q<activerecord>, ["~> 3.0.3"])
|
48
|
-
s.add_runtime_dependency(%q<json>, ["~> 1.5.1"])
|
49
|
-
s.add_development_dependency(%q<rspec>, ["~> 2.3.0"])
|
50
|
-
s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
|
51
|
-
s.add_development_dependency(%q<jeweler>, ["~> 1.5.2"])
|
52
|
-
else
|
53
|
-
s.add_dependency(%q<activesupport>, ["~> 3.0.3"])
|
54
|
-
s.add_dependency(%q<activerecord>, ["~> 3.0.3"])
|
55
|
-
s.add_dependency(%q<json>, ["~> 1.5.1"])
|
56
|
-
s.add_dependency(%q<rspec>, ["~> 2.3.0"])
|
57
|
-
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
58
|
-
s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
|
59
|
-
end
|
60
|
-
else
|
61
|
-
s.add_dependency(%q<activesupport>, ["~> 3.0.3"])
|
62
|
-
s.add_dependency(%q<activerecord>, ["~> 3.0.3"])
|
63
|
-
s.add_dependency(%q<json>, ["~> 1.5.1"])
|
64
|
-
s.add_dependency(%q<rspec>, ["~> 2.3.0"])
|
65
|
-
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
66
|
-
s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
|
67
|
-
end
|
68
|
-
end
|
69
|
-
|