rom-yaml 0.2.0 → 0.3.0.beta1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9876fc838c6ceaeadd8953d7f197b622d8c1951b
4
- data.tar.gz: fc171673382dac4a251dec4a4a5b39b444853599
3
+ metadata.gz: 6aed837ae68a810b2110a71b23c55beb15183912
4
+ data.tar.gz: e7b4ea194e800b0f8191c87a6fe6f73665814706
5
5
  SHA512:
6
- metadata.gz: fe623534d046a8c64ec7c0260f4b8fa7340a3e7fe5da61a57e227055ea013a1529db42df34208358fac1e4e39582e8ec7a4745e32cc1328ced03bc98441e121e
7
- data.tar.gz: b6440d41a4b6fb7c7cf6049dd42df9d0c6e225c51fc18b13c94876cf794b72d1e398ff6decbeacc192f71e6c8fb1d8b29ecb0d79b2de8b938ae547b9249a874e
6
+ metadata.gz: ab65760d4a931283b7c4859b1507009fc25f62a5dcc7e594e1c88465235e4f3ca0e90a9e1b766da54bc8d008bd94e9f6074c531df508525373b1600d819ff4e6
7
+ data.tar.gz: a10d102bf673be2bf06d691de3267cc2c4789d2a666d374acafdd170826837639d6f170cfa61c439da7dd2833b91b915a92d77861ba63dede1024c3922f87570
@@ -1,5 +1,5 @@
1
1
  module ROM
2
2
  module YAML
3
- VERSION = '0.2.0'.freeze
3
+ VERSION = '0.3.0.beta1'.freeze
4
4
  end
5
5
  end
data/rom-yaml.gemspec CHANGED
@@ -18,7 +18,7 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ['lib']
20
20
 
21
- spec.add_runtime_dependency 'rom', '~> 0.9', '>= 0.9.0'
21
+ spec.add_runtime_dependency "rom", "~> 1.0.0.beta1"
22
22
 
23
23
  spec.add_development_dependency 'bundler'
24
24
  spec.add_development_dependency 'rake'
@@ -3,22 +3,43 @@ require 'spec_helper'
3
3
  require 'rom/lint/spec'
4
4
 
5
5
  describe 'YAML adapter' do
6
- subject(:rom) { setup.finalize }
6
+ let(:configuration) do
7
+ ROM::Configuration.new( :yaml, path )
8
+ end
7
9
 
8
10
  let(:root) { Pathname(__FILE__).dirname.join('..') }
9
11
 
12
+
13
+
10
14
  let(:path) { "#{root}/fixtures/test_db.yml" }
11
- let(:setup) { ROM.setup(:yaml, path) }
15
+ let(:container) { ROM.container(configuration) }
16
+
17
+ subject(:rom) { container }
18
+
19
+ let(:configuration) do
20
+ ROM::Configuration.new( :yaml, path )
21
+ end
12
22
 
13
- before do
14
- setup.relation(:users) do
15
- def by_name(name)
16
- restrict(name: name)
23
+ let(:root) { Pathname(__FILE__).dirname.join('..') }
24
+ let(:container) { ROM.container(configuration) }
25
+ let(:rom) { container }
26
+
27
+ describe "single file configuration" do
28
+ let(:path) { "#{root}/fixtures/test_db.yml" }
29
+
30
+ let(:users_relation) do
31
+ Class.new(ROM::YAML::Relation) do
32
+ dataset :users
33
+
34
+ def by_name(name)
35
+ restrict(name: name)
36
+ end
17
37
  end
18
38
  end
19
39
 
20
- setup.mappers do
21
- define(:users) do
40
+ let(:user_mapper) do
41
+ Class.new(ROM::Mapper) do
42
+ relation :users
22
43
  register_as :entity
23
44
 
24
45
  model name: 'User'
@@ -31,30 +52,47 @@ describe 'YAML adapter' do
31
52
  end
32
53
  end
33
54
  end
34
- end
35
55
 
