populate-me 0.1.6 → 0.1.7

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: 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