deliver 0.2.1.pre → 0.2.1.pre2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/deliver/deliverfile/deliverfile_creator.rb +5 -1
- data/lib/deliver/version.rb +1 -1
- metadata +2 -170
- data/.gitignore +0 -41
- data/.rspec +0 -1
- data/.travis.yml +0 -8
- data/.yardopts +0 -1
- data/Gemfile +0 -4
- data/Gemfile.lock +0 -108
- data/Rakefile +0 -5
- data/assets/PDFExample.png +0 -0
- data/assets/SubmitForReviewInformation.png +0 -0
- data/assets/deliver.png +0 -0
- data/assets/deliver.pxm +0 -0
- data/assets/deliverFullSize.png +0 -0
- data/deliver.gemspec +0 -53
- data/spec/app_metadata_spec.rb +0 -350
- data/spec/app_screenshot_spec.rb +0 -88
- data/spec/app_spec.rb +0 -85
- data/spec/deliverer_spec.rb +0 -48
- data/spec/deliverfile_creator_spec.rb +0 -74
- data/spec/example_deliver_files_spec.rb +0 -227
- data/spec/fixtures/Deliverfiles/DeliverfileCallbacks +0 -14
- data/spec/fixtures/Deliverfiles/DeliverfileCallbacksFailingTests +0 -14
- data/spec/fixtures/Deliverfiles/DeliverfileCallbacksNoErrorBlock +0 -6
- data/spec/fixtures/Deliverfiles/DeliverfileDefaultLanguageNotOnTop +0 -8
- data/spec/fixtures/Deliverfiles/DeliverfileDuplicateIpa +0 -2
- data/spec/fixtures/Deliverfiles/DeliverfileLocales +0 -16
- data/spec/fixtures/Deliverfiles/DeliverfileMetadataJson +0 -6
- data/spec/fixtures/Deliverfiles/DeliverfileMissingAppVersion +0 -1
- data/spec/fixtures/Deliverfiles/DeliverfileMissingBlockForTests +0 -7
- data/spec/fixtures/Deliverfiles/DeliverfileMissingIdentifier +0 -1
- data/spec/fixtures/Deliverfiles/DeliverfileMissingLanguage +0 -1
- data/spec/fixtures/Deliverfiles/DeliverfileMissingValue +0 -3
- data/spec/fixtures/Deliverfiles/DeliverfileMixed +0 -37
- data/spec/fixtures/Deliverfiles/DeliverfileNoVersion +0 -3
- data/spec/fixtures/Deliverfiles/DeliverfileScreenshots +0 -6
- data/spec/fixtures/Deliverfiles/DeliverfileScreenshotsFallbackDefaultLanguage +0 -7
- data/spec/fixtures/Deliverfiles/DeliverfileSimple +0 -8
- data/spec/fixtures/Deliverfiles/DeliverfileVersionMismatchPackage +0 -8
- data/spec/fixtures/Deliverfiles/DeliverfileWrongIdentifier +0 -5
- data/spec/fixtures/Deliverfiles/DeliverfileWrongVersion +0 -5
- data/spec/fixtures/Deliverfiles/metadata.json +0 -24
- data/spec/fixtures/example1.itmsp/metadata.xml +0 -121
- data/spec/fixtures/example2.itmsp/metadata.xml +0 -54
- data/spec/fixtures/ipas/Example1.ipa +0 -0
- data/spec/fixtures/metadata/ipa_result.xml +0 -12
- data/spec/fixtures/metadata/ipa_result2.xml +0 -12
- data/spec/fixtures/packages/464686641.itmsp/metadata.xml +0 -104
- data/spec/fixtures/packages/794902327.itmsp/metadata.xml +0 -107
- data/spec/fixtures/packages/878567776.itmsp/metadata.xml +0 -104
- data/spec/fixtures/screenshots/de-DE/iPhone4.png +0 -0
- data/spec/fixtures/screenshots/de-DE/iPhone6.png +0 -0
- data/spec/fixtures/screenshots/de-DE/iPhone6Plus1.png +0 -0
- data/spec/fixtures/screenshots/de-DE/iPhone6Plus2.png +0 -0
- data/spec/fixtures/screenshots/de-DE/screenshot1.png +0 -0
- data/spec/fixtures/screenshots/de-DE/screenshot2.png +0 -0
- data/spec/fixtures/screenshots/de-DE/screenshot3.png +0 -0
- data/spec/fixtures/screenshots/de-DE/screenshot5.png +0 -0
- data/spec/fixtures/screenshots/en-US/english.png +0 -0
- data/spec/fixtures/screenshots/iPhone4.png +0 -0
- data/spec/fixtures/screenshots/invalidImage.png +0 -0
- data/spec/fixtures/screenshots/screenshot1.png +0 -0
- data/spec/fixtures/screenshots/tooMany/de-DE/iPhone4 2.png +0 -0
- data/spec/fixtures/screenshots/tooMany/de-DE/iPhone4 copy 2.png +0 -0
- data/spec/fixtures/screenshots/tooMany/de-DE/iPhone4 copy 3.png +0 -0
- data/spec/fixtures/screenshots/tooMany/de-DE/iPhone4 copy 4.png +0 -0
- data/spec/fixtures/screenshots/tooMany/de-DE/iPhone4 copy 5.png +0 -0
- data/spec/fixtures/screenshots/tooMany/de-DE/iPhone4 copy 6.png +0 -0
- data/spec/fixtures/screenshots/tooMany/de-DE/iPhone4 copy.png +0 -0
- data/spec/fixtures/screenshots/tooMany/de-DE/iPhone4.png +0 -0
- data/spec/helper_spec.rb +0 -16
- data/spec/ipa_uploader_spec.rb +0 -61
- data/spec/itunes_connect_spec.rb +0 -12
- data/spec/itunes_search_api_spec.rb +0 -24
- data/spec/itunes_transporter_spec.rb +0 -52
- data/spec/languages_spec.rb +0 -7
- data/spec/metadata_item_spec.rb +0 -36
- data/spec/mocking/transporter_mocking.rb +0 -40
- data/spec/mocking/webmocking.rb +0 -31
- data/spec/password_manager_spec.rb +0 -27
- data/spec/responses/itunesLookup-.json +0 -4
- data/spec/responses/itunesLookup-0.json +0 -4
- data/spec/responses/itunesLookup-284882215.json +0 -106
- data/spec/responses/itunesLookup-at.felixkrause.iTanky.json +0 -8
- data/spec/responses/itunesLookup-com.facebook.Facebook.json +0 -106
- data/spec/responses/itunesLookup-invalid.json +0 -4
- data/spec/responses/itunesLookup-net.sunapps.invalid.json +0 -4
- data/spec/responses/transporter/download_invalid_apple_id.txt +0 -35
- data/spec/responses/transporter/download_valid_apple_id.txt +0 -32
- data/spec/responses/transporter/upload_invalid.txt +0 -174
- data/spec/responses/transporter/upload_valid.txt +0 -290
- data/spec/spec_helper.rb +0 -26
- data/tasks/rspec.rake +0 -3
@@ -1,104 +0,0 @@
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
-
<package xmlns="http://apple.com/itunes/importer" version="software5.2">
|
3
|
-
<!-- This document was generated on Oct 16, 2014 1:04:27 PM for felix@sunapps.net <felix@sunapps.net>. -->
|
4
|
-
<!-- NOTE: metadata_token is generated on lookup. Modifying the value of this will result in an import error -->
|
5
|
-
<metadata_token>1413489867655-asdfasdfasdfasdf</metadata_token>
|
6
|
-
<provider>5A997XSHK2</provider>
|
7
|
-
<team_id>5A997XSHK2</team_id>
|
8
|
-
<software>
|
9
|
-
<!--Apple ID: 878567776-->
|
10
|
-
<vendor_id>54</vendor_id>
|
11
|
-
<read_only_info>
|
12
|
-
<read_only_value key="apple-id">878567776</read_only_value>
|
13
|
-
</read_only_info>
|
14
|
-
<software_metadata>
|
15
|
-
<versions>
|
16
|
-
<version string="943.0">
|
17
|
-
<locales>
|
18
|
-
<locale name="en-US">
|
19
|
-
<title>Die ultimative iPhone App</title>
|
20
|
-
<description>App Beschreibung</description>
|
21
|
-
<keywords>
|
22
|
-
<keyword>keyword1</keyword>
|
23
|
-
<keyword>something</keyword>
|
24
|
-
<keyword>else</keyword>
|
25
|
-
</keywords>
|
26
|
-
<version_whats_new>Danke für das Lesen dieses Tests</version_whats_new>
|
27
|
-
<software_url>http://www.sunapps.net</software_url>
|
28
|
-
<support_url>http://support.sunapps.net</support_url>
|
29
|
-
<software_screenshots>
|
30
|
-
<software_screenshot display_target="iOS-3.5-in" position="1">
|
31
|
-
<size>144787</size>
|
32
|
-
<file_name>c9941d1d8b68fd89a5b639fa3e726e98.png</file_name>
|
33
|
-
<checksum type="md5">c9941d1d8b68fd89a5b639fa3e726e98</checksum>
|
34
|
-
</software_screenshot>
|
35
|
-
<software_screenshot display_target="iOS-3.5-in" position="2">
|
36
|
-
<size>457626</size>
|
37
|
-
<file_name>6aa173cc2aa7ea07c3825468959135a6.png</file_name>
|
38
|
-
<checksum type="md5">6aa173cc2aa7ea07c3825468959135a6</checksum>
|
39
|
-
</software_screenshot>
|
40
|
-
<software_screenshot display_target="iOS-3.5-in" position="3">
|
41
|
-
<size>406020</size>
|
42
|
-
<file_name>869daf2d0f34e3560f114f2602f8181b.png</file_name>
|
43
|
-
<checksum type="md5">869daf2d0f34e3560f114f2602f8181b</checksum>
|
44
|
-
</software_screenshot>
|
45
|
-
<software_screenshot display_target="iOS-3.5-in" position="4">
|
46
|
-
<size>1071380</size>
|
47
|
-
<file_name>ca064467f87e83c9eaec48dab9c6ef31.png</file_name>
|
48
|
-
<checksum type="md5">ca064467f87e83c9eaec48dab9c6ef31</checksum>
|
49
|
-
</software_screenshot>
|
50
|
-
<software_screenshot display_target="iOS-3.5-in" position="5">
|
51
|
-
<size>312901</size>
|
52
|
-
<file_name>79a1320e0def4bfde03259ac702773bb.png</file_name>
|
53
|
-
<checksum type="md5">79a1320e0def4bfde03259ac702773bb</checksum>
|
54
|
-
</software_screenshot>
|
55
|
-
<software_screenshot display_target="iOS-4-in" position="1">
|
56
|
-
<size>160837</size>
|
57
|
-
<file_name>c8e24017bb4e733a2450a3d5106231af.png</file_name>
|
58
|
-
<checksum type="md5">c8e24017bb4e733a2450a3d5106231af</checksum>
|
59
|
-
</software_screenshot>
|
60
|
-
<software_screenshot display_target="iOS-4-in" position="2">
|
61
|
-
<size>493813</size>
|
62
|
-
<file_name>c86a66a67d8749f555b02b30580226d2.png</file_name>
|
63
|
-
<checksum type="md5">c86a66a67d8749f555b02b30580226d2</checksum>
|
64
|
-
</software_screenshot>
|
65
|
-
<software_screenshot display_target="iOS-4-in" position="3">
|
66
|
-
<size>420578</size>
|
67
|
-
<file_name>7100533af94802f3f8dc22f8ff2bfe20.png</file_name>
|
68
|
-
<checksum type="md5">7100533af94802f3f8dc22f8ff2bfe20</checksum>
|
69
|
-
</software_screenshot>
|
70
|
-
<software_screenshot display_target="iOS-4-in" position="4">
|
71
|
-
<size>1198170</size>
|
72
|
-
<file_name>bba7886c43a01d12091be04cae5cdff7.png</file_name>
|
73
|
-
<checksum type="md5">bba7886c43a01d12091be04cae5cdff7</checksum>
|
74
|
-
</software_screenshot>
|
75
|
-
<software_screenshot display_target="iOS-4-in" position="5">
|
76
|
-
<size>327234</size>
|
77
|
-
<file_name>6054fba995f604fc4137ee67762c1858.png</file_name>
|
78
|
-
<checksum type="md5">6054fba995f604fc4137ee67762c1858</checksum>
|
79
|
-
</software_screenshot>
|
80
|
-
</software_screenshots>
|
81
|
-
</locale>
|
82
|
-
</locales>
|
83
|
-
</version>
|
84
|
-
|
85
|
-
</versions>
|
86
|
-
<products>
|
87
|
-
<product>
|
88
|
-
<territory>WW</territory>
|
89
|
-
<cleared_for_sale>true</cleared_for_sale>
|
90
|
-
<sales_start_date>2014-05-14</sales_start_date>
|
91
|
-
<intervals>
|
92
|
-
<!--The following <interval> element represents a snapshot of present and future pricing and availability information.
|
93
|
-
In other words, past data may not be reflected by this interval.-->
|
94
|
-
<interval>
|
95
|
-
<start_date>2014-10-16</start_date>
|
96
|
-
<wholesale_price_tier>0</wholesale_price_tier>
|
97
|
-
</interval>
|
98
|
-
</intervals>
|
99
|
-
<allow_volume_discount>true</allow_volume_discount>
|
100
|
-
</product>
|
101
|
-
</products>
|
102
|
-
</software_metadata>
|
103
|
-
</software>
|
104
|
-
</package>
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/spec/helper_spec.rb
DELETED
@@ -1,16 +0,0 @@
|
|
1
|
-
describe Deliver do
|
2
|
-
describe Deliver::Helper do
|
3
|
-
|
4
|
-
if OS.mac?
|
5
|
-
it "#xcode_path" do
|
6
|
-
expect(Deliver::Helper.xcode_path[-1]).to eq('/')
|
7
|
-
expect(Deliver::Helper.xcode_path).to eq("/Applications/Xcode.app/Contents/Developer/")
|
8
|
-
end
|
9
|
-
|
10
|
-
it "#transporter_path" do
|
11
|
-
expect(Deliver::Helper.transporter_path).to eq("/Applications/Xcode.app/Contents/Developer/../Applications/Application\\ Loader.app/Contents/MacOS/itms/bin/iTMSTransporter")
|
12
|
-
end
|
13
|
-
end
|
14
|
-
|
15
|
-
end
|
16
|
-
end
|
data/spec/ipa_uploader_spec.rb
DELETED
@@ -1,61 +0,0 @@
|
|
1
|
-
describe Deliver do
|
2
|
-
describe Deliver::IpaUploader do
|
3
|
-
let (:apple_id) { 794902327 }
|
4
|
-
let (:app_identifier) { 'net.sunapps.1' }
|
5
|
-
|
6
|
-
before do
|
7
|
-
@app = Deliver::App.new(apple_id: apple_id, app_identifier: app_identifier)
|
8
|
-
end
|
9
|
-
|
10
|
-
describe "#init" do
|
11
|
-
it "raises an exception, when ipa file could not be found" do
|
12
|
-
expect {
|
13
|
-
Deliver::IpaUploader.new(@app, "/tmp", "./nonExistent.ipa", true)
|
14
|
-
}.to raise_error("IPA on path './nonExistent.ipa' not found")
|
15
|
-
end
|
16
|
-
|
17
|
-
it "raises an exception, when ipa file is not an ipa file" do
|
18
|
-
expect {
|
19
|
-
Deliver::IpaUploader.new(@app, "/tmp", "./spec/fixtures/screenshots/iPhone4.png", true)
|
20
|
-
}.to raise_error("IPA on path './spec/fixtures/screenshots/iPhone4.png' is not a valid IPA file")
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
|
-
describe "after init" do
|
25
|
-
before do
|
26
|
-
@uploader = Deliver::IpaUploader.new(@app, "/tmp", "./spec/fixtures/ipas/Example1.ipa", false)
|
27
|
-
end
|
28
|
-
|
29
|
-
describe "#fetch_app_identifier" do
|
30
|
-
it "returns the valid identifier based on the Info.plist file" do
|
31
|
-
expect(@uploader.fetch_app_identifier).to eq("at.felixkrause.iTanky")
|
32
|
-
end
|
33
|
-
end
|
34
|
-
|
35
|
-
describe "#fetch_app_version" do
|
36
|
-
it "returns the valid version based on the Info.plist file" do
|
37
|
-
expect(@uploader.fetch_app_version).to eq("1.0")
|
38
|
-
end
|
39
|
-
end
|
40
|
-
end
|
41
|
-
|
42
|
-
describe "#start" do
|
43
|
-
it "properly loads and stores the ipa when it's valid" do
|
44
|
-
Deliver::ItunesTransporter.set_mock_file("spec/responses/transporter/upload_valid.txt")
|
45
|
-
|
46
|
-
uploader = Deliver::IpaUploader.new(@app, "/tmp", "./spec/fixtures/ipas/Example1.ipa", false)
|
47
|
-
|
48
|
-
expect(uploader.app.apple_id).to eq(apple_id)
|
49
|
-
|
50
|
-
expect(uploader.upload!).to eq(true)
|
51
|
-
|
52
|
-
expect(uploader.fetch_value("//x:size").first.content.to_i).to eq(2056240)
|
53
|
-
expect(uploader.fetch_value("//x:checksum").first.content).to eq("094c6abbfd3a22e7e0ebc85c5f650882")
|
54
|
-
expect(uploader.fetch_value("//x:file_name").first.content).to eq("304c8f3176463c89c28fe3a8ea6c726b.ipa")
|
55
|
-
|
56
|
-
content = File.read("/tmp/#{apple_id}.itmsp/metadata.xml").to_s
|
57
|
-
expect(content).to eq(File.read("./spec/fixtures/metadata/ipa_result2.xml").to_s)
|
58
|
-
end
|
59
|
-
end
|
60
|
-
end
|
61
|
-
end
|
data/spec/itunes_connect_spec.rb
DELETED
@@ -1,12 +0,0 @@
|
|
1
|
-
describe Deliver do
|
2
|
-
describe Deliver::ItunesConnect do
|
3
|
-
describe "#update_app_icon" do
|
4
|
-
# it "raises an error when image resolution is wrong" do
|
5
|
-
# app = Deliver::App.new(apple_id: 912330783, app_identifier: 'net.sunapps.54')
|
6
|
-
# expect {
|
7
|
-
# Deliver::ItunesConnect.new.update_app_icon!(app, './spec/fixtures/screenshots/iPhone4.png')
|
8
|
-
# }.to raise_error "App icon must have the resolution of 1024x1024px"
|
9
|
-
# end
|
10
|
-
end
|
11
|
-
end
|
12
|
-
end
|
@@ -1,24 +0,0 @@
|
|
1
|
-
describe Deliver do
|
2
|
-
describe Deliver::ItunesSearchApi do
|
3
|
-
it "returns nil when it could not be found" do
|
4
|
-
expect(Deliver::ItunesSearchApi.fetch("invalid")).to eq(nil)
|
5
|
-
expect(Deliver::ItunesSearchApi.fetch("")).to eq(nil)
|
6
|
-
expect(Deliver::ItunesSearchApi.fetch(0)).to eq(nil)
|
7
|
-
end
|
8
|
-
|
9
|
-
it "returns the actual object if it could be found" do
|
10
|
-
response = Deliver::ItunesSearchApi.fetch("284882215")
|
11
|
-
expect(response['kind']).to eq('software')
|
12
|
-
expect(response['supportedDevices'].count).to be > 8
|
13
|
-
|
14
|
-
expect(Deliver::ItunesSearchApi.fetch_bundle_identifier("284882215")).to eq('com.facebook.Facebook')
|
15
|
-
end
|
16
|
-
|
17
|
-
it "returns the actual object if it could be found" do
|
18
|
-
response = Deliver::ItunesSearchApi.fetch_by_identifier("com.facebook.Facebook")
|
19
|
-
expect(response['kind']).to eq('software')
|
20
|
-
expect(response['supportedDevices'].count).to be > 8
|
21
|
-
expect(response['trackId']).to eq(284882215)
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
@@ -1,52 +0,0 @@
|
|
1
|
-
describe Deliver do
|
2
|
-
describe Deliver::ItunesTransporter do
|
3
|
-
before do
|
4
|
-
@app = Deliver::App.new(apple_id: 284882215, app_identifier: 'com.facebook.Facebook')
|
5
|
-
end
|
6
|
-
|
7
|
-
describe "#download" do
|
8
|
-
it "throws an exception when invalid parameter is given" do
|
9
|
-
expect {
|
10
|
-
Deliver::ItunesTransporter.new.download(123)
|
11
|
-
}.to raise_error "No valid Deliver::App given"
|
12
|
-
end
|
13
|
-
|
14
|
-
it "invalid login information" do
|
15
|
-
Deliver::ItunesTransporter.set_mock_file("spec/responses/transporter/download_invalid_apple_id.txt")
|
16
|
-
expect {
|
17
|
-
expect(Deliver::ItunesTransporter.new("email@email.com", "login").download(@app)).to eq(true)
|
18
|
-
}.to raise_error(/.*This Apple ID has been locked for security reasons.*/)
|
19
|
-
end
|
20
|
-
end
|
21
|
-
|
22
|
-
describe "#upload" do
|
23
|
-
it "properly uploads the package file" do
|
24
|
-
@app.apple_id = 878567776
|
25
|
-
|
26
|
-
Deliver::ItunesTransporter.set_mock_file("spec/responses/transporter/download_valid_apple_id.txt")
|
27
|
-
|
28
|
-
FileUtils.cp_r "./spec/fixtures/example2.itmsp/", '/tmp'
|
29
|
-
|
30
|
-
path = "/tmp/example2.itmsp"
|
31
|
-
|
32
|
-
@app.set_metadata_directory(path)
|
33
|
-
|
34
|
-
@app.metadata # download & parse the latest metadata
|
35
|
-
|
36
|
-
Deliver::ItunesTransporter.set_mock_file("spec/responses/transporter/upload_valid.txt")
|
37
|
-
expect(@app.upload_metadata!).to eq(true)
|
38
|
-
|
39
|
-
|
40
|
-
Deliver::ItunesTransporter.set_mock_file("spec/responses/transporter/upload_valid.txt")
|
41
|
-
@ipa = Deliver::IpaUploader.new(@app, '/tmp/', "./spec/fixtures/ipas/Example1.ipa", false)
|
42
|
-
expect(@ipa.upload!).to eq(true)
|
43
|
-
|
44
|
-
# Verify the example2/metadata.xml is correct
|
45
|
-
content = File.read("/tmp/#{@app.apple_id}.itmsp/metadata.xml").to_s
|
46
|
-
expect(content).to eq(File.read("./spec/fixtures/metadata/ipa_result.xml").to_s)
|
47
|
-
|
48
|
-
FileUtils.rm_rf(path)
|
49
|
-
end
|
50
|
-
end
|
51
|
-
end
|
52
|
-
end
|
data/spec/languages_spec.rb
DELETED
data/spec/metadata_item_spec.rb
DELETED
@@ -1,36 +0,0 @@
|
|
1
|
-
describe Deliver do
|
2
|
-
describe Deliver::MetadataItem do
|
3
|
-
let (:path) { "./spec/fixtures/screenshots/iPhone4.png" }
|
4
|
-
|
5
|
-
describe "#init" do
|
6
|
-
it "raises an exception if file was not found" do
|
7
|
-
other_path = "./notHere.png"
|
8
|
-
expect {
|
9
|
-
Deliver::MetadataItem.new(other_path)
|
10
|
-
}.to raise_error("File not found at path '#{other_path}'")
|
11
|
-
end
|
12
|
-
|
13
|
-
it "properly saves the path" do
|
14
|
-
res = Deliver::MetadataItem.new(path)
|
15
|
-
expect(res.path).to eq(path)
|
16
|
-
end
|
17
|
-
end
|
18
|
-
|
19
|
-
describe "after init" do
|
20
|
-
before do
|
21
|
-
@item = Deliver::MetadataItem.new(path)
|
22
|
-
@doc = Nokogiri::XML(File.read("./spec/fixtures/example1.itmsp/metadata.xml"))
|
23
|
-
end
|
24
|
-
|
25
|
-
describe "#create_xml_node" do
|
26
|
-
it "properly creates a valid nokogiri xml node" do
|
27
|
-
node = @item.create_xml_node(@doc)
|
28
|
-
expect(node.children.first.content).to eq(File.size(path).to_s)
|
29
|
-
expect(node.children[1].content).to eq("c85dd7b9040bdf34e844d26a144707ab.png")
|
30
|
-
expect(node.children.last['type']).to eq("md5")
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
34
|
-
|
35
|
-
end
|
36
|
-
end
|
@@ -1,40 +0,0 @@
|
|
1
|
-
module Deliver
|
2
|
-
|
3
|
-
class ItunesTransporter
|
4
|
-
|
5
|
-
def self.set_mock_file(file_name)
|
6
|
-
raise "File #{file_name} not found" unless File.exists?file_name
|
7
|
-
@@mocking_file = [] unless defined?@@mocking_file
|
8
|
-
@@mocking_file << file_name
|
9
|
-
end
|
10
|
-
|
11
|
-
def self.clear_mock_files
|
12
|
-
@@mocking_file = []
|
13
|
-
end
|
14
|
-
|
15
|
-
private
|
16
|
-
def execute_transporter(command)
|
17
|
-
current = @@mocking_file.shift if defined?@@mocking_file and @@mocking_file
|
18
|
-
raise "You have to set a mock file for this test!" unless defined?current and current
|
19
|
-
|
20
|
-
@errors = []
|
21
|
-
@warnings = []
|
22
|
-
|
23
|
-
File.readlines(current).each do |line|
|
24
|
-
parse_line(line)
|
25
|
-
end
|
26
|
-
|
27
|
-
if @errors.count > 0
|
28
|
-
Helper.log.debug(caller)
|
29
|
-
raise TransporterTransferError.new(@errors.join("\n"))
|
30
|
-
end
|
31
|
-
|
32
|
-
if @warnings.count > 0
|
33
|
-
Helper.log.warn(@warnings.join("\n"))
|
34
|
-
end
|
35
|
-
|
36
|
-
true
|
37
|
-
end
|
38
|
-
|
39
|
-
end
|
40
|
-
end
|
data/spec/mocking/webmocking.rb
DELETED
@@ -1,31 +0,0 @@
|
|
1
|
-
WebMock.disable_net_connect!(:allow => 'codeclimate.com')
|
2
|
-
|
3
|
-
# iTunes Lookup API
|
4
|
-
RSpec.configure do |config|
|
5
|
-
config.before(:each) do
|
6
|
-
|
7
|
-
# iTunes Lookup API by Apple ID
|
8
|
-
["invalid", "", 0, '284882215'].each do |current|
|
9
|
-
stub_request(:get, "https://itunes.apple.com/lookup?id=#{current.to_s}").
|
10
|
-
with(:headers => {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent'=>'Ruby'}).
|
11
|
-
to_return(:status => 200, :body => File.read("spec/responses/itunesLookup-#{current.to_s}.json"), :headers => {})
|
12
|
-
|
13
|
-
# iTunes Lookup API by App Identifier
|
14
|
-
stub_request(:get, "https://itunes.apple.com/lookup?bundleId=com.facebook.Facebook").
|
15
|
-
with(:headers => {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent'=>'Ruby'}).
|
16
|
-
to_return(:status => 200, :body => File.read("spec/responses/itunesLookup-com.facebook.Facebook.json"), :headers => {})
|
17
|
-
|
18
|
-
stub_request(:get, "https://itunes.apple.com/lookup?bundleId=at.felixkrause.iTanky").
|
19
|
-
with(:headers => {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent'=>'Ruby'}).
|
20
|
-
to_return(:status => 200, :body => File.read("spec/responses/itunesLookup-at.felixkrause.iTanky.json"), :headers => {})
|
21
|
-
|
22
|
-
stub_request(:get, "https://itunes.apple.com/lookup?bundleId=net.sunapps.54").
|
23
|
-
with(:headers => {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent'=>'Ruby'}).
|
24
|
-
to_return(:status => 200, :body => File.read("spec/responses/itunesLookup-com.facebook.Facebook.json"), :headers => {})
|
25
|
-
|
26
|
-
stub_request(:get, "https://itunes.apple.com/lookup?bundleId=net.sunapps.invalid").
|
27
|
-
with(:headers => {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent'=>'Ruby'}).
|
28
|
-
to_return(:status => 200, :body => File.read("spec/responses/itunesLookup-net.sunapps.invalid.json"), :headers => {})
|
29
|
-
end
|
30
|
-
end
|
31
|
-
end
|