populate-me 0.1.6 → 0.1.7

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 4e6c7bf4a8f1d514b164c6089193db8fce6bd1f2
4
- data.tar.gz: 4881c632f52cd21d084884b6904f4172aee316b0
3
+ metadata.gz: b0e27d15a2c44ac669b4eb4ed1beac8c7ca44d00
4
+ data.tar.gz: 06ad2e485704568cde6e158d7922da7d5f84317c
5
5
  SHA512:
6
- metadata.gz: 964bc86b0186495bb6cfe0d61461a912dd4b5403ce87cd31855573198bcec269dba26705d6c00df2fedd1e650a6e5149729587b6699ebb061c7401d5ffb104f7
7
- data.tar.gz: dc7696a1e6fda80ab3965ac0d67d6205abe9939159a2c79bc0152b9f7152527d049b62d19428ff803ff7361f1e18a0c6299e8b9d363eed5822c6e8cfde730cfc
6
+ metadata.gz: 8c1ba4179b57768cdbca23002ecfc590360ea0647299fbce20fc143048df19489dfc23c0d0730ec534eac33d6afdcb00f2a1b2fe08a1052acba2536f4c10edc3
7
+ data.tar.gz: 8bd55f253b92b6c714b8533ccdd90ea3d1d83eda83b84ee83d718c38bcdcc4497c320d414640af8d445efc165f714d7b216f14d93daa76171338e36543cb8d76
@@ -84,7 +84,7 @@ module PopulateMe
84
84
 
85
85
  def relationship name, o={}
86
86
  o[:class_name] = WebUtils.guess_related_class_name(self.name,o[:class_name]||name)
87
- WebUtils.ensure_key! o, :label, name.to_s.capitalize
87
+ WebUtils.ensure_key! o, :label, name.to_s.gsub('_',' ').capitalize
88
88
  WebUtils.ensure_key! o, :foreign_key, "#{WebUtils.dasherize_class_name(self.name).gsub('-','_')}_id"
89
89
  o[:foreign_key] = o[:foreign_key].to_sym
90
90
  WebUtils.ensure_key! o, :dependent, true
@@ -1,4 +1,4 @@
1
1
  module PopulateMe
2
- VERSION = '0.1.6'
2
+ VERSION = '0.1.7'
3
3
  end
4
4
 
@@ -0,0 +1,45 @@
1
+ require 'helper'
2
+ require 'populate_me/document'
3
+
4
+ describe PopulateMe::Document, 'Schema' do
5
+
6
+ parallelize_me!
7
+
8
+ describe "Relationships" do
9
+
10
+ class Relative < PopulateMe::Document
11
+ relationship :siblings
12
+ relationship :home_remedies
13
+ relationship :friends, label: 'Budies', class_name: 'Budy', foreign_key: :budy_id, dependent: false
14
+ end
15
+
16
+ it "Defaults class name" do
17
+ assert_equal "Relative::Sibling", Relative.relationships[:siblings][:class_name]
18
+ assert_equal "Relative::HomeRemedy", Relative.relationships[:home_remedies][:class_name]
19
+ end
20
+
21
+ it "Defaults label" do
22
+ assert_equal "Siblings", Relative.relationships[:siblings][:label]
23
+ assert_equal "Home remedies", Relative.relationships[:home_remedies][:label]
24
+ end
25
+
26
+ it "Defaults foreign key" do
27
+ assert_equal :relative_id, Relative.relationships[:siblings][:foreign_key]
28
+ assert_equal :relative_id, Relative.relationships[:home_remedies][:foreign_key]
29
+ end
30
+
31
+ it "Defaults :dependent to true" do
32
+ assert Relative.relationships[:siblings][:dependent]
33
+ end
34
+
35
+ it "Has everything editable" do
36
+ assert_equal "Budies", Relative.relationships[:friends][:label]
37
+ assert_equal "Budy", Relative.relationships[:friends][:class_name]
38
+ assert_equal :budy_id, Relative.relationships[:friends][:foreign_key]
39
+ refute Relative.relationships[:friends][:dependent]
40
+ end
41
+
42
+ end
43
+
44
+ end
45
+
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: populate-me
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mickael Riga
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-07-06 00:00:00.000000000 Z
11
+ date: 2017-07-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: web-utils
@@ -211,6 +211,7 @@ files:
211
211
  - test/test_document_admin_adapter.rb
212
212
  - test/test_document_callbacks.rb
213
213
  - test/test_document_persistence.rb
214
+ - test/test_document_schema.rb
214
215
  - test/test_document_typecasting.rb
215
216
  - test/test_grid_fs_attachment.rb
216
217
  - test/test_mongo.rb
@@ -236,7 +237,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
236
237
  version: '0'
237
238
  requirements: []
238
239
  rubyforge_project:
239
- rubygems_version: 2.4.5.1
240
+ rubygems_version: 2.6.11
240
241
  signing_key:
241
242
  specification_version: 4
242
243
  summary: PopulateMe is an admin system for web applications.
@@ -249,6 +250,7 @@ test_files:
249
250
  - test/test_document_admin_adapter.rb
250
251
  - test/test_document_callbacks.rb
251
252
  - test/test_document_persistence.rb
253
+ - test/test_document_schema.rb
252
254
  - test/test_document_typecasting.rb
253
255
  - test/test_grid_fs_attachment.rb
254
256
  - test/test_mongo.rb