36
- describe 'env#relation' do
37
- it 'returns mapped object' do
38
- jane = rom.relation(:users).as(:entity).by_name('Jane').first
56
+ before do
57
+ configuration.register_relation(users_relation)
58
+ configuration.register_mapper(user_mapper)
59
+ end
39
60
 
40
- expect(jane.name).to eql('Jane')
41
- expect(jane.email).to eql('jane@doe.org')
42
- expect(jane.roles.length).to eql(2)
43
- expect(jane.roles).to eql([
44
- { name: 'Member' }, { name: 'Admin' }
45
- ])
61
+ describe 'env#relation' do
62
+ it 'returns mapped object' do
63
+ jane = rom.relation(:users).as(:entity).by_name('Jane').first
64
+
65
+ expect(jane.name).to eql('Jane')
66
+ expect(jane.email).to eql('jane@doe.org')
67
+ expect(jane.roles.length).to eql(2)
68
+ expect(jane.roles).to eql([
69
+ { name: 'Member' }, { name: 'Admin' }
70
+ ])
71
+ end
46
72
  end
47
73
  end
48
74
 
49
75
  describe 'multi-file setup' do
50
- it 'uses one-file-per-relation' do
51
- setup = ROM.setup(:yaml, "#{root}/fixtures/db")
76
+ let(:path) { "#{root}/fixtures/db" }
77
+
78
+ let(:users_relation) do
79
+ Class.new(ROM::YAML::Relation) do
80
+ dataset :users
81
+ end
82
+ end
52
83
 
53
- setup.relation(:users)
54
- setup.relation(:tasks)
84
+ let(:tasks_relation) do
85
+ Class.new(ROM::YAML::Relation) do
86
+ dataset :tasks
87
+ end
88
+ end
55
89
 
56
- rom = setup.finalize
90
+ before do
91
+ configuration.register_relation(users_relation)
92
+ configuration.register_relation(tasks_relation)
93
+ end
57
94
 
95
+ it 'uses one-file-per-relation' do
58
96
  expect(rom.relation(:users)).to match_array([
59
97
  { name: 'Jane', email: 'jane@doe.org' }
60
98
  ])
data/spec/spec_helper.rb CHANGED
@@ -15,5 +15,3 @@ end
15
15
  root = Pathname(__FILE__).dirname
16
16
 
17
17
  Dir[root.join('shared/*.rb').to_s].each { |f| require f }
18
-
19
- ROM.use :auto_registration
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rom-yaml
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0.beta1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Piotr Solnica
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-08-19 00:00:00.000000000 Z
11
+ date: 2015-11-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rom
@@ -16,20 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.9'
20
- - - ">="
21
- - !ruby/object:Gem::Version
22
- version: 0.9.0
19
+ version: 1.0.0.beta1
23
20
  type: :runtime
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
23
  requirements:
27
24
  - - "~>"
28
25
  - !ruby/object:Gem::Version
29
- version: '0.9'
30
- - - ">="
31
- - !ruby/object:Gem::Version
32
- version: 0.9.0
26
+ version: 1.0.0.beta1
33
27
  - !ruby/object:Gem::Dependency
34
28
  name: bundler
35
29
  requirement: !ruby/object:Gem::Requirement
@@ -119,12 +113,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
119
113
  version: '0'
120
114
  required_rubygems_version: !ruby/object:Gem::Requirement
121
115
  requirements:
122
- - - ">="
116
+ - - ">"
123
117
  - !ruby/object:Gem::Version
124
- version: '0'
118
+ version: 1.3.1
125
119
  requirements: []
126
120
  rubyforge_project:
127
- rubygems_version: 2.4.5
121
+ rubygems_version: 2.4.5.1
128
122
  signing_key:
129
123
  specification_version: 4
130
124
  summary: YAML support for Ruby Object Mapper
@@ -136,3 +130,4 @@ test_files:
136
130
  - spec/spec_helper.rb
137
131
  - spec/unit/dataset_spec.rb
138
132
  - spec/unit/repository_spec.rb
133
+ has_rdoc: