activerecord-typedstore 1.3.1 → 1.3.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/.github/workflows/ruby.yml +47 -0
- data/gemfiles/Gemfile.ar-6.1 +6 -0
- data/lib/active_record/typed_store/extension.rb +1 -0
- data/lib/active_record/typed_store/version.rb +1 -1
- data/spec/active_record/typed_store_spec.rb +14 -0
- data/spec/support/models.rb +1 -1
- metadata +5 -4
- data/.travis.yml +0 -34
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bdeb6337150bcfbc1307433960078b4ee4fa86930eea89ed1e27214df82b6d1a
|
4
|
+
data.tar.gz: 883fc7c802f2d86ca5a5c18133a75b8759907de917a938d765b3f55852338170
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 989ac79c84da4898c175da31cef578c576396987c7356093430e116089e27c377f561f05a53872bd0adfb79c4ee4deae795f8d0ef0e67bc1b4f461ef04790e1b
|
7
|
+
data.tar.gz: a7f1e9fb20c79d5acd321140aad66d345c058155f2722d2afc9b25247615428b0286c8040d5c2a432a2f2d05b5a2666d2c773dbc56dcdfba9113d39f13901593
|
@@ -0,0 +1,47 @@
|
|
1
|
+
name: Ruby
|
2
|
+
|
3
|
+
on: [push, pull_request]
|
4
|
+
|
5
|
+
jobs:
|
6
|
+
build:
|
7
|
+
runs-on: ubuntu-latest
|
8
|
+
name: Ruby ${{ matrix.ruby }}
|
9
|
+
strategy:
|
10
|
+
matrix:
|
11
|
+
ruby: [2.6, 2.7]
|
12
|
+
gemfile: [Gemfile.ar-5.2, Gemfile.ar-6.0, Gemfile.ar-6.1, Gemfile.ar-master]
|
13
|
+
exclude:
|
14
|
+
- ruby: 2.6
|
15
|
+
gemfile: Gemfile.ar-6.0
|
16
|
+
- ruby: 2.6
|
17
|
+
gemfile: Gemfile.ar-6.1
|
18
|
+
- ruby: 2.6
|
19
|
+
gemfile: Gemfile.ar-master
|
20
|
+
timezone_aware: [0, 1]
|
21
|
+
env:
|
22
|
+
BUNDLE_GEMFILE: gemfiles/${{ matrix.gemfile }}
|
23
|
+
TIMEZONE_AWARE: ${{ matrix.timezone_aware }}
|
24
|
+
POSTGRES: 1
|
25
|
+
MYSQL: 1
|
26
|
+
POSTGRES_JSON: 1
|
27
|
+
steps:
|
28
|
+
- name: Check out code
|
29
|
+
uses: actions/checkout@v2
|
30
|
+
- name: Set up Ruby ${{ matrix.ruby }}
|
31
|
+
uses: ruby/setup-ruby@v1
|
32
|
+
with:
|
33
|
+
ruby-version: ${{ matrix.ruby }}
|
34
|
+
bundler-cache: true
|
35
|
+
- name: Start MySQL and create DB
|
36
|
+
run: |
|
37
|
+
sudo systemctl start mysql.service
|
38
|
+
mysql -uroot -proot -e 'create database typed_store_test;'
|
39
|
+
- name: Start PostgresQL and create DB
|
40
|
+
run: |
|
41
|
+
sudo sed -i s/md5/trust/g /etc/postgresql/*/main/pg_hba.conf
|
42
|
+
sudo systemctl start postgresql.service
|
43
|
+
sudo -u postgres createuser --createdb --superuser ${USER}
|
44
|
+
createdb typed_store_test
|
45
|
+
echo "POSTGRES_URL=postgres://localhost/typed_store_test" >> $GITHUB_ENV
|
46
|
+
- name: Ruby Tests
|
47
|
+
run: bundle exec rake
|
@@ -854,3 +854,17 @@ describe MarshalTypedStoreModel do
|
|
854
854
|
it_should_behave_like 'a store'
|
855
855
|
it_should_behave_like 'a model supporting arrays'
|
856
856
|
end
|
857
|
+
|
858
|
+
describe InheritedTypedStoreModel do
|
859
|
+
let(:model) { described_class.new }
|
860
|
+
|
861
|
+
it 'can be serialized' do
|
862
|
+
model.update(new_attribute: "foobar")
|
863
|
+
expect(model.reload.new_attribute).to be == "foobar"
|
864
|
+
end
|
865
|
+
|
866
|
+
it 'is casted' do
|
867
|
+
model.update(new_attribute: 42)
|
868
|
+
expect(model.settings[:new_attribute]).to be == '42'
|
869
|
+
end
|
870
|
+
end
|
data/spec/support/models.rb
CHANGED
@@ -6,7 +6,7 @@ ActiveRecord::Base.time_zone_aware_attributes = ENV['TIMEZONE_AWARE'] != '0'
|
|
6
6
|
ActiveRecord::Base.configurations = {
|
7
7
|
'test_sqlite3' => { 'adapter' => 'sqlite3', 'database' => '/tmp/typed_store.db' },
|
8
8
|
'test_postgresql' => { 'adapter' => 'postgresql', 'database' => 'typed_store_test', 'username' => 'postgres' },
|
9
|
-
'test_mysql' => { 'adapter' => 'mysql2', 'database' => 'typed_store_test', 'username' => '
|
9
|
+
'test_mysql' => { 'adapter' => 'mysql2', 'database' => 'typed_store_test', 'username' => 'root', 'password' => 'root' },
|
10
10
|
}
|
11
11
|
|
12
12
|
def define_columns(t)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: activerecord-typedstore
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.3.
|
4
|
+
version: 1.3.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jean Boussier
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-02-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord
|
@@ -143,9 +143,9 @@ executables: []
|
|
143
143
|
extensions: []
|
144
144
|
extra_rdoc_files: []
|
145
145
|
files:
|
146
|
+
- ".github/workflows/ruby.yml"
|
146
147
|
- ".gitignore"
|
147
148
|
- ".rspec"
|
148
|
-
- ".travis.yml"
|
149
149
|
- Gemfile
|
150
150
|
- LICENSE.txt
|
151
151
|
- README.md
|
@@ -154,6 +154,7 @@ files:
|
|
154
154
|
- gemfiles/Gemfile.ar-5.0
|
155
155
|
- gemfiles/Gemfile.ar-5.2
|
156
156
|
- gemfiles/Gemfile.ar-6.0
|
157
|
+
- gemfiles/Gemfile.ar-6.1
|
157
158
|
- gemfiles/Gemfile.ar-master
|
158
159
|
- lib/active_record/typed_store.rb
|
159
160
|
- lib/active_record/typed_store/behavior.rb
|
@@ -189,7 +190,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
189
190
|
- !ruby/object:Gem::Version
|
190
191
|
version: '0'
|
191
192
|
requirements: []
|
192
|
-
rubygems_version: 3.1.
|
193
|
+
rubygems_version: 3.1.4
|
193
194
|
signing_key:
|
194
195
|
specification_version: 4
|
195
196
|
summary: Add type casting and full method attributes support to АctiveRecord store
|
data/.travis.yml
DELETED
@@ -1,34 +0,0 @@
|
|
1
|
-
sudo: false
|
2
|
-
language: ruby
|
3
|
-
cache: bundler
|
4
|
-
|
5
|
-
before_install:
|
6
|
-
- gem uninstall -v '>= 2' -i $(rvm gemdir)@global -ax bundler || true
|
7
|
-
- gem install bundler -v '< 2'
|
8
|
-
|
9
|
-
rvm:
|
10
|
-
- "2.5"
|
11
|
-
- "2.6"
|
12
|
-
gemfile:
|
13
|
-
- gemfiles/Gemfile.ar-5.2
|
14
|
-
- gemfiles/Gemfile.ar-6.0
|
15
|
-
- gemfiles/Gemfile.ar-master
|
16
|
-
|
17
|
-
env:
|
18
|
-
- TIMEZONE_AWARE=1 POSTGRES=1 MYSQL=1 POSTGRES_JSON=1
|
19
|
-
- TIMEZONE_AWARE=0 POSTGRES=1 MYSQL=1 POSTGRES_JSON=1
|
20
|
-
|
21
|
-
matrix:
|
22
|
-
exclude:
|
23
|
-
- rvm: "2.6"
|
24
|
-
gemfile: 'gemfiles/Gemfile.6-0'
|
25
|
-
- rvm: "2.6"
|
26
|
-
gemfile: 'gemfiles/Gemfile.ar-master'
|
27
|
-
|
28
|
-
services:
|
29
|
-
- mysql
|
30
|
-
- postgresql
|
31
|
-
|
32
|
-
before_script:
|
33
|
-
- mysql -e 'create database typed_store_test;'
|
34
|
-
- psql -c 'create database typed_store_test;' -U postgres
|