rails_codebook 0.0.1.alpha2 → 0.0.1.beta

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: 210fcead50e815754763d60c3425e94ebff1e992
4
- data.tar.gz: 9b152b741e4e3776bbeb7b498aea4ec96f5eac3f
3
+ metadata.gz: 6d02ea772bbf52b8be1cb22f6ffbcd0a86a8779b
4
+ data.tar.gz: 54ef973c07627d66557c920ce8c69023a44ef0fe
5
5
  SHA512:
6
- metadata.gz: 48c299d926b1a37396f56d4fc434db0d10ce3a305f7525789d01fd0bc2fa3d7bfe5e87d754a2bc6b1e01db8c07aeb39c86475c939d4f90e1b638a84573fc81a6
7
- data.tar.gz: 6de3c83b4dcba2fc0684db10ba47878cee0eb5f4d359efab302ca3ad08ff9b65abebf82e87523dba8e89806c4090a187345697d259b9de5efb6dc91eef3e3614
6
+ metadata.gz: 35e0389c0c63ae021510c913f640a53be102444fea94a85570513e8e2e1a5b9425817472cddb268c330e7e929d9f36f6cc5b9d5240d539b4a1fde44f822519a8
7
+ data.tar.gz: 0997f112a561240c04a3eb4e5b8875c86c55f72f5250e2e56c181e6685fcf7d7148e5b1046d0e7b1d56fc57afe13470dcd3a720aa0ed89a472dff4624becc161
@@ -74,7 +74,7 @@ class << ActiveRecord::Base
74
74
  end
75
75
 
76
76
  # method for getting the one row referenced from model as json (something)
77
- define_method (base_method_name+"_codebook_name").to_sym do
77
+ define_singleton_method (base_method_name+"_codebook_name").to_sym do
78
78
  codebook_name
79
79
  end
80
80
 
@@ -1,3 +1,3 @@
1
1
  module RailsCodebook
2
- VERSION = "0.0.1.alpha2"
2
+ VERSION = "0.0.1.beta"
3
3
  end
@@ -1,12 +1,87 @@
1
1
  require 'test_helper'
2
2
 
3
3
  module RailsCodebook
4
+
4
5
  class ActsAsCodebookTest < ActiveSupport::TestCase
5
6
 
6
- # TODO testovat
7
- test "search" do
7
+ before do
8
+ @article = FactoryGirl.create(:article)
9
+ end
10
+
11
+ test "cb_model" do
12
+ article_orig = Article.class
13
+ article_cb_name = Article.send('cb_model').class
14
+
15
+ assert (article_orig === article_cb_name)
16
+ end
17
+
18
+ test "has all methods" do
19
+ assert @article.methods.include? :article_cb_this
20
+ assert @article.methods.include? :article_cb_object
21
+ assert Article.methods.include? :article_cb_name
22
+ assert Article.methods.include? :article_cb_object_all
23
+ assert Article.methods.include? :article_cb_keys
24
+ assert Article.methods.include? :article_cb_values
25
+ assert Article.methods.include? :article_cb_all
26
+ end
27
+
28
+ test "codebook_object method" do
29
+ article_orig = Article.where(["id=?", @article.id]).select("id, title")
30
+ article_cb = @article.article_cb_object
31
+
32
+ assert (article_cb === article_orig)
8
33
  end
9
34
 
