dbd_data_engine 0.0.9 → 0.0.10

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: 60772142b222f4d7223664c57510e4c2744eda58
4
- data.tar.gz: 585c9382c874255c252bf82b97378e6153cbd52d
3
+ metadata.gz: b67549dd442c942904057502724c772be382b9d9
4
+ data.tar.gz: 7e610615d7d3686fab21c79387dfe520420e9d1a
5
5
  SHA512:
6
- metadata.gz: 4d50fa907a98862659481d38872c7887ab07766ada3dad65f79d24b0fa974784405ae759dc22900e0ea061175326df341b6e416d4a966e96758eb984fbdba39e
7
- data.tar.gz: e5e67b11411b7a42181b1cd882a4790bacf570643530760b757a9ee76f58a4d497a7bcb38600f1cb4844b463912ee4b53ab29540b8e7805c53e5ae5004d1f73b
6
+ metadata.gz: 8bac716118f130687c49d849f3495e442d55232bfd48ed0465adf350413c8575f8ed90c19adba43ef768d72dc98d44fbb631835d620a7355f4d1059db7b14356
7
+ data.tar.gz: 124114be5f6e8cfcb5e8e1d9a283939f59f1ed55be40fdf3afaadc96fdc2101c3ce9a1b63a15d21bb11c9f120f1dfe61d80fb138365c0f88aac538464c2d31a9
@@ -50,3 +50,8 @@
50
50
 
51
51
  * lock Capybara config.ignore_hidden_elements = false because this
52
52
  now failed to find hidden fields
53
+
54
+ 0.0.10 (2014-02-09)
55
+ ======
56
+
57
+ * Now using the new used schema predicates
@@ -9,7 +9,7 @@ module DbdDataEngine
9
9
 
10
10
  def new
11
11
  @contexts = ['public today', 'personal today', 'business today']
12
- @predicates = predicates_for_new
12
+ @predicates = Resource.used_predicates
13
13
  end
14
14
 
15
15
  def create
@@ -54,8 +54,5 @@ module DbdDataEngine
54
54
  end
55
55
  end
56
56
 
57
- def predicates_for_new
58
- ['schema:givenName','schema:familyName']
59
- end
60
57
  end
61
58
  end
@@ -1,6 +1,8 @@
1
1
  module DbdDataEngine
2
2
  class Context
3
3
 
4
+ extend ::DbdDataEngine::ResourceSelectors
5
+
4
6
  def self.predicates
5
7
  resources = ::DbdOnto::Context.new.resources
6
8
  predicate_defining_resources = select_with_defines_predicate(resources)
@@ -98,14 +100,6 @@ module DbdDataEngine
98
100
  ['dcterms:created','s',today.to_s]]
99
101
  end
100
102
 
101
- # TODO implement some of these methods on Dbd gem to clean-up
102
-
103
- def self.select_with_defines_predicate(resources)
104
- resources.select do |resource|
105
- single_fact_on_predicate(resource, 'meta:defines_predicate')
106
- end
107
- end
108
-
109
103
  def self.make_predicate_label_hash(resources)
110
104
  resources.map do |resource|
111
105
  predicate = single_fact_on_predicate(resource, 'meta:defines_predicate').object
@@ -115,10 +109,5 @@ module DbdDataEngine
115
109
  end
116
110
  end
117
111
 
118
- def self.single_fact_on_predicate(resource, predicate)
119
- resource.select do |fact|
120
- fact.predicate == predicate
121
- end.single
122
- end
123
112
  end
124
113
  end
@@ -0,0 +1,28 @@
1
+ module DbdDataEngine
2
+ class Resource
3
+
4
+ extend ::DbdDataEngine::ResourceSelectors
5
+
6
+ def self.used_predicates
7
+ resources = ::DbdOnto::Schema.new.resources
8
+ predicate_defining_resources = select_with_defines_predicate(resources)
9
+ used_predicate_defining_resources = select_used(predicate_defining_resources)
10
+ extract_defines_predicate_object(used_predicate_defining_resources)
11
+ end
12
+
13
+ private
14
+
15
+ def self.select_used(resources)
16
+ resources.select do |resource|
17
+ single_fact_on_predicate(resource, 'meta:predicate_used')
18
+ end
19
+ end
20
+
21
+ def self.extract_defines_predicate_object(resources)
22
+ resources.map do |resource|
23
+ single_fact_on_predicate(resource, 'meta:defines_predicate').object
24
+ end
25
+ end
26
+
27
+ end
28
+ end
@@ -3,7 +3,7 @@
3
3
  = form_tag('/data/resources', method: :post) do # engine controller route not loaded in view tests
