static-record 1.0.0.pre.1 → 1.0.0.pre.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/static_record/models/base.rb +10 -0
- data/lib/static_record/version.rb +1 -1
- data/spec/models/static_record/base_spec.rb +7 -0
- metadata +7 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8161a80bb87cca0d2ed854c4f92b9d105c9bf155
|
4
|
+
data.tar.gz: 44030ffa8c6d7095b5160f4c807e881ca65b33d8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6ab0ef1663587e2d2e495802305bc8c568b81dbdb72f56d49b8743f80071714054c7af9a6863c4f3ae70fcd3019c3bf9f61373b7adb640c60f78b93725424ef3
|
7
|
+
data.tar.gz: 5aca5a3f02caa4bbc8add5b73c037306984c7380018f749c17ff9398b8f14678e15edc177bd371450a894cf2bc5bae740a8d48c3342deee43e8a0ae2309bbfbe
|
@@ -11,6 +11,16 @@ module StaticRecord
|
|
11
11
|
:@@_store
|
12
12
|
].freeze
|
13
13
|
|
14
|
+
def initialize
|
15
|
+
attributes.each do |attr, value|
|
16
|
+
instance_variable_set "@#{attr}", value
|
17
|
+
self.class.class_eval do
|
18
|
+
attr_accessor :"#{attr}"
|
19
|
+
end
|
20
|
+
end
|
21
|
+
super
|
22
|
+
end
|
23
|
+
|
14
24
|
def self.attribute(name, value)
|
15
25
|
err = RESERVED_ATTRIBUTES.include?("@@#{name}".to_sym)
|
16
26
|
raise StaticRecord::ReservedAttributeName, "#{name} is a reserved name" if err
|
@@ -7,4 +7,11 @@ RSpec.describe StaticRecord::Base, :type => :model do
|
|
7
7
|
expect(Article.pkey).to eql(:author)
|
8
8
|
Article.primary_key :name # restoring primary key for other tests
|
9
9
|
end
|
10
|
+
|
11
|
+
it "allows to access attributes defined with 'attribute'" do
|
12
|
+
article = Article.find('Article One')
|
13
|
+
expect(article.name).to eql('Article One')
|
14
|
+
expect(article.author).to eql('The author')
|
15
|
+
expect(article.rank).to eql('2')
|
16
|
+
end
|
10
17
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: static-record
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.0.pre.
|
4
|
+
version: 1.0.0.pre.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Hugo Chevalier
|
@@ -28,16 +28,16 @@ dependencies:
|
|
28
28
|
name: sqlite3
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - '='
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
33
|
+
version: 1.3.12
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- -
|
38
|
+
- - '='
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
40
|
+
version: 1.3.12
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rspec
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -82,7 +82,7 @@ dependencies:
|
|
82
82
|
version: 0.46.0
|
83
83
|
description: |2
|
84
84
|
StaticRecord is a module allowing to perform ActiveRecord-like queries
|
85
|
-
over
|
85
|
+
over Ruby files.
|
86
86
|
Those act as immutable database records that only developers can alter.
|
87
87
|
Their attributes are stored in a SQLite3 database re-created on startup.
|
88
88
|
Queries instantiate each retrieved records.
|
@@ -142,7 +142,7 @@ files:
|
|
142
142
|
- spec/test_app/config/initializers/wrap_parameters.rb
|
143
143
|
- spec/test_app/config/routes.rb
|
144
144
|
- spec/test_app/db/schema.rb
|
145
|
-
homepage:
|
145
|
+
homepage: https://github.com/hchevalier/static_record
|
146
146
|
licenses:
|
147
147
|
- MIT
|
148
148
|
metadata: {}
|