static-record 1.0.0.pre.1 → 1.0.0.pre.2
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.
- 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: {}
|