4
4
  %p
5
5
  =label_tag('Context')
6
- =select_tag('context', options_for_select(@contexts)) #@contexts))
6
+ =select_tag('context', options_for_select(@contexts))
7
7
  %table
8
8
  %tr
9
9
  %th predicate
@@ -24,7 +24,7 @@ Gem::Specification.new do |s|
24
24
  s.add_dependency 'rails', '>= 4.0.2'
25
25
  s.add_dependency 'haml'
26
26
  s.add_dependency 'dbd', '~> 0.1.3'
27
- s.add_dependency 'dbd_onto', '~> 0.0.12'
27
+ s.add_dependency 'dbd_onto', '~> 0.0.13'
28
28
 
29
29
  s.add_development_dependency 'haml-rails'
30
30
  s.add_development_dependency 'rspec-rails'
@@ -1,4 +1,5 @@
1
1
  require 'dbd_data_engine/engine'
2
+ require 'dbd_data_engine/resource_selectors'
2
3
  require 'haml'
3
4
  require 'dbd'
4
5
  require 'dbd_onto'
@@ -0,0 +1,19 @@
1
+ module DbdDataEngine
2
+ module ResourceSelectors
3
+
4
+ # TODO implement some of these methods on Dbd gem to clean-up
5
+
6
+ def select_with_defines_predicate(resources)
7
+ resources.select do |resource|
8
+ single_fact_on_predicate(resource, 'meta:defines_predicate')
9
+ end
10
+ end
11
+
12
+ def single_fact_on_predicate(resource, predicate)
13
+ resource.select do |fact|
14
+ fact.predicate == predicate
15
+ end.single
16
+ end
17
+
18
+ end
19
+ end
@@ -1,3 +1,3 @@
1
1
  module DbdDataEngine
2
- VERSION = "0.0.9"
2
+ VERSION = "0.0.10"
3
3
  end
@@ -20,8 +20,16 @@ module DbdDataEngine
20
20
  expect(page).to have_css('h1', text: 'Create a new resource')
21
21
  end
22
22
 
23
+ it 'has the schema:about option' do
24
+ expect(page).to have_css('select#predicate_ > option[value="schema:about"]')
25
+ end
26
+
23
27
  it 'has a select box array with schema:givenName as option' do
24
- expect(page).to have_select('predicate[]', options: ['schema:givenName','schema:familyName'])
28
+ expect(page).to have_css('select#predicate_ > option[value="schema:givenName"]')
29
+ end
30
+
31
+ it 'has a select box array with schema:familyName as option' do
32
+ expect(page).to have_css('select#predicate_ > option[value="schema:familyName"]')
25
33
  end
26
34
 
27
35
  it 'has a field array' do
@@ -37,6 +45,10 @@ module DbdDataEngine
37
45
  it 'has a select box for the context' do
38
46
  expect(page).to have_select('context', [])
39
47
  end
48
+
49
+ it 'has an option "public today"' do
50
+ expect(page).to have_css('select#context > option[value="public today"]')
51
+ end
40
52
  end
41
53
  end
42
54
  end
@@ -3,7 +3,7 @@ require 'spec_helper'
3
3
  module DbdDataEngine
4
4
  describe Context do
5
5
 
6
- def assert_object(context, object)
6
+ def assert_context_has_object(context, object)
7
7
  context.select{ |cf| cf.object.to_s == object }.size.should == 1
8
8
  end
9
9
 
@@ -20,17 +20,17 @@ module DbdDataEngine
20
20
  context 'default_from_params' do
21
21
  it 'returns public_today' do
22
22
  context = described_class.default_from_params('public today', current_graph)
23
- assert_object(context, 'public')
23
+ assert_context_has_object(context, 'public')
24
24
  end
25
25
 
26
26
  it 'returns personal_today' do
27
27
  context = described_class.default_from_params('personal today', current_graph)
28
- assert_object(context, 'personal')
28
+ assert_context_has_object(context, 'personal')
29
29
  end
30
30
 
31
31
  it 'returns business_today' do
32
32
  context = described_class.default_from_params('business today', current_graph)
33
- assert_object(context, 'business')
33
+ assert_context_has_object(context, 'business')
34
34
  end
35
35
 
36
36
  it 'raises for inexisting param' do
@@ -51,7 +51,7 @@ module DbdDataEngine
51
51
  end
52
52
 
53
53
  it 'has a public object' do
54
- assert_object(context, 'public')
54
+ assert_context_has_object(context, 'public')
55
55
  end
56
56
  end
57
57
 
