live_paper 0.0.26 → 0.0.27
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/live_paper/qr_trigger.rb +2 -5
- data/lib/live_paper/short_trigger.rb +2 -5
- data/lib/live_paper/trigger.rb +11 -1
- data/lib/live_paper/version.rb +1 -1
- data/lib/live_paper/wm_trigger.rb +2 -4
- data/live_paper.gemspec +1 -0
- data/spec/live_paper/trigger_spec.rb +58 -17
- data/spec/spec_helpers/lpp_client.rb +2 -1
- metadata +17 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a8e506ee521e614012d2e33d930f8d399623cdb7
|
4
|
+
data.tar.gz: 81a129d47d16a138d10542fe04c7f6ce78773b2a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: edffcf5ba57cd5430bab1bb5c9e1283b9cde187e1f2f2807a0f47526bb4cee99284917a006f819d7763957eac0f4b2fb7b1d3625833d28744f726d88ef175458
|
7
|
+
data.tar.gz: bf363c81984efdc320c8c63633ec660b24fefdfc8aa2dd592da6302c86fe9803cd5c05d2b01a46d9625e66515d7533614ad7ae6d2f5ac7d60c2c73635db85783
|
@@ -4,8 +4,6 @@ module LivePaper
|
|
4
4
|
class QrTrigger < Trigger
|
5
5
|
attr_accessor :qrcode_url
|
6
6
|
|
7
|
-
DEFAULT_SUBSCRIPTION = :month
|
8
|
-
|
9
7
|
def parse(data)
|
10
8
|
data = JSON.parse(data, symbolize_names: true)[:trigger]
|
11
9
|
assign_attributes data
|
@@ -24,9 +22,8 @@ module LivePaper
|
|
24
22
|
trigger: {
|
25
23
|
name: @name,
|
26
24
|
type: "qrcode",
|
27
|
-
|
28
|
-
|
29
|
-
}
|
25
|
+
startDate: @start_date || default_start_date,
|
26
|
+
endDate: @end_date || default_end_date
|
30
27
|
}
|
31
28
|
}
|
32
29
|
end
|
@@ -4,8 +4,6 @@ module LivePaper
|
|
4
4
|
class ShortTrigger < Trigger
|
5
5
|
attr_accessor :short_url
|
6
6
|
|
7
|
-
DEFAULT_SUBSCRIPTION = :month
|
8
|
-
|
9
7
|
def parse(data)
|
10
8
|
data = JSON.parse(data, symbolize_names: true)[:trigger]
|
11
9
|
assign_attributes data
|
@@ -19,9 +17,8 @@ module LivePaper
|
|
19
17
|
trigger: {
|
20
18
|
name: @name,
|
21
19
|
type: "shorturl",
|
22
|
-
|
23
|
-
|
24
|
-
}
|
20
|
+
startDate: @start_date || default_start_date,
|
21
|
+
endDate: @end_date || default_end_date
|
25
22
|
}
|
26
23
|
}
|
27
24
|
end
|
data/lib/live_paper/trigger.rb
CHANGED
@@ -1,8 +1,9 @@
|
|
1
1
|
require_relative 'base_object'
|
2
|
+
require 'active_support/time'
|
2
3
|
|
3
4
|
module LivePaper
|
4
5
|
class Trigger < BaseObject
|
5
|
-
attr_accessor :
|
6
|
+
attr_accessor :state, :start_date, :end_date
|
6
7
|
|
7
8
|
def self.api_url
|
8
9
|
"#{LP_API_HOST}/api/v1/triggers"
|
@@ -31,6 +32,14 @@ module LivePaper
|
|
31
32
|
trigger_class.new.parse(data_in)
|
32
33
|
end
|
33
34
|
|
35
|
+
def default_start_date
|
36
|
+
Time.now.iso8601
|
37
|
+
end
|
38
|
+
|
39
|
+
def default_end_date
|
40
|
+
Time.now.advance(years: 1).iso8601
|
41
|
+
end
|
42
|
+
|
34
43
|
private
|
35
44
|
def validate_attributes!
|
36
45
|
raise ArgumentError, 'Required Attributes needed: name' unless all_present? [@name]
|
@@ -43,6 +52,7 @@ module LivePaper
|
|
43
52
|
}
|
44
53
|
}
|
45
54
|
end
|
55
|
+
|
46
56
|
end
|
47
57
|
|
48
58
|
end
|
data/lib/live_paper/version.rb
CHANGED
@@ -5,7 +5,6 @@ module LivePaper
|
|
5
5
|
attr_accessor :wm_url
|
6
6
|
WATERMARK_RESOLUTION = 75
|
7
7
|
WATERMARK_STRENGTH = 10
|
8
|
-
DEFAULT_SUBSCRIPTION = :month
|
9
8
|
|
10
9
|
def parse(data)
|
11
10
|
data = JSON.parse(data, symbolize_names: true)[:trigger]
|
@@ -33,9 +32,8 @@ module LivePaper
|
|
33
32
|
trigger: {
|
34
33
|
name: @name,
|
35
34
|
type: "watermark",
|
36
|
-
|
37
|
-
|
38
|
-
}
|
35
|
+
startDate: @start_date || default_start_date,
|
36
|
+
endDate: @end_date || default_end_date
|
39
37
|
}
|
40
38
|
}
|
41
39
|
end
|
data/live_paper.gemspec
CHANGED
@@ -18,6 +18,7 @@ Gem::Specification.new do |spec|
|
|
18
18
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
19
|
spec.require_paths = ["lib"]
|
20
20
|
|
21
|
+
spec.add_dependency "activesupport"
|
21
22
|
spec.add_runtime_dependency "rest-client"
|
22
23
|
|
23
24
|
spec.add_development_dependency "bundler", "~> 1.6"
|
@@ -3,34 +3,64 @@ require 'spec_helper'
|
|
3
3
|
DOWNLOAD_URL = "https://watermark.livepaperapi.com/watermark/v1/triggers"
|
4
4
|
|
5
5
|
describe LivePaper::WmTrigger do
|
6
|
+
let(:start_date) { "my_start_date" }
|
7
|
+
let(:end_date) { "my_end_date" }
|
8
|
+
let(:data) {
|
9
|
+
{
|
10
|
+
id: 'id',
|
11
|
+
name: 'name',
|
12
|
+
start_date: start_date,
|
13
|
+
end_date: end_date
|
14
|
+
}
|
15
|
+
}
|
16
|
+
|
6
17
|
before do
|
7
18
|
stub_request(:post, /.*livepaperapi.com\/auth\/token.*/).to_return(:body => lpp_auth_response_json, :status => 200)
|
8
19
|
stub_request(:post, LivePaper::WmTrigger.api_url).to_return(:body => lpp_trigger_response_json, :status => 200)
|
9
20
|
stub_request(:get, "#{LivePaper::WmTrigger.api_url}/trigger_id").to_return(:body => lpp_trigger_response_json, :status => 200)
|
10
21
|
stub_request(:get, "#{LivePaper::WmTrigger.api_url}/trigger_not_existent").to_return(:body => '{}', :status => 404)
|
22
|
+
end
|
11
23
|
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
24
|
+
describe '#initialize without specifying start_date end_date' do
|
25
|
+
let(:data){
|
26
|
+
{
|
27
|
+
id: 'id',
|
28
|
+
name: 'name'
|
29
|
+
}
|
16
30
|
}
|
31
|
+
before do
|
32
|
+
@trigger = LivePaper::WmTrigger.new data
|
33
|
+
end
|
34
|
+
|
35
|
+
it 'should set startDate attribute to nil by default.' do
|
36
|
+
expect(@trigger.start_date).to be_nil
|
37
|
+
end
|
38
|
+
|
39
|
+
it 'should set endDate attribute to nil by default.' do
|
40
|
+
expect(@trigger.end_date).to be_nil
|
41
|
+
end
|
42
|
+
|
17
43
|
end
|
18
44
|
|
19
|
-
describe '#initialize' do
|
45
|
+
describe '#initialize with specifying start_date and end_date' do
|
20
46
|
before do
|
21
|
-
@trigger = LivePaper::WmTrigger.new
|
47
|
+
@trigger = LivePaper::WmTrigger.new data
|
22
48
|
end
|
23
49
|
|
24
|
-
it 'should
|
25
|
-
expect(@trigger.
|
50
|
+
it 'should set startDate attribute.' do
|
51
|
+
expect(@trigger.start_date).to eq(start_date)
|
52
|
+
end
|
53
|
+
|
54
|
+
it 'should set endDate attribute.' do
|
55
|
+
expect(@trigger.end_date).to eq(end_date)
|
26
56
|
end
|
27
57
|
end
|
28
58
|
|
29
59
|
describe '#save' do
|
30
60
|
context 'when all needed attributes are provided,' do
|
31
61
|
before do
|
32
|
-
|
33
|
-
@trigger = LivePaper::WmTrigger.new
|
62
|
+
data.delete :id
|
63
|
+
@trigger = LivePaper::WmTrigger.new data
|
34
64
|
end
|
35
65
|
|
36
66
|
it 'should make a POST to the trigger URL with body.' do
|
@@ -39,7 +69,8 @@ describe LivePaper::WmTrigger do
|
|
39
69
|
trigger: {
|
40
70
|
name: 'name',
|
41
71
|
type: 'watermark',
|
42
|
-
|
72
|
+
startDate: start_date,
|
73
|
+
endDate: end_date
|
43
74
|
}
|
44
75
|
}.to_json
|
45
76
|
end
|
@@ -47,14 +78,16 @@ describe LivePaper::WmTrigger do
|
|
47
78
|
|
48
79
|
context 'when we do not have all needed data,' do
|
49
80
|
it 'should raise exception if the name is no provided.' do
|
50
|
-
|
51
|
-
trigger = LivePaper::WmTrigger.new
|
81
|
+
data.delete :name
|
82
|
+
trigger = LivePaper::WmTrigger.new data
|
52
83
|
expect { trigger.save }.to raise_error
|
53
84
|
end
|
54
85
|
end
|
55
86
|
end
|
56
87
|
|
57
88
|
describe '#parse' do
|
89
|
+
let(:lpp_start_date_response_json) { JSON.parse(lpp_trigger_response_json)['trigger']['startDate'] }
|
90
|
+
let(:lpp_end_date_response_json) { JSON.parse(lpp_trigger_response_json)['trigger']['endDate'] }
|
58
91
|
before do
|
59
92
|
@trigger = LivePaper::WmTrigger.parse(lpp_trigger_response_json)
|
60
93
|
end
|
@@ -70,13 +103,20 @@ describe LivePaper::WmTrigger do
|
|
70
103
|
expect(@trigger.name).to eq 'name'
|
71
104
|
end
|
72
105
|
|
73
|
-
it 'should map the
|
74
|
-
expect(@trigger.
|
106
|
+
it 'should map the start_date attribute.' do
|
107
|
+
expect(@trigger.start_date).to eq lpp_start_date_response_json
|
108
|
+
end
|
109
|
+
|
110
|
+
it 'should map the end_date attribute.' do
|
111
|
+
expect(@trigger.end_date).to eq lpp_end_date_response_json
|
75
112
|
end
|
76
113
|
end
|
77
114
|
|
78
115
|
describe '.get' do
|
79
116
|
context 'the requested trigger exists.' do
|
117
|
+
let(:lpp_start_date_response_json) { JSON.parse(lpp_trigger_response_json)['trigger']['startDate'] }
|
118
|
+
let(:lpp_end_date_response_json) { JSON.parse(lpp_trigger_response_json)['trigger']['endDate'] }
|
119
|
+
|
80
120
|
before do
|
81
121
|
@trigger = LivePaper::Trigger.get('trigger_id')
|
82
122
|
end
|
@@ -85,7 +125,8 @@ describe LivePaper::WmTrigger do
|
|
85
125
|
expect(@trigger.id).to eq 'trigger_id'
|
86
126
|
expect(@trigger.name).to eq 'name'
|
87
127
|
expect(@trigger.class).to eq LivePaper::WmTrigger
|
88
|
-
expect(@trigger.
|
128
|
+
expect(@trigger.start_date).to eq lpp_start_date_response_json
|
129
|
+
expect(@trigger.end_date).to eq lpp_end_date_response_json
|
89
130
|
end
|
90
131
|
|
91
132
|
context 'qr trigger' do
|
@@ -126,7 +167,7 @@ describe LivePaper::WmTrigger do
|
|
126
167
|
|
127
168
|
before do
|
128
169
|
stub_request(:get, "https://fileapi/id/image?imageUrl=#{encoded_image_url}&resolution=#{resolution}&strength=#{strength}").to_return(:body => lpp_watermark_response, :status => 200)
|
129
|
-
@trigger = LivePaper::WmTrigger.new
|
170
|
+
@trigger = LivePaper::WmTrigger.new data
|
130
171
|
@trigger.wm_url='https://fileapi/id/image'
|
131
172
|
end
|
132
173
|
|
@@ -71,7 +71,8 @@ def lpp_trigger_response_json(type='watermark')
|
|
71
71
|
"state": "ACTIVE",
|
72
72
|
"type": "#{type}",
|
73
73
|
"watermark": "watermark",
|
74
|
-
"
|
74
|
+
"startDate":"2014-10-08T20:40:26.376+0000",
|
75
|
+
"endDate":"2015-10-09T02:29:12.376+0000"
|
75
76
|
}
|
76
77
|
}
|
77
78
|
RESPONSE
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: live_paper
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.27
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike Whitmarsh
|
@@ -9,8 +9,22 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2015-06-
|
12
|
+
date: 2015-06-23 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: activesupport
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
requirements:
|
18
|
+
- - '>='
|
19
|
+
- !ruby/object:Gem::Version
|
20
|
+
version: '0'
|
21
|
+
type: :runtime
|
22
|
+
prerelease: false
|
23
|
+
version_requirements: !ruby/object:Gem::Requirement
|
24
|
+
requirements:
|
25
|
+
- - '>='
|
26
|
+
- !ruby/object:Gem::Version
|
27
|
+
version: '0'
|
14
28
|
- !ruby/object:Gem::Dependency
|
15
29
|
name: rest-client
|
16
30
|
requirement: !ruby/object:Gem::Requirement
|
@@ -160,7 +174,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
160
174
|
version: '0'
|
161
175
|
requirements: []
|
162
176
|
rubyforge_project:
|
163
|
-
rubygems_version: 2.4.
|
177
|
+
rubygems_version: 2.4.6
|
164
178
|
signing_key:
|
165
179
|
specification_version: 4
|
166
180
|
summary: Ruby interface to the Live Paper service by HP.
|