35
+ test "codebook_this method" do
36
+ article_orig = @article.codebookify
37
+ article_cb = @article.article_cb_this
38
+
39
+ assert (article_cb === article_orig)
40
+ end
41
+
42
+ test "self codebook_object_all method" do
43
+ article_orig = Article.all.select("id, title")
44
+ article_cb = Article.article_cb_object_all
45
+
46
+ assert (article_cb === article_orig)
47
+ end
48
+
49
+ test "self codebook_name method" do
50
+ article_orig = (@article.class.to_s.downcase+"_cb").to_s
51
+ article_cb = Article.article_cb_name
52
+
53
+ assert (article_cb === article_orig)
54
+ end
55
+
56
+ test "self codebook_keys method" do
57
+ article_orig = Article.all.map(&:id)
58
+ article_cb = Article.article_cb_keys
59
+
60
+ assert (article_cb === article_orig)
61
+ end
62
+
63
+ test "self codebook_values method" do
64
+ article_orig = Article.all.map(&:title)
65
+ article_cb = Article.article_cb_values
66
+
67
+ assert (article_cb === article_orig)
68
+ end
69
+
70
+ test "self codebook_all method" do
71
+ article_orig = []
72
+ Article.all.each {|row| article_orig << row.codebookify}
73
+ article_cb = Article.article_cb_all
74
+
75
+ assert (article_cb === article_orig)
76
+ end
77
+
78
+ test "codebookify" do
79
+ article_orig = @article.codebookify
80
+ article_cb = { key: @article.id, value: @article.title}
81
+
82
+ assert (article_cb === article_orig)
83
+ end
10
84
 
11
85
  end
86
+
12
87
  end
@@ -4,10 +4,71 @@ module RailsCodebook
4
4
 
5
5
  class HasCodebooksTest < ActiveSupport::TestCase
6
6
 
7
- # TODO testovat
8
- test "search" do
7
+ before do
8
+ @article = FactoryGirl.create(:article)
9
9
  end
10
10
 
11
+ test "has all methods" do
12
+ assert @article.methods.include? :importance
13
+ assert @article.methods.include? :importance_object
14
+ assert Article.methods.include? :importance_object_all
15
+ assert Article.methods.include? :importance_codebook_name
16
+ assert Article.methods.include? :importance_values
17
+ assert Article.methods.include? :importance_keys
18
+ assert Article.methods.include? :importance_collection
19
+ assert Article.methods.include? :importance_all
20
+ end
21
+
22
+ test "codebook_object method" do
23
+ codebook_db = RailsCodebook::Codebook.find_by_value(@article.importance_object.value)
24
+ codebook_rel = @article.importance_object
25
+
26
+ assert (codebook_db === codebook_rel)
27
+ end
28
+
29
+ test " self codebook_object_all method" do
30
+ codebook_db = RailsCodebook::Codebook.find_all_by_cb_name(@article.importance_object.cb_name)
31
+ codebook_rel = Article.importance_object_all
32
+
33
+ assert (codebook_db === codebook_rel)
34
+ end
35
+
36
+ test "self codebook_name method" do
37
+ codebook_db = @article.importance_object.cb_name
38
+ codebook_rel = Article.importance_codebook_name
39
+
40
+ assert (codebook_db === codebook_rel)
41
+ end
42
+
43
+ test "self codebook_keys method" do
44
+ codebook_db = RailsCodebook::Codebook.find_all_by_cb_name(@article.importance_object.cb_name).map(&:value)
45
+ codebook_rel = Article.importance_keys
46
+
47
+ assert (codebook_rel.class.to_s == 'Array')
48
+ assert (codebook_db === codebook_rel)
49
+ end
50
+
51
+ test "self codebook_collection method" do
52
+ codebook_db = RailsCodebook::Codebook.find_all_by_cb_name(@article.importance_object.cb_name)
53
+ codebook_rel = Article.importance_collection
54
+
55
+ assert (codebook_db === codebook_rel)
56
+ end
57
+
58
+ test "self codebook_values method" do
59
+ codebook_db = RailsCodebook::Codebook.find_all_by_cb_name(@article.importance_object.cb_name).map(&:t_name)
60
+ codebook_rel = Article.importance_values
61
+
62
+ assert (codebook_rel.class.to_s == 'Array')
63
+ assert (codebook_db === codebook_rel)
64
+ end
65
+
66
+ test "self codebook_all method" do
67
+ codebook_db = RailsCodebook::Codebook.find_all_by_cb_name(@article.importance_object.cb_name).cb_serialize
68
+ codebook_rel = Article.importance_all
69
+
70
+ assert (codebook_db === codebook_rel)
71
+ end
11
72
  end
12
73
 
13
74
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_codebook
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1.alpha2
4
+ version: 0.0.1.beta
5
5
  platform: ruby
6
6
  authors:
7
7
  - redrick