riq 1.2.3 → 1.2.4
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 +4 -4
- data/lib/riq.rb +1 -0
- data/lib/riq/contact.rb +41 -1
- data/riq.gemspec +1 -1
- data/test/test_contact.rb +28 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e1ad088e4572ee54ccf64de0cdfc02065a58c14f
|
4
|
+
data.tar.gz: 6ec252f6dca5d4d6b1ba11e103c31a53a5f7c30e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 35eb89ed912f26e31545a7c79be5ac2732a16b591f1bb380cdf4b4098f94d5298ab0d35fe0d44f41d7a4a54dbbb4a14393ebef4a102c5fb8f8e2da8588b2c148
|
7
|
+
data.tar.gz: 130a655a2a4d7dece4f354ff513c9caa31dc71cd4fcc92f011a9f0b8e8caaf3cf6b55da408bf272a9a9f881d3eb1775142a70b1d47608079875590b0638ad56d
|
data/lib/riq.rb
CHANGED
data/lib/riq/contact.rb
CHANGED
@@ -31,21 +31,42 @@ module RIQ
|
|
31
31
|
get_prop(:name)
|
32
32
|
end
|
33
33
|
|
34
|
+
# @!macro [new] prop
|
35
|
+
# @return [String] the preferred value for $0
|
36
|
+
def primary_name
|
37
|
+
get_primary_prop(:name)
|
38
|
+
end
|
39
|
+
|
34
40
|
# @macro prop
|
35
41
|
def phone
|
36
42
|
get_prop(:phone)
|
37
43
|
end
|
38
44
|
|
45
|
+
# @macro prop
|
46
|
+
def primary_phone
|
47
|
+
get_primary_prop(:phone)
|
48
|
+
end
|
49
|
+
|
39
50
|
# @macro prop
|
40
51
|
def email
|
41
52
|
get_prop(:email)
|
42
53
|
end
|
43
54
|
|
55
|
+
# @macro prop
|
56
|
+
def primary_email
|
57
|
+
get_primary_prop(:email)
|
58
|
+
end
|
59
|
+
|
44
60
|
# @macro prop
|
45
61
|
def address
|
46
62
|
get_prop(:address)
|
47
63
|
end
|
48
64
|
|
65
|
+
# @macro prop
|
66
|
+
def primary_address
|
67
|
+
get_primary_prop(:address)
|
68
|
+
end
|
69
|
+
|
49
70
|
# Adds property with correct scaffolding
|
50
71
|
# @param prop [Symbol] Type Property to add, such as :name or :email
|
51
72
|
# @param val [String, Array] Value(s) to add
|
@@ -144,6 +165,25 @@ module RIQ
|
|
144
165
|
[]
|
145
166
|
end
|
146
167
|
end
|
168
|
+
|
169
|
+
def get_primary_prop(prop)
|
170
|
+
if @properties.include?(prop)
|
171
|
+
preferred = @properties[prop].map do |p|
|
172
|
+
metadata = (p || {})[:metadata]
|
173
|
+
# grades each property, 0 is more likely to be picked
|
174
|
+
[
|
175
|
+
[
|
176
|
+
(metadata || {})[:primary] == 'true' ? 0 : 1,
|
177
|
+
(metadata || {})[:inactive] == 'true' ? 1 : 0
|
178
|
+
],
|
179
|
+
p[:value]
|
180
|
+
]
|
181
|
+
end
|
182
|
+
preferred.sort_by { |p| p[0] }.first[1]
|
183
|
+
else
|
184
|
+
nil
|
185
|
+
end
|
186
|
+
end
|
147
187
|
end
|
148
188
|
|
149
189
|
class << self
|
@@ -155,4 +195,4 @@ module RIQ
|
|
155
195
|
Contact.new(id)
|
156
196
|
end
|
157
197
|
end
|
158
|
-
end
|
198
|
+
end
|
data/riq.gemspec
CHANGED
data/test/test_contact.rb
CHANGED
@@ -29,6 +29,34 @@ describe RIQ::Contact do
|
|
29
29
|
end
|
30
30
|
end
|
31
31
|
|
32
|
+
describe '#name' do
|
33
|
+
it 'returns an array of property values' do
|
34
|
+
@sammy = create_sammy
|
35
|
+
@sammy.name.must_equal ['Sammynammari', 'Sammy Nammari']
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
describe '#primary_name' do
|
40
|
+
it 'returns the preferred property value' do
|
41
|
+
@sammy = create_sammy
|
42
|
+
@sammy.primary_name.must_equal 'Sammy Nammari'
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
describe '#email' do
|
47
|
+
it 'returns an array of property values' do
|
48
|
+
@sammy = create_sammy
|
49
|
+
@sammy.email.must_equal ['sammy.nammari@gmail.com', 'nammari@stanford.edu', 'sammy@relateiq.com']
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
describe '#primary_email' do
|
54
|
+
it 'returns the preferred property value' do
|
55
|
+
@sammy = create_sammy
|
56
|
+
@sammy.primary_email.must_equal 'sammy@relateiq.com'
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
32
60
|
describe '#save' do
|
33
61
|
it 'should create new contact and delete it' do
|
34
62
|
@c = create_blank_contact
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: riq
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Brownman
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-12-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: httparty
|