tryphon-pige-client 0.0.3 → 1.0
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/.gitignore +16 -15
- data/examples/scheduler_chunks_daily.rb +6 -6
- data/lib/pige/client/chunk.rb +23 -0
- data/lib/pige/client/chunk_scheduler.rb +68 -4
- data/lib/pige/client/label.rb +20 -5
- data/lib/pige/client/resource.rb +15 -5
- data/lib/pige/client/version.rb +1 -2
- data/lib/tryphon-pige-client.rb +1 -0
- data/spec/pige/client/chunk_scheduler_spec.rb +99 -0
- data/spec/pige/client/chunk_spec.rb +14 -9
- data/spec/pige/client/label_spec.rb +11 -23
- metadata +6 -4
data/.gitignore
CHANGED
@@ -1,18 +1,19 @@
|
|
1
1
|
*.gem
|
2
2
|
*.rbc
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
Gemfile.lock
|
7
|
-
InstalledFiles
|
8
|
-
_yardoc
|
9
|
-
coverage
|
10
|
-
doc/
|
11
|
-
lib/bundler/man
|
12
|
-
pkg
|
13
|
-
rdoc
|
14
|
-
spec/reports
|
15
|
-
test/tmp
|
16
|
-
test/version_tmp
|
17
|
-
tmp
|
3
|
+
/.bundle
|
4
|
+
/.config
|
5
|
+
/.yardoc
|
6
|
+
/Gemfile.lock
|
7
|
+
/InstalledFiles
|
8
|
+
/_yardoc
|
9
|
+
/coverage
|
10
|
+
/doc/
|
11
|
+
/lib/bundler/man
|
12
|
+
/pkg
|
13
|
+
/rdoc
|
14
|
+
/spec/reports
|
15
|
+
/test/tmp
|
16
|
+
/test/version_tmp
|
17
|
+
/tmp
|
18
18
|
*~
|
19
|
+
/.ruby-version
|
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
require 'tryphon-pige-client'
|
4
4
|
|
5
|
-
Pige::Client.box_url = "http
|
5
|
+
Pige::Client.box_url = "http://#{ENV.fetch('PIGEBOX_HOST', 'pigebox.local')}"
|
6
6
|
include Pige::Client
|
7
7
|
|
8
8
|
ChunkScheduler.define do |schedule|
|
@@ -10,16 +10,16 @@ ChunkScheduler.define do |schedule|
|
|
10
10
|
day_back = ARGV.first ? ARGV.first.to_i : 1
|
11
11
|
schedule.day = Date.today - day_back
|
12
12
|
|
13
|
-
|
14
|
-
schedule.dry_run = true
|
13
|
+
# Doesn't really Chunks, only log orders
|
14
|
+
schedule.dry_run = ENV.fetch('DRY_RUN',"true") != "false"
|
15
15
|
|
16
16
|
# Default Attributes
|
17
17
|
# can be overridden in each create
|
18
18
|
schedule.default_attributes[:margin] = 5.minutes
|
19
|
-
#schedule.default_attributes[:format] = "
|
19
|
+
# schedule.default_attributes[:format] = "vorbis"
|
20
20
|
|
21
21
|
# Daily Chunks
|
22
|
-
schedule.create :title => "Flash 13h %d_%m_%Y", :begin => "13:00", :duration => 15.minutes, :margin =>
|
22
|
+
schedule.create :title => "Flash 13h %d_%m_%Y", :begin => "13:00", :begin_label => "Generique Flash", :duration => 15.minutes, :end_label => "Fin Direct", :margin => 0
|
23
23
|
|
24
24
|
# Only monday Chunks
|
25
25
|
schedule.on(:monday) do
|
@@ -51,7 +51,7 @@ ChunkScheduler.define do |schedule|
|
|
51
51
|
schedule.on(:sunday) do
|
52
52
|
# ...
|
53
53
|
end
|
54
|
-
end
|
54
|
+
end.download("/tmp")
|
55
55
|
|
56
56
|
# Remove oldest Chunks
|
57
57
|
#Pige::Client::Chunk.destroy_all(:older_than => 1.days.ago)
|
data/lib/pige/client/chunk.rb
CHANGED
@@ -4,5 +4,28 @@ module Pige::Client
|
|
4
4
|
attr_accessor :begin, :completion_rate, :end, :format, :title
|
5
5
|
time_attribute :begin, :end
|
6
6
|
|
7
|
+
def completion_rate
|
8
|
+
self.class.get("#{Pige::Client.box_url}/sources/1/chunks/#{id}.json")["completion_rate"].to_f
|
9
|
+
end
|
10
|
+
|
11
|
+
def extension
|
12
|
+
format == "vorbis" ? "ogg" : format
|
13
|
+
end
|
14
|
+
|
15
|
+
def download_url
|
16
|
+
"#{Pige::Client.box_url}/sources/1/chunks/#{id}.#{extension}"
|
17
|
+
end
|
18
|
+
|
19
|
+
def download_file
|
20
|
+
"#{title}.#{extension}"
|
21
|
+
end
|
22
|
+
|
23
|
+
def download(target)
|
24
|
+
File.open(File.join(target, download_file), "w") do |file|
|
25
|
+
open(download_url) do |url|
|
26
|
+
IO.copy_stream url, file
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
7
30
|
end
|
8
31
|
end
|
@@ -4,13 +4,50 @@ module Pige::Client
|
|
4
4
|
attr_accessor :day, :default_attributes, :dry_run
|
5
5
|
alias_method :dry_run?, :dry_run
|
6
6
|
|
7
|
+
def chunks
|
8
|
+
@chunks ||= []
|
9
|
+
end
|
10
|
+
|
11
|
+
def wait(timeout = nil)
|
12
|
+
timeout ||= chunks.size * 5
|
13
|
+
print "Wait for new chunks to be ready : "
|
14
|
+
deadline = Time.now + (timeout * 60)
|
15
|
+
|
16
|
+
uncompleted_chunks = chunks.dup
|
17
|
+
|
18
|
+
while Time.now < deadline
|
19
|
+
uncompleted_chunks.delete_if do |chunk|
|
20
|
+
chunk.completion_rate == 1
|
21
|
+
end
|
22
|
+
if uncompleted_chunks.empty?
|
23
|
+
puts "done\nChunks are ready"
|
24
|
+
break
|
25
|
+
else
|
26
|
+
print "."
|
27
|
+
sleep 10
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
def download(target)
|
33
|
+
wait
|
34
|
+
|
35
|
+
FileUtils.mkdir_p target
|
36
|
+
chunks.each do |chunk|
|
37
|
+
puts "Download '#{chunk.title}' to #{target}/#{chunk.download_file} ..."
|
38
|
+
chunk.download target
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
7
42
|
def initialize(day = Date.today)
|
8
43
|
self.day = day
|
9
44
|
self.default_attributes = { :format => "wav" }
|
10
45
|
end
|
11
46
|
|
12
47
|
def self.define(&block)
|
13
|
-
|
48
|
+
new.tap do |scheduler|
|
49
|
+
yield scheduler
|
50
|
+
end
|
14
51
|
end
|
15
52
|
|
16
53
|
def on(criteria, &block)
|
@@ -20,8 +57,7 @@ module Pige::Client
|
|
20
57
|
end
|
21
58
|
end
|
22
59
|
|
23
|
-
def
|
24
|
-
options = { :delay => 1 }.merge(options)
|
60
|
+
def chunk_attributes(attributes = {})
|
25
61
|
attributes = default_attributes.merge(attributes)
|
26
62
|
|
27
63
|
[:begin, :end].each do |endpoint|
|
@@ -36,6 +72,26 @@ module Pige::Client
|
|
36
72
|
end
|
37
73
|
end
|
38
74
|
|
75
|
+
if name = attributes[:begin_label]
|
76
|
+
label = Pige::Client::Label.by_name(name, after: attributes[:begin])
|
77
|
+
if label
|
78
|
+
puts "Found label '#{name}' at #{label.timestamp}"
|
79
|
+
attributes[:begin] = label.timestamp
|
80
|
+
else
|
81
|
+
puts "Can't find' label '#{name}'"
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
if name = attributes[:end_label]
|
86
|
+
label = Pige::Client::Label.by_name(name, before: attributes[:end])
|
87
|
+
if label
|
88
|
+
puts "Found label '#{name}' at #{label.timestamp}"
|
89
|
+
attributes[:end] = label.timestamp
|
90
|
+
else
|
91
|
+
puts "Can't find' label '#{name}'"
|
92
|
+
end
|
93
|
+
end
|
94
|
+
|
39
95
|
if margin = attributes.delete(:margin)
|
40
96
|
attributes[:begin] -= margin
|
41
97
|
attributes[:end] += margin
|
@@ -45,9 +101,17 @@ module Pige::Client
|
|
45
101
|
attributes[:title] = day.strftime(attributes[:title])
|
46
102
|
end
|
47
103
|
|
104
|
+
attributes
|
105
|
+
end
|
106
|
+
|
107
|
+
def create(attributes = {}, options = {})
|
108
|
+
options = { :delay => 1 }.merge(options)
|
109
|
+
|
110
|
+
attributes = chunk_attributes(attributes)
|
48
111
|
puts "Create Chunk with #{attributes.inspect}"
|
112
|
+
|
49
113
|
unless dry_run?
|
50
|
-
Pige::Client::Chunk.create
|
114
|
+
chunks << Pige::Client::Chunk.create(attributes)
|
51
115
|
sleep options[:delay].to_i if options[:delay]
|
52
116
|
end
|
53
117
|
end
|
data/lib/pige/client/label.rb
CHANGED
@@ -7,25 +7,40 @@ module Pige::Client
|
|
7
7
|
self.timestamp < date
|
8
8
|
end
|
9
9
|
|
10
|
-
def self.all
|
10
|
+
def self.all(options = {})
|
11
11
|
[].tap do |labels|
|
12
12
|
page = 1
|
13
13
|
empty_page = false
|
14
14
|
|
15
15
|
begin
|
16
|
-
labels_in_page = page(page)
|
16
|
+
labels_in_page = page(page, options)
|
17
17
|
unless labels_in_page.empty?
|
18
18
|
labels.push *labels_in_page
|
19
19
|
page += 1
|
20
20
|
else
|
21
21
|
empty_page = true
|
22
22
|
end
|
23
|
-
end until empty_page
|
23
|
+
end until empty_page
|
24
24
|
end
|
25
25
|
end
|
26
26
|
|
27
|
-
def self.
|
28
|
-
|
27
|
+
def self.by_name(name, options = {})
|
28
|
+
options = options.merge(term: name)
|
29
|
+
attributes = get("#{Pige::Client.box_url}/sources/1/labels.json", query: options).first
|
30
|
+
Label.new attributes if attributes
|
31
|
+
end
|
32
|
+
|
33
|
+
def self.older_than(date)
|
34
|
+
all(before: date)
|
35
|
+
end
|
36
|
+
|
37
|
+
def self.page(number, options = {})
|
38
|
+
additionnal_query = options.map do |k,v|
|
39
|
+
"#{k}=#{URI.escape(v.to_s)}" if v
|
40
|
+
end.join('&')
|
41
|
+
additionnal_query = "&#{additionnal_query}" unless additionnal_query.empty?
|
42
|
+
|
43
|
+
get("#{Pige::Client.box_url}/sources/1/labels.json?page=#{number}#{additionnal_query}").map do |attributes|
|
29
44
|
Label.new attributes["label"]
|
30
45
|
end
|
31
46
|
end
|
data/lib/pige/client/resource.rb
CHANGED
@@ -2,7 +2,7 @@ module Pige::Client
|
|
2
2
|
class Resource
|
3
3
|
include HTTParty
|
4
4
|
|
5
|
-
|
5
|
+
debug_output $stderr
|
6
6
|
format :json
|
7
7
|
|
8
8
|
def initialize(attributes = {})
|
@@ -21,6 +21,11 @@ module Pige::Client
|
|
21
21
|
attr_accessor :created_at, :updated_at
|
22
22
|
time_attribute :created_at, :updated_at
|
23
23
|
|
24
|
+
attr_accessor :errors
|
25
|
+
def errors
|
26
|
+
@errors ||= []
|
27
|
+
end
|
28
|
+
|
24
29
|
attr_accessor :id, :source_id
|
25
30
|
|
26
31
|
def older_than?(date)
|
@@ -35,17 +40,22 @@ module Pige::Client
|
|
35
40
|
name.downcase.split("::").last
|
36
41
|
end
|
37
42
|
|
43
|
+
def self.resources_name
|
44
|
+
"#{resource_name}s"
|
45
|
+
end
|
46
|
+
|
38
47
|
def self.base_url
|
39
48
|
"#{Pige::Client.box_url}/sources/1/#{resource_name}s"
|
40
49
|
end
|
41
50
|
|
42
51
|
def self.create(attributes = {})
|
43
|
-
post
|
52
|
+
response = post("#{base_url}.json", :query => { resource_name => attributes })
|
53
|
+
new response
|
44
54
|
end
|
45
55
|
|
46
56
|
def self.all
|
47
|
-
get("#{Pige::Client.box_url}/sources/1
|
48
|
-
|
57
|
+
get("#{Pige::Client.box_url}/sources/1/#{resources_name}.json").map do |attributes|
|
58
|
+
new attributes[resource_name]
|
49
59
|
end
|
50
60
|
end
|
51
61
|
|
@@ -56,7 +66,7 @@ module Pige::Client
|
|
56
66
|
end
|
57
67
|
|
58
68
|
def self.destroy_all(conditions = {})
|
59
|
-
resources =
|
69
|
+
resources =
|
60
70
|
if older_than = conditions[:older_than]
|
61
71
|
older_than(older_than)
|
62
72
|
else
|
data/lib/pige/client/version.rb
CHANGED
data/lib/tryphon-pige-client.rb
CHANGED
@@ -0,0 +1,99 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe ChunkScheduler do
|
4
|
+
|
5
|
+
describe "#day" do
|
6
|
+
|
7
|
+
it "should use today by default" do
|
8
|
+
subject.day.should == Date.today
|
9
|
+
end
|
10
|
+
|
11
|
+
end
|
12
|
+
|
13
|
+
describe "#dry_run" do
|
14
|
+
|
15
|
+
it "should be false by default" do
|
16
|
+
subject.dry_run.should be_false
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
20
|
+
|
21
|
+
describe "#default_attributes" do
|
22
|
+
|
23
|
+
it "should define format to wav" do
|
24
|
+
subject.default_attributes[:format].should == "wav"
|
25
|
+
end
|
26
|
+
|
27
|
+
end
|
28
|
+
|
29
|
+
describe "#on" do
|
30
|
+
|
31
|
+
it "should yield block if day matchs criteria" do
|
32
|
+
subject.day.stub :dummy? => true
|
33
|
+
has_been_yield = false
|
34
|
+
subject.on(:dummy) { has_been_yield = true }
|
35
|
+
end
|
36
|
+
|
37
|
+
end
|
38
|
+
|
39
|
+
describe "#chunk_attributes" do
|
40
|
+
|
41
|
+
context "when begin_label is specified" do
|
42
|
+
|
43
|
+
let(:time) { Time.now }
|
44
|
+
let(:label) { double(timestamp: Time.now) }
|
45
|
+
|
46
|
+
it "should use label timestamp if found" do
|
47
|
+
Pige::Client::Label.should_receive(:by_name).with("dummy", after: nil).and_return(label)
|
48
|
+
|
49
|
+
attributes = subject.chunk_attributes begin_label: "dummy"
|
50
|
+
attributes[:begin].should == label.timestamp
|
51
|
+
end
|
52
|
+
|
53
|
+
it "should search label after begin time" do
|
54
|
+
Pige::Client::Label.should_receive(:by_name).with("dummy", after: time).and_return(label)
|
55
|
+
|
56
|
+
attributes = subject.chunk_attributes begin_label: "dummy", begin: time
|
57
|
+
attributes[:begin].should == label.timestamp
|
58
|
+
end
|
59
|
+
|
60
|
+
it "should use begin time if label is not found" do
|
61
|
+
Pige::Client::Label.stub by_name: nil
|
62
|
+
|
63
|
+
attributes = subject.chunk_attributes begin: time
|
64
|
+
attributes[:begin].should == time
|
65
|
+
end
|
66
|
+
|
67
|
+
end
|
68
|
+
|
69
|
+
context "when end_label is specified" do
|
70
|
+
|
71
|
+
let(:time) { Time.now }
|
72
|
+
let(:label) { double(timestamp: Time.now) }
|
73
|
+
|
74
|
+
it "should use label timestamp if found" do
|
75
|
+
Pige::Client::Label.should_receive(:by_name).with("dummy", before: nil).and_return(label)
|
76
|
+
|
77
|
+
attributes = subject.chunk_attributes end_label: "dummy"
|
78
|
+
attributes[:end].should == label.timestamp
|
79
|
+
end
|
80
|
+
|
81
|
+
it "should search label before end time" do
|
82
|
+
Pige::Client::Label.should_receive(:by_name).with("dummy", before: time).and_return(label)
|
83
|
+
|
84
|
+
attributes = subject.chunk_attributes end_label: "dummy", end: time
|
85
|
+
attributes[:end].should == label.timestamp
|
86
|
+
end
|
87
|
+
|
88
|
+
it "should use end time if label is not found" do
|
89
|
+
Pige::Client::Label.stub by_name: nil
|
90
|
+
|
91
|
+
attributes = subject.chunk_attributes end: time
|
92
|
+
attributes[:end].should == time
|
93
|
+
end
|
94
|
+
|
95
|
+
end
|
96
|
+
|
97
|
+
end
|
98
|
+
|
99
|
+
end
|
@@ -2,6 +2,14 @@ require 'spec_helper'
|
|
2
2
|
|
3
3
|
describe Chunk do
|
4
4
|
|
5
|
+
describe ".resources_name" do
|
6
|
+
|
7
|
+
it "should be chunks" do
|
8
|
+
Chunk.resources_name.should == "chunks"
|
9
|
+
end
|
10
|
+
|
11
|
+
end
|
12
|
+
|
5
13
|
describe ".all" do
|
6
14
|
|
7
15
|
before do
|
@@ -15,13 +23,13 @@ describe Chunk do
|
|
15
23
|
it "should create Chunks with received data" do
|
16
24
|
Chunk.all.first.title.should == "Emission Cinema lundi 03_12_2012"
|
17
25
|
end
|
18
|
-
|
26
|
+
|
19
27
|
end
|
20
28
|
|
21
29
|
describe ".destroy_all" do
|
22
30
|
|
23
31
|
let(:chunk) { mock }
|
24
|
-
|
32
|
+
|
25
33
|
context "without conditions" do
|
26
34
|
|
27
35
|
it "should destroy all Chunks returned by Chunk.all" do
|
@@ -41,7 +49,7 @@ describe Chunk do
|
|
41
49
|
chunk.should_receive(:destroy)
|
42
50
|
Chunk.destroy_all :older_than => date
|
43
51
|
end
|
44
|
-
|
52
|
+
|
45
53
|
end
|
46
54
|
|
47
55
|
end
|
@@ -60,7 +68,7 @@ describe Chunk do
|
|
60
68
|
chunk.created_at = date + 1
|
61
69
|
chunk.should_not be_older_than(date)
|
62
70
|
end
|
63
|
-
|
71
|
+
|
64
72
|
end
|
65
73
|
|
66
74
|
describe ".older_than" do
|
@@ -71,7 +79,7 @@ describe Chunk do
|
|
71
79
|
before do
|
72
80
|
Chunk.stub :all => [chunk]
|
73
81
|
end
|
74
|
-
|
82
|
+
|
75
83
|
it "should select Chunks older than specified date" do
|
76
84
|
chunk.should_receive(:older_than?).with(date).and_return(true)
|
77
85
|
Chunk.older_than(date).should include(chunk)
|
@@ -94,8 +102,5 @@ describe Chunk do
|
|
94
102
|
end
|
95
103
|
|
96
104
|
end
|
97
|
-
|
98
|
-
end
|
99
|
-
|
100
|
-
|
101
105
|
|
106
|
+
end
|
@@ -15,7 +15,7 @@ describe Label do
|
|
15
15
|
it "should create Labels with received data" do
|
16
16
|
Label.page(2).first.name.should == "Test"
|
17
17
|
end
|
18
|
-
|
18
|
+
|
19
19
|
end
|
20
20
|
|
21
21
|
describe ".all" do
|
@@ -23,9 +23,9 @@ describe Label do
|
|
23
23
|
let(:label) { mock }
|
24
24
|
|
25
25
|
it "should concat pages until an empty one" do
|
26
|
-
Label.should_receive(:page).with(1).and_return([label])
|
27
|
-
Label.should_receive(:page).with(2).and_return([label])
|
28
|
-
Label.should_receive(:page).with(3).and_return([])
|
26
|
+
Label.should_receive(:page).with(1, {}).and_return([label])
|
27
|
+
Label.should_receive(:page).with(2, {}).and_return([label])
|
28
|
+
Label.should_receive(:page).with(3, {}).and_return([])
|
29
29
|
|
30
30
|
Label.all.should == [label, label]
|
31
31
|
end
|
@@ -35,7 +35,7 @@ describe Label do
|
|
35
35
|
describe ".destroy_all" do
|
36
36
|
|
37
37
|
let(:label) { mock }
|
38
|
-
|
38
|
+
|
39
39
|
context "without conditions" do
|
40
40
|
|
41
41
|
it "should destroy all Labels returned by Label.all" do
|
@@ -55,7 +55,7 @@ describe Label do
|
|
55
55
|
label.should_receive(:destroy)
|
56
56
|
Label.destroy_all :older_than => date
|
57
57
|
end
|
58
|
-
|
58
|
+
|
59
59
|
end
|
60
60
|
|
61
61
|
end
|
@@ -74,26 +74,17 @@ describe Label do
|
|
74
74
|
label.timestamp = date + 1
|
75
75
|
label.should_not be_older_than(date)
|
76
76
|
end
|
77
|
-
|
77
|
+
|
78
78
|
end
|
79
79
|
|
80
80
|
describe ".older_than" do
|
81
81
|
|
82
|
-
let(:label) { mock }
|
83
82
|
let(:date) { Time.now }
|
84
83
|
|
85
|
-
before do
|
86
|
-
Label.stub :all => [label]
|
87
|
-
end
|
88
|
-
|
89
84
|
it "should select Labels older than specified date" do
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
it "should ignore Labels not older than specified date" do
|
95
|
-
label.should_receive(:older_than?).with(date).and_return(false)
|
96
|
-
Label.older_than(date).should_not include(label)
|
85
|
+
FakeWeb.register_uri(:get, "http://pigebox.local/sources/1/labels.json?page=1&before=#{URI.escape(date.to_s)}", :body => fixture_content("labels.json"))
|
86
|
+
FakeWeb.register_uri(:get, "http://pigebox.local/sources/1/labels.json?page=2&before=#{URI.escape(date.to_s)}", :body => [].to_json)
|
87
|
+
Label.older_than(date).first.name.should == "Test"
|
97
88
|
end
|
98
89
|
|
99
90
|
end
|
@@ -108,8 +99,5 @@ describe Label do
|
|
108
99
|
end
|
109
100
|
|
110
101
|
end
|
111
|
-
|
112
|
-
end
|
113
|
-
|
114
|
-
|
115
102
|
|
103
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tryphon-pige-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: '1.0'
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date:
|
13
|
+
date: 2015-01-25 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: fakeweb
|
@@ -150,6 +150,7 @@ files:
|
|
150
150
|
- lib/tryphon-pige-client.rb
|
151
151
|
- spec/fixtures/chunks.json
|
152
152
|
- spec/fixtures/labels.json
|
153
|
+
- spec/pige/client/chunk_scheduler_spec.rb
|
153
154
|
- spec/pige/client/chunk_spec.rb
|
154
155
|
- spec/pige/client/label_spec.rb
|
155
156
|
- spec/spec_helper.rb
|
@@ -173,7 +174,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
173
174
|
version: '0'
|
174
175
|
segments:
|
175
176
|
- 0
|
176
|
-
hash:
|
177
|
+
hash: -3329681472246691501
|
177
178
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
178
179
|
none: false
|
179
180
|
requirements:
|
@@ -182,7 +183,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
182
183
|
version: '0'
|
183
184
|
segments:
|
184
185
|
- 0
|
185
|
-
hash:
|
186
|
+
hash: -3329681472246691501
|
186
187
|
requirements: []
|
187
188
|
rubyforge_project:
|
188
189
|
rubygems_version: 1.8.23
|
@@ -192,6 +193,7 @@ summary: Tryphon PigeBox API ruby client
|
|
192
193
|
test_files:
|
193
194
|
- spec/fixtures/chunks.json
|
194
195
|
- spec/fixtures/labels.json
|
196
|
+
- spec/pige/client/chunk_scheduler_spec.rb
|
195
197
|
- spec/pige/client/chunk_spec.rb
|
196
198
|
- spec/pige/client/label_spec.rb
|
197
199
|
- spec/spec_helper.rb
|