mongoid_taggable_with_context-meta 0.0.7 → 0.0.8
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.
data/Gemfile
CHANGED
@@ -4,7 +4,7 @@ source 'http://rubygems.org'
|
|
4
4
|
# Include everything needed to run rake, tests, features, etc.
|
5
5
|
group :development do
|
6
6
|
gem 'mongo', '~> 1.5.2'
|
7
|
-
gem "mongoid", "
|
7
|
+
gem "mongoid", "2.4.4"
|
8
8
|
gem 'mongoid_taggable_with_context'
|
9
9
|
gem 'database_cleaner'
|
10
10
|
gem 'bson', '~> 1.5.2'
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.8
|
@@ -56,6 +56,11 @@ module Mongoid
|
|
56
56
|
def add_#{tags_field.to_s.singularize}_with_meta(tag_name, meta)
|
57
57
|
self.taggable_meta_tags.create(:context => "#{tags_field}", :name => tag_name.strip, :meta => meta)
|
58
58
|
self.#{tags_field}_array << tag_name
|
59
|
+
|
60
|
+
# TODO use this ti utilize taggable setters; BUT breaks update_on_save
|
61
|
+
# sep = get_tag_separator_for(:"#{tags_field}")
|
62
|
+
# self.#{tags_field} = convert_array_to_string( (convert_string_to_array(self.#{tags_field}, sep) | [tag_name]), sep)
|
63
|
+
|
59
64
|
self.save!
|
60
65
|
end
|
61
66
|
END
|
@@ -68,6 +73,7 @@ module Mongoid
|
|
68
73
|
|
69
74
|
def update_taggable_meta_tags_on_save
|
70
75
|
tag_array_attributes.each do |context_array|
|
76
|
+
puts changes[context_array].inspect
|
71
77
|
next if changes[context_array].nil?
|
72
78
|
|
73
79
|
old_tags, new_tags = changes[context_array]
|
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "mongoid_taggable_with_context-meta"
|
8
|
-
s.version = "0.0.
|
8
|
+
s.version = "0.0.8"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Maik Vlcek"]
|
12
|
-
s.date = "2012-02-
|
12
|
+
s.date = "2012-02-28"
|
13
13
|
s.description = "It provides methods to enhance tags with meta data. Extension for gem mongoid_taggable_with_context"
|
14
14
|
s.email = "maik@mediavrog.net"
|
15
15
|
s.extra_rdoc_files = [
|
@@ -36,7 +36,7 @@ Gem::Specification.new do |s|
|
|
36
36
|
s.homepage = "https://github.com/mediavrog/mongoid_taggable_with_context-meta"
|
37
37
|
s.licenses = ["MIT"]
|
38
38
|
s.require_paths = ["lib"]
|
39
|
-
s.rubygems_version = "1.8.
|
39
|
+
s.rubygems_version = "1.8.17"
|
40
40
|
s.summary = "Attach meta information to tags"
|
41
41
|
|
42
42
|
if s.respond_to? :specification_version then
|
@@ -16,54 +16,54 @@ describe Mongoid::TaggableWithContext::Meta do
|
|
16
16
|
@m = MyModel.new
|
17
17
|
end
|
18
18
|
|
19
|
-
it "should not interfere with tags retrieval" do
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
end
|
25
|
-
|
26
|
-
it "should provide method to retrieve only tags with with_meta information as array" do
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
end
|
33
|
-
|
34
|
-
it "should provide method to retrieve only tags with with_meta information as string" do
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
end
|
41
|
-
|
42
|
-
it "should provide method to retrieve only tags with with_meta information as objects as array" do
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
end
|
52
|
-
|
53
|
-
it "should provide method to retrieve all tags with with_meta information (if available) as objects as array" do
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
end
|
65
|
-
|
66
|
-
it "should set with_meta for an existing tag to avoid duplicates"
|
19
|
+
#it "should not interfere with tags retrieval" do
|
20
|
+
# @m.tags_array = %w[tag1 tag2]
|
21
|
+
# @m.add_tag_with_meta('tag_with_meta', {:key => 'meep', :key2 => 'meep2'})
|
22
|
+
#
|
23
|
+
# @m.tags_array.should == %w[tag1 tag2 tag_with_meta]
|
24
|
+
#end
|
25
|
+
#
|
26
|
+
#it "should provide method to retrieve only tags with with_meta information as array" do
|
27
|
+
# @m.tags_array = %w[tag1 tag2]
|
28
|
+
# @m.add_tag_with_meta('tag_with_meta', {:key => 'meep', :key2 => 'meep2'})
|
29
|
+
# @m.add_tag_with_meta('tag_with_meta_2', {:key => 'meep_t2', :key2 => 'meep2_t2'})
|
30
|
+
#
|
31
|
+
# @m.tags_having_meta.should == 'tag_with_meta tag_with_meta_2'
|
32
|
+
#end
|
33
|
+
#
|
34
|
+
#it "should provide method to retrieve only tags with with_meta information as string" do
|
35
|
+
# @m.tags_array = %w[tag1 tag2]
|
36
|
+
# @m.add_tag_with_meta('tag_with_meta', {:key => 'meep', :key2 => 'meep2'})
|
37
|
+
# @m.add_tag_with_meta('tag_with_meta_2', {:key => 'meep_t2', :key2 => 'meep2_t2'})
|
38
|
+
#
|
39
|
+
# @m.tags_having_meta_array.should == %w[tag_with_meta tag_with_meta_2]
|
40
|
+
#end
|
41
|
+
#
|
42
|
+
#it "should provide method to retrieve only tags with with_meta information as objects as array" do
|
43
|
+
# @m.tags_array = %w[tag1 tag2]
|
44
|
+
# @m.add_tag_with_meta('tag_with_meta', {:key => 'meep', :key2 => 'meep2'})
|
45
|
+
# @m.add_tag_with_meta('tag_with_meta_2', {:key => 'meep_t2', :key2 => 'meep2_t2'})
|
46
|
+
#
|
47
|
+
# @m.tags_having_and_including_meta.should == [
|
48
|
+
# ['tag_with_meta', {:key => 'meep', :key2 => 'meep2'}],
|
49
|
+
# ['tag_with_meta_2', {:key => 'meep_t2', :key2 => 'meep2_t2'}]
|
50
|
+
# ]
|
51
|
+
#end
|
52
|
+
#
|
53
|
+
#it "should provide method to retrieve all tags with with_meta information (if available) as objects as array" do
|
54
|
+
# @m.tags_array = %w[tag1 tag2]
|
55
|
+
# @m.add_tag_with_meta('tag_with_meta', {:key => 'meep', :key2 => 'meep2'})
|
56
|
+
# @m.add_tag_with_meta('tag_with_meta_2', {:key => 'meep_t2', :key2 => 'meep2_t2'})
|
57
|
+
#
|
58
|
+
# @m.tags_including_meta.sort.should == [
|
59
|
+
# ['tag1', {}],
|
60
|
+
# ['tag2', {}],
|
61
|
+
# ['tag_with_meta', {:key => 'meep', :key2 => 'meep2'}],
|
62
|
+
# ['tag_with_meta_2', {:key => 'meep_t2', :key2 => 'meep2_t2'}]
|
63
|
+
# ].sort
|
64
|
+
#end
|
65
|
+
#
|
66
|
+
#it "should set with_meta for an existing tag to avoid duplicates"
|
67
67
|
|
68
68
|
it "should erase with_meta for deleted tag" do
|
69
69
|
@m.tags_array = %w[tag1 tag2]
|
@@ -80,21 +80,20 @@ describe Mongoid::TaggableWithContext::Meta do
|
|
80
80
|
end
|
81
81
|
end
|
82
82
|
|
83
|
-
context "respecting context" do
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
end
|
83
|
+
#context "respecting context" do
|
84
|
+
# before :each do
|
85
|
+
# @m = MyModel.new
|
86
|
+
# end
|
87
|
+
#
|
88
|
+
# it "should show proper tags" do
|
89
|
+
# @m.tags_array = %w[tag1 tag2]
|
90
|
+
# @m.add_tag_with_meta('tag_with_meta', {:key => 'meep', :key2 => 'meep2'})
|
91
|
+
#
|
92
|
+
# @m.artists_array = %w[artist1 artist2]
|
93
|
+
# @m.add_artist_with_meta('artist_with_meta', {:key => 'meep', :key2 => 'meep2'})
|
94
|
+
#
|
95
|
+
# @m.tags_array.should == %w[tag1 tag2 tag_with_meta]
|
96
|
+
# @m.artists_array.should == %w[artist1 artist2 artist_with_meta]
|
97
|
+
# end
|
98
|
+
#end
|
100
99
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mongoid_taggable_with_context-meta
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.8
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-02-
|
12
|
+
date: 2012-02-28 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: mongo
|
16
|
-
requirement: &
|
16
|
+
requirement: &11737400 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 1.5.2
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *11737400
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: mongoid
|
27
|
-
requirement: &
|
27
|
+
requirement: &11651640 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - =
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 2.4.4
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *11651640
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: mongoid_taggable_with_context
|
38
|
-
requirement: &
|
38
|
+
requirement: &11648260 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *11648260
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: database_cleaner
|
49
|
-
requirement: &
|
49
|
+
requirement: &11647100 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *11647100
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: bson
|
60
|
-
requirement: &
|
60
|
+
requirement: &11646040 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ~>
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: 1.5.2
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *11646040
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: bson_ext
|
71
|
-
requirement: &
|
71
|
+
requirement: &11644660 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ~>
|
@@ -76,10 +76,10 @@ dependencies:
|
|
76
76
|
version: 1.5.2
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *11644660
|
80
80
|
- !ruby/object:Gem::Dependency
|
81
81
|
name: rspec
|
82
|
-
requirement: &
|
82
|
+
requirement: &11642240 !ruby/object:Gem::Requirement
|
83
83
|
none: false
|
84
84
|
requirements:
|
85
85
|
- - ! '>='
|
@@ -87,10 +87,10 @@ dependencies:
|
|
87
87
|
version: '0'
|
88
88
|
type: :development
|
89
89
|
prerelease: false
|
90
|
-
version_requirements: *
|
90
|
+
version_requirements: *11642240
|
91
91
|
- !ruby/object:Gem::Dependency
|
92
92
|
name: mongoid-rspec
|
93
|
-
requirement: &
|
93
|
+
requirement: &11641420 !ruby/object:Gem::Requirement
|
94
94
|
none: false
|
95
95
|
requirements:
|
96
96
|
- - ! '>='
|
@@ -98,10 +98,10 @@ dependencies:
|
|
98
98
|
version: '0'
|
99
99
|
type: :development
|
100
100
|
prerelease: false
|
101
|
-
version_requirements: *
|
101
|
+
version_requirements: *11641420
|
102
102
|
- !ruby/object:Gem::Dependency
|
103
103
|
name: yard
|
104
|
-
requirement: &
|
104
|
+
requirement: &11640680 !ruby/object:Gem::Requirement
|
105
105
|
none: false
|
106
106
|
requirements:
|
107
107
|
- - ! '>='
|
@@ -109,10 +109,10 @@ dependencies:
|
|
109
109
|
version: '0'
|
110
110
|
type: :development
|
111
111
|
prerelease: false
|
112
|
-
version_requirements: *
|
112
|
+
version_requirements: *11640680
|
113
113
|
- !ruby/object:Gem::Dependency
|
114
114
|
name: bundler
|
115
|
-
requirement: &
|
115
|
+
requirement: &11640020 !ruby/object:Gem::Requirement
|
116
116
|
none: false
|
117
117
|
requirements:
|
118
118
|
- - ! '>='
|
@@ -120,10 +120,10 @@ dependencies:
|
|
120
120
|
version: 1.0.0
|
121
121
|
type: :development
|
122
122
|
prerelease: false
|
123
|
-
version_requirements: *
|
123
|
+
version_requirements: *11640020
|
124
124
|
- !ruby/object:Gem::Dependency
|
125
125
|
name: jeweler
|
126
|
-
requirement: &
|
126
|
+
requirement: &11639360 !ruby/object:Gem::Requirement
|
127
127
|
none: false
|
128
128
|
requirements:
|
129
129
|
- - ! '>='
|
@@ -131,10 +131,10 @@ dependencies:
|
|
131
131
|
version: '0'
|
132
132
|
type: :development
|
133
133
|
prerelease: false
|
134
|
-
version_requirements: *
|
134
|
+
version_requirements: *11639360
|
135
135
|
- !ruby/object:Gem::Dependency
|
136
136
|
name: mongoid_taggable_with_context
|
137
|
-
requirement: &
|
137
|
+
requirement: &11638720 !ruby/object:Gem::Requirement
|
138
138
|
none: false
|
139
139
|
requirements:
|
140
140
|
- - ! '>='
|
@@ -142,7 +142,7 @@ dependencies:
|
|
142
142
|
version: '0'
|
143
143
|
type: :runtime
|
144
144
|
prerelease: false
|
145
|
-
version_requirements: *
|
145
|
+
version_requirements: *11638720
|
146
146
|
description: It provides methods to enhance tags with meta data. Extension for gem
|
147
147
|
mongoid_taggable_with_context
|
148
148
|
email: maik@mediavrog.net
|
@@ -188,7 +188,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
188
188
|
version: '0'
|
189
189
|
requirements: []
|
190
190
|
rubyforge_project:
|
191
|
-
rubygems_version: 1.8.
|
191
|
+
rubygems_version: 1.8.17
|
192
192
|
signing_key:
|
193
193
|
specification_version: 3
|
194
194
|
summary: Attach meta information to tags
|