synchronisable 0.0.2 → 0.0.3
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/.coveralls.yml +1 -0
- data/.rspec +0 -1
- data/.travis.yml +5 -0
- data/Gemfile +8 -1
- data/README.md +11 -4
- data/Rakefile +22 -3
- data/TODO.md +1 -1
- data/lib/generators/{synchronizable → synchronisable}/USAGE +0 -0
- data/lib/generators/{synchronizable → synchronisable}/install_generator.rb +2 -2
- data/lib/generators/{synchronizable → synchronisable}/templates/create_imports_migration.rb +4 -4
- data/lib/generators/{synchronizable → synchronisable}/templates/initializer.rb +2 -2
- data/lib/{synchronizable.rb → synchronisable.rb} +13 -13
- data/lib/{synchronizable → synchronisable}/context.rb +1 -1
- data/lib/{synchronizable → synchronisable}/dsl/associations.rb +4 -4
- data/lib/{synchronizable → synchronisable}/dsl/associations/association.rb +3 -3
- data/lib/{synchronizable → synchronisable}/dsl/associations/has_many.rb +2 -2
- data/lib/{synchronizable → synchronisable}/dsl/associations/has_one.rb +2 -2
- data/lib/{synchronizable → synchronisable}/dsl/macro.rb +8 -8
- data/lib/{synchronizable → synchronisable}/dsl/macro/attribute.rb +4 -4
- data/lib/{synchronizable → synchronisable}/dsl/macro/expression.rb +4 -4
- data/lib/{synchronizable → synchronisable}/dsl/macro/method.rb +4 -4
- data/lib/{synchronizable → synchronisable}/error_handler.rb +4 -4
- data/lib/{synchronizable → synchronisable}/exceptions.rb +1 -1
- data/lib/{synchronizable → synchronisable}/locale/en.yml +0 -0
- data/lib/{synchronizable → synchronisable}/locale/ru.yml +0 -0
- data/lib/{synchronizable → synchronisable}/model.rb +15 -15
- data/lib/{synchronizable → synchronisable}/model/methods.rb +6 -6
- data/lib/{synchronizable → synchronisable}/models/import.rb +6 -6
- data/lib/{synchronizable → synchronisable}/source.rb +3 -3
- data/lib/{synchronizable → synchronisable}/synchronizer.rb +18 -18
- data/lib/{synchronizable → synchronisable}/synchronizers/synchronizer_default.rb +2 -2
- data/lib/{synchronizable → synchronisable}/version.rb +2 -2
- data/lib/{synchronizable → synchronisable}/worker.rb +14 -14
- data/spec/dummy/app/models/match.rb +1 -1
- data/spec/dummy/app/models/match_player.rb +1 -1
- data/spec/dummy/app/models/player.rb +1 -1
- data/spec/dummy/app/models/stadium.rb +1 -1
- data/spec/dummy/app/models/stage.rb +1 -1
- data/spec/dummy/app/models/team.rb +1 -1
- data/spec/dummy/app/models/tournament.rb +1 -1
- data/spec/dummy/app/synchronizers/break_convention_team_synchronizer.rb +1 -1
- data/spec/dummy/app/synchronizers/match_synchronizer.rb +6 -6
- data/spec/dummy/app/synchronizers/player_synchronizer.rb +1 -1
- data/spec/dummy/app/synchronizers/stage_synchronizer.rb +1 -1
- data/spec/dummy/app/synchronizers/tournament_synchronizer.rb +1 -1
- data/spec/dummy/config/application.rb +1 -1
- data/spec/dummy/config/initializers/synchronizable.rb +1 -1
- data/spec/dummy/db/migrate/20140422135244_create_imports.rb +4 -4
- data/spec/dummy/db/schema.rb +3 -3
- data/spec/factories/import.rb +1 -1
- data/spec/models/match_spec.rb +10 -10
- data/spec/models/team_spec.rb +14 -18
- data/spec/spec_helper.rb +15 -5
- data/spec/{synchronizable → synchronisable}/dsl/macro_spec.rb +1 -1
- data/spec/synchronisable/models/import_spec.rb +10 -0
- data/spec/{synchronizable → synchronisable}/support/has_macro.rb +1 -1
- data/spec/{synchronizable → synchronisable}/support/has_macro_subclass.rb +0 -0
- data/spec/{synchronizable/synchronizable_spec.rb → synchronisable/synchronisable_spec.rb} +9 -9
- data/{synchronizable.gemspec → synchronisable.gemspec} +6 -4
- metadata +94 -79
- data/spec/synchronizable/models/import_spec.rb +0 -10
data/spec/factories/import.rb
CHANGED
data/spec/models/match_spec.rb
CHANGED
@@ -7,12 +7,12 @@ describe Match do
|
|
7
7
|
-> { Match.sync }
|
8
8
|
end
|
9
9
|
|
10
|
-
it {
|
11
|
-
it {
|
12
|
-
it {
|
13
|
-
it {
|
10
|
+
it { is_expected.to change { Match.count }.by(1) }
|
11
|
+
it { is_expected.to change { Team.count }.by(2) }
|
12
|
+
it { is_expected.to change { Player.count }.by(4) }
|
13
|
+
it { is_expected.to change { MatchPlayer.count }.by(4) }
|
14
14
|
|
15
|
-
it {
|
15
|
+
it { is_expected.to change { Synchronisable::Import.count }.by(11) }
|
16
16
|
end
|
17
17
|
|
18
18
|
# TODO: Left here until :include option is implemented
|
@@ -30,12 +30,12 @@ describe Match do
|
|
30
30
|
# })
|
31
31
|
# end
|
32
32
|
|
33
|
-
# it {
|
34
|
-
# it {
|
35
|
-
# it {
|
36
|
-
# it {
|
33
|
+
# it { is_expected.to change { Match.count }.by(1) }
|
34
|
+
# it { is_expected.to change { Team.count }.by(2) }
|
35
|
+
# it { is_expected.to change { Player.count }.by(22) }
|
36
|
+
# it { is_expected.to change { MatchPlayer.count }.by(22) }
|
37
37
|
|
38
|
-
# it {
|
38
|
+
# it { is_expected.to change { Synchronisable::Import.count }.by(47) }
|
39
39
|
# end
|
40
40
|
end
|
41
41
|
end
|
data/spec/models/team_spec.rb
CHANGED
@@ -28,14 +28,12 @@ describe Team do
|
|
28
28
|
end
|
29
29
|
|
30
30
|
context 'sync with no data specified' do
|
31
|
-
subject
|
32
|
-
-> { Team.sync }
|
33
|
-
end
|
31
|
+
subject { -> { Team.sync } }
|
34
32
|
|
35
|
-
it {
|
36
|
-
it {
|
33
|
+
it { is_expected.to change { Team.count }.by(2) }
|
34
|
+
it { is_expected.to change { Player.count }.by(4) }
|
37
35
|
|
38
|
-
it {
|
36
|
+
it { is_expected.to change { Synchronisable::Import.count }.by(6) }
|
39
37
|
end
|
40
38
|
|
41
39
|
context 'when remote id is not specified' do
|
@@ -45,19 +43,17 @@ describe Team do
|
|
45
43
|
end
|
46
44
|
|
47
45
|
context 'when local record does not exist' do
|
48
|
-
subject
|
49
|
-
-> { Team.sync(remote_attrs.take(2)) }
|
50
|
-
end
|
46
|
+
subject { -> { Team.sync(remote_attrs.take(2)) } }
|
51
47
|
|
52
|
-
it {
|
53
|
-
it {
|
48
|
+
it { is_expected.to change { Team.count }.by(2) }
|
49
|
+
it { is_expected.to change { Synchronisable::Import.count }.by(2) }
|
54
50
|
end
|
55
51
|
|
56
52
|
context 'when local and import records exists' do
|
57
53
|
let!(:import) do
|
58
54
|
create(:import,
|
59
55
|
:remote_id => 'team1',
|
60
|
-
:
|
56
|
+
:synchronisable => create(:team,
|
61
57
|
:name => 'x',
|
62
58
|
:country => 'Russia',
|
63
59
|
:city => 'Moscow',
|
@@ -65,7 +61,7 @@ describe Team do
|
|
65
61
|
)
|
66
62
|
end
|
67
63
|
|
68
|
-
let!(:team) { import.
|
64
|
+
let!(:team) { import.synchronisable }
|
69
65
|
|
70
66
|
subject do
|
71
67
|
-> {
|
@@ -74,12 +70,12 @@ describe Team do
|
|
74
70
|
}
|
75
71
|
end
|
76
72
|
|
77
|
-
it {
|
78
|
-
it {
|
73
|
+
it { is_expected.to change { Team.count }.by(1) }
|
74
|
+
it { is_expected.to change { Synchronisable::Import.count }.by(1) }
|
79
75
|
|
80
|
-
it {
|
81
|
-
it {
|
82
|
-
it {
|
76
|
+
it { is_expected.to change { team.name }.from('x').to('y') }
|
77
|
+
it { is_expected.to change { team.country }.from('Russia').to('USA') }
|
78
|
+
it { is_expected.to change { team.city }.from('Moscow').to('Washington') }
|
83
79
|
end
|
84
80
|
end
|
85
81
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -1,21 +1,32 @@
|
|
1
|
+
require "codeclimate-test-reporter"
|
2
|
+
CodeClimate::TestReporter.start
|
3
|
+
|
1
4
|
ENV['RAILS_ENV'] ||= 'test'
|
2
5
|
|
3
6
|
require 'database_cleaner'
|
4
7
|
require 'factory_girl'
|
5
8
|
require 'factory_girl_sequences'
|
6
9
|
require 'spork'
|
7
|
-
require 'simplecov'
|
8
10
|
|
9
|
-
|
11
|
+
if ENV['COVERAGE']
|
12
|
+
require 'simplecov'
|
13
|
+
SimpleCov.start
|
14
|
+
end
|
15
|
+
|
16
|
+
if ENV['TRAVIS']
|
17
|
+
require 'coveralls'
|
18
|
+
Coveralls.wear!
|
19
|
+
end
|
10
20
|
|
11
21
|
$LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
|
12
22
|
|
13
|
-
require '
|
23
|
+
require 'synchronisable'
|
14
24
|
|
15
25
|
require File.expand_path('../dummy/config/environment', __FILE__)
|
16
26
|
require 'rspec/rails'
|
27
|
+
require 'rspec/its'
|
17
28
|
|
18
|
-
support_pattern = File.join(File.dirname(__FILE__), '
|
29
|
+
support_pattern = File.join(File.dirname(__FILE__), 'synchronisable', 'support', '**', '*.rb')
|
19
30
|
factories_pattern = File.join(File.dirname(__FILE__), 'factories', '**', '*.rb')
|
20
31
|
|
21
32
|
Dir[factories_pattern].each { |file| require file }
|
@@ -25,7 +36,6 @@ ActiveRecord::Migration.check_pending! if defined?(ActiveRecord::Migration)
|
|
25
36
|
|
26
37
|
Spork.prefork do
|
27
38
|
RSpec.configure do |config|
|
28
|
-
config.treat_symbols_as_metadata_keys_with_true_values = true
|
29
39
|
config.run_all_when_everything_filtered = true
|
30
40
|
config.filter_run focus: true
|
31
41
|
config.order = 'random'
|
@@ -0,0 +1,10 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Synchronisable::Import do
|
4
|
+
let!(:team) { create :team }
|
5
|
+
subject { create(:import, synchronisable: team) }
|
6
|
+
|
7
|
+
it 'destroys itself with synchronisable record' do
|
8
|
+
expect { subject.destroy_with_synchronisable }.to change(Team, :count).by(-1)
|
9
|
+
end
|
10
|
+
end
|
File without changes
|
@@ -1,15 +1,15 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
|
-
describe
|
3
|
+
describe Synchronisable do
|
4
4
|
describe 'synchronization' do
|
5
5
|
subject do
|
6
|
-
-> {
|
6
|
+
-> { Synchronisable.sync }
|
7
7
|
end
|
8
8
|
|
9
9
|
describe 'models specified in configuration' do
|
10
10
|
context 'only Team and Match' do
|
11
11
|
before :all do
|
12
|
-
|
12
|
+
Synchronisable.models = %w(Match Team)
|
13
13
|
end
|
14
14
|
|
15
15
|
it { should change { Match.count }.by(1) }
|
@@ -17,12 +17,12 @@ describe Synchronizable do
|
|
17
17
|
it { should change { Player.count }.by(4) }
|
18
18
|
it { should change { MatchPlayer.count }.by(4) }
|
19
19
|
|
20
|
-
it { should change {
|
20
|
+
it { should change { Synchronisable::Import.count }.by(11) }
|
21
21
|
end
|
22
22
|
|
23
23
|
context 'all' do
|
24
24
|
before :all do
|
25
|
-
|
25
|
+
Synchronisable.models = %w(
|
26
26
|
Stage Tournament Team
|
27
27
|
Match MatchPlayer Player
|
28
28
|
)
|
@@ -35,25 +35,25 @@ describe Synchronizable do
|
|
35
35
|
it { should change { MatchPlayer.count }.by(4) }
|
36
36
|
it { should change { Player.count }.by(4) }
|
37
37
|
|
38
|
-
it { should change {
|
38
|
+
it { should change { Synchronisable::Import.count }.by(14) }
|
39
39
|
end
|
40
40
|
|
41
41
|
# TODO: Left here until :include option is implemented
|
42
42
|
#
|
43
43
|
# context 'when models setting is overriden in method call' do
|
44
44
|
# before :all do
|
45
|
-
#
|
45
|
+
# Synchronisable.models = %w(Team Match)
|
46
46
|
# end
|
47
47
|
|
48
48
|
# subject do
|
49
|
-
# -> {
|
49
|
+
# -> { Synchronisable.sync(Match, Player) }
|
50
50
|
# end
|
51
51
|
|
52
52
|
# it { should change { Match.count }.by(1) }
|
53
53
|
# it { should change { Player.count }.by(22) }
|
54
54
|
# it { should_not change { Team.count }.by(2) }
|
55
55
|
|
56
|
-
# it { should change {
|
56
|
+
# it { should change { Synchronisable::Import.count }.by(5) }
|
57
57
|
# end
|
58
58
|
end
|
59
59
|
end
|
@@ -1,16 +1,16 @@
|
|
1
1
|
# coding: utf-8
|
2
2
|
lib = File.expand_path('../lib', __FILE__)
|
3
3
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
-
require '
|
4
|
+
require 'synchronisable/version'
|
5
5
|
|
6
6
|
Gem::Specification.new do |spec|
|
7
7
|
spec.name = 'synchronisable'
|
8
|
-
spec.version =
|
8
|
+
spec.version = Synchronisable::VERSION::STRING
|
9
9
|
spec.authors = ['Vasiliy Yorkin']
|
10
10
|
spec.email = ['vasiliy.yorkin@gmail.com']
|
11
11
|
spec.description = 'Provides base fuctionality (models, DSL) for AR synchronization with external resources (apis, services etc)'
|
12
12
|
spec.summary = spec.description
|
13
|
-
spec.homepage = 'https://github.com/vyorkin/
|
13
|
+
spec.homepage = 'https://github.com/vyorkin/synchronisable'
|
14
14
|
spec.license = 'MIT'
|
15
15
|
|
16
16
|
spec.files = `git ls-files -z`.split("\x0")
|
@@ -26,7 +26,9 @@ Gem::Specification.new do |spec|
|
|
26
26
|
spec.add_development_dependency "rake"
|
27
27
|
spec.add_development_dependency "yard"
|
28
28
|
spec.add_development_dependency "rails", "~> 4.0.0"
|
29
|
-
spec.add_development_dependency "rspec-rails"
|
29
|
+
spec.add_development_dependency "rspec-rails", "~> 3.0.0.beta2"
|
30
|
+
# spec.add_development_dependency "rspec-given"
|
31
|
+
spec.add_development_dependency "rspec-its"
|
30
32
|
spec.add_development_dependency "sqlite3"
|
31
33
|
spec.add_development_dependency "factory_girl"
|
32
34
|
spec.add_development_dependency "factory_girl_sequences"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: synchronisable
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Vasiliy Yorkin
|
@@ -14,238 +14,252 @@ dependencies:
|
|
14
14
|
name: activerecord
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - '>='
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: 3.0.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- -
|
24
|
+
- - '>='
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: 3.0.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: activesupport
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - '>='
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: 3.0.0
|
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
40
|
version: 3.0.0
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: i18n
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- -
|
45
|
+
- - '>='
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '0'
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - '>='
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: bundler
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- -
|
59
|
+
- - ~>
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '1.5'
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- -
|
66
|
+
- - ~>
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '1.5'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: rake
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- -
|
73
|
+
- - '>='
|
74
74
|
- !ruby/object:Gem::Version
|
75
75
|
version: '0'
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- -
|
80
|
+
- - '>='
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: yard
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- -
|
87
|
+
- - '>='
|
88
88
|
- !ruby/object:Gem::Version
|
89
89
|
version: '0'
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- -
|
94
|
+
- - '>='
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: '0'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: rails
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
|
-
- -
|
101
|
+
- - ~>
|
102
102
|
- !ruby/object:Gem::Version
|
103
103
|
version: 4.0.0
|
104
104
|
type: :development
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
|
-
- -
|
108
|
+
- - ~>
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: 4.0.0
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
112
|
name: rspec-rails
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
|
-
- -
|
115
|
+
- - ~>
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: 3.0.0.beta2
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - ~>
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: 3.0.0.beta2
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: rspec-its
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - '>='
|
116
130
|
- !ruby/object:Gem::Version
|
117
131
|
version: '0'
|
118
132
|
type: :development
|
119
133
|
prerelease: false
|
120
134
|
version_requirements: !ruby/object:Gem::Requirement
|
121
135
|
requirements:
|
122
|
-
- -
|
136
|
+
- - '>='
|
123
137
|
- !ruby/object:Gem::Version
|
124
138
|
version: '0'
|
125
139
|
- !ruby/object:Gem::Dependency
|
126
140
|
name: sqlite3
|
127
141
|
requirement: !ruby/object:Gem::Requirement
|
128
142
|
requirements:
|
129
|
-
- -
|
143
|
+
- - '>='
|
130
144
|
- !ruby/object:Gem::Version
|
131
145
|
version: '0'
|
132
146
|
type: :development
|
133
147
|
prerelease: false
|
134
148
|
version_requirements: !ruby/object:Gem::Requirement
|
135
149
|
requirements:
|
136
|
-
- -
|
150
|
+
- - '>='
|
137
151
|
- !ruby/object:Gem::Version
|
138
152
|
version: '0'
|
139
153
|
- !ruby/object:Gem::Dependency
|
140
154
|
name: factory_girl
|
141
155
|
requirement: !ruby/object:Gem::Requirement
|
142
156
|
requirements:
|
143
|
-
- -
|
157
|
+
- - '>='
|
144
158
|
- !ruby/object:Gem::Version
|
145
159
|
version: '0'
|
146
160
|
type: :development
|
147
161
|
prerelease: false
|
148
162
|
version_requirements: !ruby/object:Gem::Requirement
|
149
163
|
requirements:
|
150
|
-
- -
|
164
|
+
- - '>='
|
151
165
|
- !ruby/object:Gem::Version
|
152
166
|
version: '0'
|
153
167
|
- !ruby/object:Gem::Dependency
|
154
168
|
name: factory_girl_sequences
|
155
169
|
requirement: !ruby/object:Gem::Requirement
|
156
170
|
requirements:
|
157
|
-
- -
|
171
|
+
- - '>='
|
158
172
|
- !ruby/object:Gem::Version
|
159
173
|
version: '0'
|
160
174
|
type: :development
|
161
175
|
prerelease: false
|
162
176
|
version_requirements: !ruby/object:Gem::Requirement
|
163
177
|
requirements:
|
164
|
-
- -
|
178
|
+
- - '>='
|
165
179
|
- !ruby/object:Gem::Version
|
166
180
|
version: '0'
|
167
181
|
- !ruby/object:Gem::Dependency
|
168
182
|
name: database_cleaner
|
169
183
|
requirement: !ruby/object:Gem::Requirement
|
170
184
|
requirements:
|
171
|
-
- -
|
185
|
+
- - '>='
|
172
186
|
- !ruby/object:Gem::Version
|
173
187
|
version: '0'
|
174
188
|
type: :development
|
175
189
|
prerelease: false
|
176
190
|
version_requirements: !ruby/object:Gem::Requirement
|
177
191
|
requirements:
|
178
|
-
- -
|
192
|
+
- - '>='
|
179
193
|
- !ruby/object:Gem::Version
|
180
194
|
version: '0'
|
181
195
|
- !ruby/object:Gem::Dependency
|
182
196
|
name: mutant
|
183
197
|
requirement: !ruby/object:Gem::Requirement
|
184
198
|
requirements:
|
185
|
-
- -
|
199
|
+
- - '>='
|
186
200
|
- !ruby/object:Gem::Version
|
187
201
|
version: '0'
|
188
202
|
type: :development
|
189
203
|
prerelease: false
|
190
204
|
version_requirements: !ruby/object:Gem::Requirement
|
191
205
|
requirements:
|
192
|
-
- -
|
206
|
+
- - '>='
|
193
207
|
- !ruby/object:Gem::Version
|
194
208
|
version: '0'
|
195
209
|
- !ruby/object:Gem::Dependency
|
196
210
|
name: mutant-rspec
|
197
211
|
requirement: !ruby/object:Gem::Requirement
|
198
212
|
requirements:
|
199
|
-
- -
|
213
|
+
- - '>='
|
200
214
|
- !ruby/object:Gem::Version
|
201
215
|
version: '0'
|
202
216
|
type: :development
|
203
217
|
prerelease: false
|
204
218
|
version_requirements: !ruby/object:Gem::Requirement
|
205
219
|
requirements:
|
206
|
-
- -
|
220
|
+
- - '>='
|
207
221
|
- !ruby/object:Gem::Version
|
208
222
|
version: '0'
|
209
223
|
- !ruby/object:Gem::Dependency
|
210
224
|
name: guard-spork
|
211
225
|
requirement: !ruby/object:Gem::Requirement
|
212
226
|
requirements:
|
213
|
-
- -
|
227
|
+
- - '>='
|
214
228
|
- !ruby/object:Gem::Version
|
215
229
|
version: '0'
|
216
230
|
type: :development
|
217
231
|
prerelease: false
|
218
232
|
version_requirements: !ruby/object:Gem::Requirement
|
219
233
|
requirements:
|
220
|
-
- -
|
234
|
+
- - '>='
|
221
235
|
- !ruby/object:Gem::Version
|
222
236
|
version: '0'
|
223
237
|
- !ruby/object:Gem::Dependency
|
224
238
|
name: guard-rspec
|
225
239
|
requirement: !ruby/object:Gem::Requirement
|
226
240
|
requirements:
|
227
|
-
- -
|
241
|
+
- - '>='
|
228
242
|
- !ruby/object:Gem::Version
|
229
243
|
version: '0'
|
230
244
|
type: :development
|
231
245
|
prerelease: false
|
232
246
|
version_requirements: !ruby/object:Gem::Requirement
|
233
247
|
requirements:
|
234
|
-
- -
|
248
|
+
- - '>='
|
235
249
|
- !ruby/object:Gem::Version
|
236
250
|
version: '0'
|
237
251
|
- !ruby/object:Gem::Dependency
|
238
252
|
name: simplecov
|
239
253
|
requirement: !ruby/object:Gem::Requirement
|
240
254
|
requirements:
|
241
|
-
- -
|
255
|
+
- - '>='
|
242
256
|
- !ruby/object:Gem::Version
|
243
257
|
version: '0'
|
244
258
|
type: :development
|
245
259
|
prerelease: false
|
246
260
|
version_requirements: !ruby/object:Gem::Requirement
|
247
261
|
requirements:
|
248
|
-
- -
|
262
|
+
- - '>='
|
249
263
|
- !ruby/object:Gem::Version
|
250
264
|
version: '0'
|
251
265
|
description: Provides base fuctionality (models, DSL) for AR synchronization with
|
@@ -259,10 +273,11 @@ executables:
|
|
259
273
|
extensions: []
|
260
274
|
extra_rdoc_files: []
|
261
275
|
files:
|
262
|
-
-
|
263
|
-
-
|
264
|
-
-
|
265
|
-
-
|
276
|
+
- .coveralls.yml
|
277
|
+
- .gitignore
|
278
|
+
- .rspec
|
279
|
+
- .ruby-version
|
280
|
+
- .travis.yml
|
266
281
|
- Gemfile
|
267
282
|
- Guardfile
|
268
283
|
- LICENSE.txt
|
@@ -272,32 +287,32 @@ files:
|
|
272
287
|
- bin/autospec
|
273
288
|
- bin/rake
|
274
289
|
- bin/rspec
|
275
|
-
- lib/generators/
|
276
|
-
- lib/generators/
|
277
|
-
- lib/generators/
|
278
|
-
- lib/generators/
|
279
|
-
- lib/
|
280
|
-
- lib/
|
281
|
-
- lib/
|
282
|
-
- lib/
|
283
|
-
- lib/
|
284
|
-
- lib/
|
285
|
-
- lib/
|
286
|
-
- lib/
|
287
|
-
- lib/
|
288
|
-
- lib/
|
289
|
-
- lib/
|
290
|
-
- lib/
|
291
|
-
- lib/
|
292
|
-
- lib/
|
293
|
-
- lib/
|
294
|
-
- lib/
|
295
|
-
- lib/
|
296
|
-
- lib/
|
297
|
-
- lib/
|
298
|
-
- lib/
|
299
|
-
- lib/
|
300
|
-
- lib/
|
290
|
+
- lib/generators/synchronisable/USAGE
|
291
|
+
- lib/generators/synchronisable/install_generator.rb
|
292
|
+
- lib/generators/synchronisable/templates/create_imports_migration.rb
|
293
|
+
- lib/generators/synchronisable/templates/initializer.rb
|
294
|
+
- lib/synchronisable.rb
|
295
|
+
- lib/synchronisable/context.rb
|
296
|
+
- lib/synchronisable/dsl/associations.rb
|
297
|
+
- lib/synchronisable/dsl/associations/association.rb
|
298
|
+
- lib/synchronisable/dsl/associations/has_many.rb
|
299
|
+
- lib/synchronisable/dsl/associations/has_one.rb
|
300
|
+
- lib/synchronisable/dsl/macro.rb
|
301
|
+
- lib/synchronisable/dsl/macro/attribute.rb
|
302
|
+
- lib/synchronisable/dsl/macro/expression.rb
|
303
|
+
- lib/synchronisable/dsl/macro/method.rb
|
304
|
+
- lib/synchronisable/error_handler.rb
|
305
|
+
- lib/synchronisable/exceptions.rb
|
306
|
+
- lib/synchronisable/locale/en.yml
|
307
|
+
- lib/synchronisable/locale/ru.yml
|
308
|
+
- lib/synchronisable/model.rb
|
309
|
+
- lib/synchronisable/model/methods.rb
|
310
|
+
- lib/synchronisable/models/import.rb
|
311
|
+
- lib/synchronisable/source.rb
|
312
|
+
- lib/synchronisable/synchronizer.rb
|
313
|
+
- lib/synchronisable/synchronizers/synchronizer_default.rb
|
314
|
+
- lib/synchronisable/version.rb
|
315
|
+
- lib/synchronisable/worker.rb
|
301
316
|
- spec/dummy/.gitignore
|
302
317
|
- spec/dummy/Rakefile
|
303
318
|
- spec/dummy/app/assets/images/.keep
|
@@ -382,13 +397,13 @@ files:
|
|
382
397
|
- spec/models/match_spec.rb
|
383
398
|
- spec/models/team_spec.rb
|
384
399
|
- spec/spec_helper.rb
|
385
|
-
- spec/
|
386
|
-
- spec/
|
387
|
-
- spec/
|
388
|
-
- spec/
|
389
|
-
- spec/
|
390
|
-
-
|
391
|
-
homepage: https://github.com/vyorkin/
|
400
|
+
- spec/synchronisable/dsl/macro_spec.rb
|
401
|
+
- spec/synchronisable/models/import_spec.rb
|
402
|
+
- spec/synchronisable/support/has_macro.rb
|
403
|
+
- spec/synchronisable/support/has_macro_subclass.rb
|
404
|
+
- spec/synchronisable/synchronisable_spec.rb
|
405
|
+
- synchronisable.gemspec
|
406
|
+
homepage: https://github.com/vyorkin/synchronisable
|
392
407
|
licenses:
|
393
408
|
- MIT
|
394
409
|
metadata: {}
|
@@ -398,12 +413,12 @@ require_paths:
|
|
398
413
|
- lib
|
399
414
|
required_ruby_version: !ruby/object:Gem::Requirement
|
400
415
|
requirements:
|
401
|
-
- -
|
416
|
+
- - '>='
|
402
417
|
- !ruby/object:Gem::Version
|
403
418
|
version: '0'
|
404
419
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
405
420
|
requirements:
|
406
|
-
- -
|
421
|
+
- - '>='
|
407
422
|
- !ruby/object:Gem::Version
|
408
423
|
version: '0'
|
409
424
|
requirements: []
|
@@ -498,9 +513,9 @@ test_files:
|
|
498
513
|
- spec/models/match_spec.rb
|
499
514
|
- spec/models/team_spec.rb
|
500
515
|
- spec/spec_helper.rb
|
501
|
-
- spec/
|
502
|
-
- spec/
|
503
|
-
- spec/
|
504
|
-
- spec/
|
505
|
-
- spec/
|
516
|
+
- spec/synchronisable/dsl/macro_spec.rb
|
517
|
+
- spec/synchronisable/models/import_spec.rb
|
518
|
+
- spec/synchronisable/support/has_macro.rb
|
519
|
+
- spec/synchronisable/support/has_macro_subclass.rb
|
520
|
+
- spec/synchronisable/synchronisable_spec.rb
|
506
521
|
has_rdoc:
|