@@ -68,7 +68,7 @@ module DbdDataEngine
68
68
  end
69
69
 
70
70
  it 'has a personal object' do
71
- assert_object(context, 'personal')
71
+ assert_context_has_object(context, 'personal')
72
72
  end
73
73
  end
74
74
 
@@ -85,7 +85,7 @@ module DbdDataEngine
85
85
  end
86
86
 
87
87
  it 'has a business object' do
88
- assert_object(context, 'business')
88
+ assert_context_has_object(context, 'business')
89
89
  end
90
90
  end
91
91
  end
@@ -3,21 +3,23 @@ require 'spec_helper'
3
3
  module DbdDataEngine
4
4
  describe Context do
5
5
 
6
- let(:context_predicates) {
6
+ let(:context_predicates) do
7
7
  ['context:visibility',
8
8
  'context:encryption',
9
9
  'context:license',
10
10
  'dc:source',
11
11
  'dc:creator',
12
- 'dcterms:created']}
12
+ 'dcterms:created']
13
+ end
13
14
 
14
- let(:context_labels) {
15
+ let(:context_labels) do
15
16
  ['Visibility',
16
17
  'Encryption',
17
18
  'License',
18
19
  'Source',
19
20
  'Creator',
20
- 'Created']}
21
+ 'Created']
22
+ end
21
23
 
22
24
  it 'has all the context predicates' do
23
25
  described_class.predicates.map{ |p| p[:predicate] }.should == context_predicates
@@ -0,0 +1,16 @@
1
+ require 'spec_helper'
2
+
3
+ module DbdDataEngine
4
+ describe Resource do
5
+ describe 'used_predicates' do
6
+
7
+ let(:used_predicates) do
8
+ ['schema:about', 'schema:familyName', 'schema:givenName']
9
+ end
10
+
11
+ it 'has all the used predicates' do
12
+ described_class.used_predicates.should == used_predicates
13
+ end
14
+ end
15
+ end
16
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dbd_data_engine
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9
4
+ version: 0.0.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter Vandenabeele
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-06 00:00:00.000000000 Z
11
+ date: 2014-02-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -72,14 +72,14 @@ dependencies:
72
72
  requirements:
73
73
  - - ~>
74
74
  - !ruby/object:Gem::Version
75
- version: 0.0.12
75
+ version: 0.0.13
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - ~>
81
81
  - !ruby/object:Gem::Version
82
- version: 0.0.12
82
+ version: 0.0.13
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: haml-rails
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -179,6 +179,7 @@ files:
179
179
  - app/controllers/dbd_data_engine/resources_controller.rb
180
180
  - app/helpers/dbd_data_engine/application_helper.rb
181
181
  - app/models/dbd_data_engine/context.rb
182
+ - app/models/dbd_data_engine/resource.rb
182
183
  - app/presenters/context_presenter.rb
183
184
  - app/presenters/fact_with_context.rb
184
185
  - app/presenters/resource_with_contexts.rb
@@ -201,6 +202,7 @@ files:
201
202
  - dbd_data_engine.gemspec
202
203
  - lib/dbd_data_engine.rb
203
204
  - lib/dbd_data_engine/engine.rb
205
+ - lib/dbd_data_engine/resource_selectors.rb
204
206
  - lib/dbd_data_engine/version.rb
205
207
  - lib/tasks/dbd_data_engine_tasks.rake
206
208
  - spec/controllers/nothing_here_tests_in_features_and_requests
@@ -249,6 +251,7 @@ files:
249
251
  - spec/features/resources/new_spec.rb
250
252
  - spec/models/dbd_data_engine/context/defaults_spec.rb
251
253
  - spec/models/dbd_data_engine/context/predicates_spec.rb
254
+ - spec/models/dbd_data_engine/resource/used_predicates_spec.rb
252
255
  - spec/presenters/context_presenter/context_summary_spec.rb
253
256
  - spec/presenters/fact_with_context/new_spec.rb
254
257
  - spec/presenters/resource_with_contexts/new_spec.rb
@@ -337,6 +340,7 @@ test_files:
337
340
  - spec/features/resources/new_spec.rb
338
341
  - spec/models/dbd_data_engine/context/defaults_spec.rb
339
342
  - spec/models/dbd_data_engine/context/predicates_spec.rb
343
+ - spec/models/dbd_data_engine/resource/used_predicates_spec.rb
340
344
  - spec/presenters/context_presenter/context_summary_spec.rb
341
345
  - spec/presenters/fact_with_context/new_spec.rb
342
346
  - spec/presenters/resource_with_contexts/new_spec.rb