xcode-install-citrus 2.5.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.
- checksums.yaml +7 -0
- data/.circleci/config.yml +33 -0
- data/.gitattributes +1 -0
- data/.gitignore +16 -0
- data/.rubocop.yml +21 -0
- data/.rubocop_todo.yml +78 -0
- data/Gemfile +12 -0
- data/LICENSE +22 -0
- data/README.md +198 -0
- data/Rakefile +16 -0
- data/bin/xcversion +12 -0
- data/bin//360/237/216/211 +3 -0
- data/lib/xcode/install.rb +761 -0
- data/lib/xcode/install/cleanup.rb +14 -0
- data/lib/xcode/install/cli.rb +30 -0
- data/lib/xcode/install/command.rb +32 -0
- data/lib/xcode/install/install.rb +55 -0
- data/lib/xcode/install/installed.rb +24 -0
- data/lib/xcode/install/list.rb +17 -0
- data/lib/xcode/install/select.rb +36 -0
- data/lib/xcode/install/selected.rb +12 -0
- data/lib/xcode/install/simulators.rb +65 -0
- data/lib/xcode/install/uninstall.rb +36 -0
- data/lib/xcode/install/update.rb +14 -0
- data/lib/xcode/install/version.rb +3 -0
- data/spec/cli_spec.rb +16 -0
- data/spec/curl_spec.rb +26 -0
- data/spec/fixtures/devcenter/xcode-20150414.html +263 -0
- data/spec/fixtures/devcenter/xcode-20150427.html +263 -0
- data/spec/fixtures/devcenter/xcode-20150508.html +279 -0
- data/spec/fixtures/devcenter/xcode-20150601.html +212 -0
- data/spec/fixtures/devcenter/xcode-20150608.html +315 -0
- data/spec/fixtures/devcenter/xcode-20150624.html +318 -0
- data/spec/fixtures/devcenter/xcode-20150909.html +309 -0
- data/spec/fixtures/devcenter/xcode-20160601.html +1872 -0
- data/spec/fixtures/devcenter/xcode-20160705-alt.html +317 -0
- data/spec/fixtures/devcenter/xcode-20160705.html +1909 -0
- data/spec/fixtures/devcenter/xcode-20160922.html +878 -0
- data/spec/fixtures/devcenter/xcode-20161024.html +663 -0
- data/spec/fixtures/hdiutil.plist +31 -0
- data/spec/fixtures/mail-verify.html +222 -0
- data/spec/fixtures/not_registered_as_developer.json +11 -0
- data/spec/fixtures/xcode.json +1 -0
- data/spec/fixtures/xcode_63.json +46 -0
- data/spec/fixtures/yolo.json +1 -0
- data/spec/install_spec.rb +62 -0
- data/spec/installed_spec.rb +19 -0
- data/spec/installer_spec.rb +101 -0
- data/spec/json_spec.rb +32 -0
- data/spec/list_spec.rb +57 -0
- data/spec/prerelease_spec.rb +108 -0
- data/spec/spec_helper.rb +16 -0
- data/spec/uninstall_spec.rb +12 -0
- data/xcode-install.gemspec +32 -0
- metadata +195 -0
@@ -0,0 +1,31 @@
|
|
1
|
+
<plist version="1.0">
|
2
|
+
<dict>
|
3
|
+
<key>system-entities</key>
|
4
|
+
<array>
|
5
|
+
<dict>
|
6
|
+
<key>content-hint</key>
|
7
|
+
<string>GUID_partition_scheme</string>
|
8
|
+
<key>dev-entry</key>
|
9
|
+
<string>/dev/disk2</string>
|
10
|
+
<key>potentially-mountable</key>
|
11
|
+
<false/>
|
12
|
+
<key>unmapped-content-hint</key>
|
13
|
+
<string>GUID_partition_scheme</string>
|
14
|
+
</dict>
|
15
|
+
<dict>
|
16
|
+
<key>content-hint</key>
|
17
|
+
<string>Apple_HFS</string>
|
18
|
+
<key>dev-entry</key>
|
19
|
+
<string>/dev/disk2s1</string>
|
20
|
+
<key>mount-point</key>
|
21
|
+
<string>/Volumes/XcodeME</string>
|
22
|
+
<key>potentially-mountable</key>
|
23
|
+
<true/>
|
24
|
+
<key>unmapped-content-hint</key>
|
25
|
+
<string>48465300-0000-11AA-AA11-00306543ECAC</string>
|
26
|
+
<key>volume-kind</key>
|
27
|
+
<string>hfs</string>
|
28
|
+
</dict>
|
29
|
+
</array>
|
30
|
+
</dict>
|
31
|
+
</plist>
|
@@ -0,0 +1,222 @@
|
|
1
|
+
|
2
|
+
<!DOCTYPE html>
|
3
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
4
|
+
<head>
|
5
|
+
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
6
|
+
<meta name="Author" content="Apple Inc." />
|
7
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
8
|
+
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7, IE=9">
|
9
|
+
<link rel="shortcut icon" href="/favicon.ico" />
|
10
|
+
<link rel="icon" href="/favicon.ico" />
|
11
|
+
<link rel="mask-icon" href="/apple-logo.svg" color="#333333">
|
12
|
+
|
13
|
+
<link rel="stylesheet" href="/assets/styles/globalnav.css" type="text/css" />
|
14
|
+
<link rel="stylesheet" href="/assets/styles/global.css" type="text/css" />
|
15
|
+
|
16
|
+
<script src="https://devimages.apple.com.edgekey.net/assets/scripts/lib/jquery/jquery-1.11.0.min.js"></script>
|
17
|
+
<script src="https://devimages.apple.com.edgekey.net/assets/scripts/lib/jquery/jquery.retinate.js" type="text/javascript" charset="utf-8"></script>
|
18
|
+
<!--[if lt IE 9]>
|
19
|
+
<link rel="stylesheet" href="/assets/styles/oldie.css" type="text/css" />
|
20
|
+
<script src="/assets/scripts/html5.js"></script>
|
21
|
+
<![endif]-->
|
22
|
+
<script src="/assets/scripts/lg-search.js"></script>
|
23
|
+
<script src="/assets/scripts/global.js"></script>
|
24
|
+
|
25
|
+
<link rel="stylesheet" href="https://www.apple.com/wss/fonts?family=Myriad+Set+Pro&v=2" type="text/css" />
|
26
|
+
|
27
|
+
<title>Verify Your Email Address - Apple Developer</title>
|
28
|
+
<meta name="omni_page" content="" />
|
29
|
+
<meta name="robots" content="noindex, nofollow">
|
30
|
+
<style>
|
31
|
+
.subnav ul li a {
|
32
|
+
color: #0088cc !important;
|
33
|
+
}
|
34
|
+
.subnav ul li a:hover {
|
35
|
+
text-decoration: underline;
|
36
|
+
}
|
37
|
+
</style>
|
38
|
+
</head>
|
39
|
+
<body>
|
40
|
+
<nav id="globalheader" role="navigation" aria-label="Global Navigation">
|
41
|
+
<div id="gh-content" class="gh-content">
|
42
|
+
<ul class="gh-menu">
|
43
|
+
<li id="gh-menu-icon-toggle" class="gh-menu-icon gh-menu-icon-toggle enhance">
|
44
|
+
<button id="gh-svg-icons" class="gh-svg-wrapper">
|
45
|
+
<span class="text-replace">Menu</span>
|
46
|
+
<svg x="0px" y="0px" width="100%" viewBox="0 0 96 96" class="gh-svg gh-svg-top" enable-background="new 0 0 96 96"><rect width="32" height="4" x="32" y="46" class="gh-svg-rect gh-svg-rect-top"></rect></svg>
|
47
|
+
<svg x="0px" y="0px" width="100%" viewBox="0 0 96 96" class="gh-svg gh-svg-bottom" enable-background="new 0 0 96 96"><rect width="32" height="4" x="32" y="46" class="gh-svg-rect gh-svg-rect-bottom"></rect></svg>
|
48
|
+
</button>
|
49
|
+
</li>
|
50
|
+
<li id="gh-menu-icon-home" class="gh-menu-icon gh-menu-icon-home">
|
51
|
+
<a href="/">
|
52
|
+
<span class="text-replace">Apple Developer</span>
|
53
|
+
</a>
|
54
|
+
</li>
|
55
|
+
</ul>
|
56
|
+
<div class="gh-nav">
|
57
|
+
<div class="gh-nav-view">
|
58
|
+
<ul class="gh-nav-list">
|
59
|
+
|
60
|
+
<li class="gh-tab gh-nav-developer" data-hires="true"><a class="gh-tab-link" href="/"><span class="text-replace">Apple Developer</span></a></li>
|
61
|
+
<li class="gh-tab gh-nav-technologies"><a class="gh-tab-link" href="/platforms/">Platforms</a></li>
|
62
|
+
<li class="gh-tab gh-nav-resources"><a class="gh-tab-link" href="/resources/">Resources</a></li>
|
63
|
+
<li class="gh-tab gh-nav-programs"><a class="gh-tab-link" href="/programs/">Program</a></li>
|
64
|
+
<li class="gh-tab gh-nav-support"><a class="gh-tab-link" href="/support/">Support</a></li>
|
65
|
+
<li class="gh-tab gh-nav-account">
|
66
|
+
<a class="gh-tab-link gh-account-profile" href="/account/">Account</a>
|
67
|
+
</li>
|
68
|
+
<li class="gh-tab gh-nav-search">
|
69
|
+
|
70
|
+
<div id="gh-search" class="gh-search" role="search">
|
71
|
+
<form action="/search/index.php" method="get" class="gh-search-form" id="gh-search-form" role="search">
|
72
|
+
|
73
|
+
<div class="gh-search-input-wrapper">
|
74
|
+
<label for="gh-search-input" class="text-replace">Search Apple Developer</label>
|
75
|
+
<input type="text" name="q" id="gh-search-input" class="augmented gh-search-input" placeholder="Search Apple Developer" autocomplete="off" autocorrect="off" autocapitalize="off">
|
76
|
+
</div>
|
77
|
+
|
78
|
+
<button disabled type="submit" id="gh-search-submit" class="gh-search-submit gh-search-magnify"><span class="text-replace">Search Apple Developer</span></button>
|
79
|
+
<button disabled type="reset" id="gh-search-reset" class="gh-search-reset"><span class="text-replace">Reset</span></button>
|
80
|
+
|
81
|
+
</form>
|
82
|
+
</div>
|
83
|
+
|
84
|
+
<a class="gh-search-magnify" href="/search/"><span class="text-replace">Search Apple Developer</span></a>
|
85
|
+
|
86
|
+
</li>
|
87
|
+
</ul>
|
88
|
+
</div>
|
89
|
+
</div>
|
90
|
+
</div>
|
91
|
+
</nav>
|
92
|
+
|
93
|
+
<div id="top">
|
94
|
+
<!-- SiteCatalyst code version: H.8. Copyright 1997-2006 Omniture, Inc. -->
|
95
|
+
<script type="text/javascript">
|
96
|
+
/* RSID: */
|
97
|
+
var s_account="appleglobal,appleusdeveloper"
|
98
|
+
</script>
|
99
|
+
|
100
|
+
<script type="text/javascript" src="https://www.apple.com/metrics/scripts/s_code_h.js"></script>
|
101
|
+
<script type="text/javascript">
|
102
|
+
s.pageName= AC && AC.Tracking && AC.Tracking.pageName();
|
103
|
+
s.channel="www.us.developer"
|
104
|
+
|
105
|
+
/************* DO NOT ALTER ANYTHING BELOW THIS LINE ! **************/
|
106
|
+
var s_code=s.t();if(s_code)document.write(s_code)</script>
|
107
|
+
<!-- End SiteCatalyst code version: H.8. -->
|
108
|
+
</div>
|
109
|
+
<nav class="subnav">
|
110
|
+
<ul>
|
111
|
+
<li class="not-link">Michael Ruhl</li>
|
112
|
+
<li class="not-link"> | </li>
|
113
|
+
<li><a href="/logout/?return=%2F" class="sign-out">Sign Out</a></li>
|
114
|
+
</ul>
|
115
|
+
</nav>
|
116
|
+
|
117
|
+
<section class="grid">
|
118
|
+
<section class="row padding-top padding-bottom">
|
119
|
+
<section class="col-100 text-center">
|
120
|
+
|
121
|
+
<h2>Verify Your Email Address</h2>
|
122
|
+
<p>Your Apple ID cannot be used until your email address has been verified. <br>To verify your email address, please visit
|
123
|
+
<a class="return-link" href="https://appleid.apple.com/cgi-bin/WebObjects/MyAppleId.woa/wa/directToSignIn?appId=632">My Apple ID</a>.
|
124
|
+
</p>
|
125
|
+
|
126
|
+
<p><a class="button-blue return-link" href="https://appleid.apple.com/cgi-bin/WebObjects/MyAppleId.woa/wa/directToSignIn?appId=632">Verify Now</a></p>
|
127
|
+
|
128
|
+
</section>
|
129
|
+
</section>
|
130
|
+
</section>
|
131
|
+
|
132
|
+
<footer id="globalfooter" role="contentinfo">
|
133
|
+
<nav class="footer-breadory">
|
134
|
+
<a href="/" class="home breadcrumbs-home"><span aria-hidden="true"></span><span class="breadcrumbs-home-label">Developer</span></a>
|
135
|
+
<section class="breadcrumbs">
|
136
|
+
<ol class="breadcrumbs-list">
|
137
|
+
<li>Verify Your Email Address</li>
|
138
|
+
</ol>
|
139
|
+
</section>
|
140
|
+
<div id="directorynav" class="directorynav">
|
141
|
+
<div id="dn-cola" class="column">
|
142
|
+
<h3><a href="/platforms/">Platforms</a></h3>
|
143
|
+
<ul>
|
144
|
+
<li><a href="/ios/">iOS</a></li>
|
145
|
+
<li><a href="/osx/">OS X</a></li>
|
146
|
+
<li><a href="/watchos/">watchOS</a></li>
|
147
|
+
<li><a href="/tvos/">tvOS</a></li>
|
148
|
+
</ul>
|
149
|
+
<h3><a href="/resources/">Tools</a></h3>
|
150
|
+
<ul>
|
151
|
+
<li><a href="/xcode/">Xcode</a></li>
|
152
|
+
<li><a href="/swift/">Swift</a></li>
|
153
|
+
</ul>
|
154
|
+
</div>
|
155
|
+
<div id="dn-colb" class="column">
|
156
|
+
<h3><a href="/resources/">Resources</a></h3>
|
157
|
+
<ul>
|
158
|
+
<li><a href="/library/">Documentation</a></li>
|
159
|
+
<li><a href="/videos/">Videos</a></li>
|
160
|
+
<li><a href="https://forums.developer.apple.com/">Forums</a></li>
|
161
|
+
<li><a href="/app-store/">App Store</a></li>
|
162
|
+
<li><a href="/safari/">Safari and Web</a></li>
|
163
|
+
<li><a href="/education/">Education</a></li>
|
164
|
+
<li><a href="/enterprise/">Enterprise</a></li>
|
165
|
+
</ul>
|
166
|
+
</div>
|
167
|
+
<div id="dn-colc" class="column">
|
168
|
+
<h3><a href="/programs/">Programs</a></h3>
|
169
|
+
<ul>
|
170
|
+
<li><a href="/programs/">Developer Program</a></li>
|
171
|
+
<li><a href="/programs/enterprise/">Enterprise Program</a></li>
|
172
|
+
<li><a href="/programs/ios/university/">iOS University Program</a></li>
|
173
|
+
<li><a href="/programs/mfi/">MFi Program</a></li>
|
174
|
+
</ul>
|
175
|
+
</div>
|
176
|
+
<div id="dn-cold" class="column">
|
177
|
+
<h3><a href="/support/">Support</a></h3>
|
178
|
+
<ul>
|
179
|
+
<li><a href="/support/development/">Development</a></li>
|
180
|
+
<li><a href="/support/distribution/">Distribution</a></li>
|
181
|
+
<li><a href="/support/membership/">Membership</a></li>
|
182
|
+
<li><a href="/system-status/">System Status</a></li>
|
183
|
+
</ul>
|
184
|
+
</div>
|
185
|
+
<div id="dn-cole" class="column">
|
186
|
+
<h3><a href="/account/">Account</a></h3>
|
187
|
+
<ul>
|
188
|
+
<li><a href="/account/">Developer Account</a></li>
|
189
|
+
<li><a href="https://developer.apple.com/go/?id=certificates-ids-profiles">Certificates, IDs & Profiles</a></li>
|
190
|
+
<li><a href="https://itunesconnect.apple.com">iTunes Connect</a></li>
|
191
|
+
<li><a href="/terms/">License Agreements</a></li>
|
192
|
+
</ul>
|
193
|
+
</div>
|
194
|
+
</div>
|
195
|
+
|
196
|
+
</nav>
|
197
|
+
<ul class="gf-links piped footer-links">
|
198
|
+
<li><a href="/news/" class="first">News & Updates</a></li>
|
199
|
+
<li><a href="/bug-reporting/">Report Bugs</a></li>
|
200
|
+
<li><a href="/contact/">Contact Us</a></li>
|
201
|
+
</ul>
|
202
|
+
|
203
|
+
<div class="gf-sosumi footer-sosumi">
|
204
|
+
<p>Copyright © 2016 Apple Inc. All rights reserved.</p>
|
205
|
+
<ul class="piped">
|
206
|
+
<li><a href="http://www.apple.com/legal/internet-services/terms/site.html" class="first">Terms of Use</a></li>
|
207
|
+
<li><a href="http://www.apple.com/privacy/privacy-policy/">Privacy Policy</a></li>
|
208
|
+
</ul>
|
209
|
+
</div>
|
210
|
+
|
211
|
+
<!--<div id="gf-links piped footer-links">
|
212
|
+
<ul>
|
213
|
+
<li><a href="/cn/" title="Simplified Chinese">简体中文</a></li>
|
214
|
+
<li><a href="/jp/" title="Japanese">日本語</a></li>
|
215
|
+
<li><a href="/kr/" title="Korean">한국어</a></li>
|
216
|
+
</ul>
|
217
|
+
</div>-->
|
218
|
+
|
219
|
+
</footer><!-- globalfooter -->
|
220
|
+
|
221
|
+
</body>
|
222
|
+
</html>
|
@@ -0,0 +1,11 @@
|
|
1
|
+
{
|
2
|
+
"responseId": "1030f934-1897-4308-a0e4-fb44a4355ae9",
|
3
|
+
"resultCode": 2100,
|
4
|
+
"resultString": "You are not registered as an Apple Developer. Please visit Apple Developer Registration. https://developer.apple.com/register/",
|
5
|
+
"userString": "You are not registered as an Apple Developer. Please visit Apple Developer Registration. https://developer.apple.com/register/",
|
6
|
+
"creationTimestamp": "2017-07-06T12:33:03Z",
|
7
|
+
"protocolVersion": "QH65B2",
|
8
|
+
"userLocale": "en_US",
|
9
|
+
"requestUrl": "https://developer.apple.com/services-account/QH65B2/downloadws/listDownloads.action",
|
10
|
+
"httpCode": 200
|
11
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"active":true,"availableInMemberSite":true,"categories":[{"active":null,"dateCreated":1052825460000,"dateModified":1079108316000,"enabled":true,"id":187,"name":"Developer Tools","sortOrder":28}],"dateAvailable":null,"dateCreated":1413472373000,"dateDisabled":null,"dateModified":1413472373000,"description":"This package enables UNIX-style development via Terminal by installing command line developer tools, as well as Mac OS X SDK frameworks and headers. Many useful tools are included, such as the Apple LLVM compiler, linker, and Make. If you use Xcode, these tools are also embedded within the Xcode IDE.","files":[{"active":true,"dateCreated":1413472373000,"dateModified":1413472373000,"fileSize":107698152,"format":{"active":null,"dateCreated":1066327569000,"dateModified":null,"description":"Disk Image","extension":".dmg","id":12},"id":33285,"name":"Command Line Tools for OSX 10.9 for Xcode 6.1","remotePath":"/Developer_Tools/command_line_tools_os_x_10.9_for_xcode__xcode_6.1/command_line_tools_for_osx_10.9_for_xcode_6.1.dmg","sortOrder":1,"state":"ENABLED"}],"id":21958,"name":"Command Line Tools (OS X 10.9) for Xcode - Xcode 6.1","prerelease":false,"releasedSeed":true,"state":"ENABLED"}
|
@@ -0,0 +1,46 @@
|
|
1
|
+
{
|
2
|
+
"active": true,
|
3
|
+
"availableInMemberSite": true,
|
4
|
+
"categories": [
|
5
|
+
{
|
6
|
+
"active": null,
|
7
|
+
"dateCreated": 1052825460000,
|
8
|
+
"dateModified": 1079108316000,
|
9
|
+
"enabled": true,
|
10
|
+
"id": 187,
|
11
|
+
"name": "Developer Tools",
|
12
|
+
"sortOrder": 28
|
13
|
+
}
|
14
|
+
],
|
15
|
+
"dateAvailable": null,
|
16
|
+
"dateCreated": 1425695047000,
|
17
|
+
"dateDisabled": null,
|
18
|
+
"dateModified": 1425943753000,
|
19
|
+
"description": "This is the complete Xcode developer toolset for Mac, iPhone, and iPad. It includes the Xcode IDE, iOS Simulator, and all required tools and frameworks for building OS X and iOS apps.",
|
20
|
+
"files": [
|
21
|
+
{
|
22
|
+
"active": true,
|
23
|
+
"dateCreated": 1425696402000,
|
24
|
+
"dateModified": 1425929405000,
|
25
|
+
"fileSize": 2778059898,
|
26
|
+
"format": {
|
27
|
+
"active": null,
|
28
|
+
"dateCreated": 1066327569000,
|
29
|
+
"dateModified": null,
|
30
|
+
"description": "Disk Image",
|
31
|
+
"extension": ".dmg",
|
32
|
+
"id": 12
|
33
|
+
},
|
34
|
+
"id": 35240,
|
35
|
+
"name": "Xcode 6.3",
|
36
|
+
"remotePath": "/Developer_Tools/Xcode_6.2/Xcode_6.2.dmg",
|
37
|
+
"sortOrder": null,
|
38
|
+
"state": "ENABLED"
|
39
|
+
}
|
40
|
+
],
|
41
|
+
"id": 23600,
|
42
|
+
"name": "Xcode 6.3",
|
43
|
+
"prerelease": false,
|
44
|
+
"releasedSeed": true,
|
45
|
+
"state": "ENABLED"
|
46
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
{ "resultCode": 0, "downloads" :[{"active":true,"availableInMemberSite":true,"categories":[{"active":null,"dateCreated":1052825460000,"dateModified":1079108316000,"enabled":true,"id":187,"name":"Developer Tools","sortOrder":28},{"active":null,"dateCreated":4094323200000,"dateModified":1330344208000,"enabled":true,"id":14,"name":"OS X","sortOrder":70}],"dateAvailable":null,"dateCreated":1427400482000,"dateDisabled":null,"dateModified":1427749027000,"description":"This package contains development & debug versions of the OS X kernel and many I/O Kit families for use with LLDB remote (two-machine) kernel debugging. These files contain full symbolic information, unlike the equivalent files in a normal OS X installation. Also included are LLDB macros useful for kernel debugging and DEVELOPMENT (for every day use) and DEBUG (for much more error checking) kernels built with more assertions and fewer compiler optimizations.","files":[{"active":true,"dateCreated":1427399968000,"dateModified":1427749027000,"fileSize":92152909,"format":{"active":null,"dateCreated":1066327569000,"dateModified":null,"description":"Disk Image","extension":".dmg","id":12},"id":36000,"name":"kernel_debug_kit_10.10.2.14C1514","remotePath":"/Developer_Tools/Kernel_Debug_Kit_10.10.2_build_14C1514/kernel_debug_kit_10.10.2.14C1514.dmg","sortOrder":null,"state":"ENABLED"}],"id":24120,"name":"Kernel Debug Kit 10.10.2 build 14C1514","prerelease":false,"releasedSeed":true,"state":"ENABLED"},{"active":true,"availableInMemberSite":true,"categories":[{"active":null,"dateCreated":1052825460000,"dateModified":1079108316000,"enabled":true,"id":187,"name":"Developer Tools","sortOrder":28}],"dateAvailable":null,"dateCreated":1425695047000,"dateDisabled":null,"dateModified":1425943753000,"description":"This is the complete Xcode developer toolset for Mac, iPhone, and iPad. It includes the Xcode IDE, iOS Simulator, and all required tools and frameworks for building OS X and iOS apps.","files":[{"active":true,"dateCreated":1425696402000,"dateModified":1425929405000,"fileSize":2778059898,"format":{"active":null,"dateCreated":1066327569000,"dateModified":null,"description":"Disk Image","extension":".dmg","id":12},"id":35240,"name":"Xcode 6.2","remotePath":"/Developer_Tools/Xcode_6.2/Xcode_6.2.dmg","sortOrder":null,"state":"ENABLED"}],"id":23600,"name":"Xcode 6.2","prerelease":false,"releasedSeed":true,"state":"ENABLED"},{"active":true,"availableInMemberSite":true,"categories":[{"active":null,"dateCreated":1052825460000,"dateModified":1079108316000,"enabled":true,"id":187,"name":"Developer Tools","sortOrder":28}],"dateAvailable":null,"dateCreated":1425715291000,"dateDisabled":null,"dateModified":1425929196000,"description":"This package enables UNIX-style development via Terminal by installing command line developer tools, as well as Mac OS X SDK frameworks and headers. Many useful tools are included, such as the Apple LLVM compiler, linker, and Make. If you use Xcode, these tools are also embedded within the Xcode IDE.","files":[{"active":true,"dateCreated":1425715250000,"dateModified":1425929196000,"fileSize":107722916,"format":{"active":null,"dateCreated":1066327569000,"dateModified":null,"description":"Disk Image","extension":".dmg","id":12},"id":35261,"name":"commandlinetoolsosx10.9forxcode6.2","remotePath":"/Developer_Tools/Command_Line_Tools_OS_X_10.9_for_Xcode__Xcode_6.2/commandlinetoolsosx10.9forxcode6.2.dmg","sortOrder":null,"state":"ENABLED"}],"id":23621,"name":"Command Line Tools (OS X 10.9) for Xcode - Xcode 6.2","prerelease":false,"releasedSeed":true,"state":"ENABLED"},{"active":true,"availableInMemberSite":true,"categories":[{"active":null,"dateCreated":1052825460000,"dateModified":1079108316000,"enabled":true,"id":187,"name":"Developer Tools","sortOrder":28}],"dateAvailable":null,"dateCreated":1425715155000,"dateDisabled":null,"dateModified":1425929191000,"description":"This package enables UNIX-style development via Terminal by installing command line developer tools, as well as Mac OS X SDK frameworks and headers. Many useful tools are included, such as the Apple LLVM compiler, linker, and Make. If you use Xcode, these tools are also embedded within the Xcode IDE.","files":[{"active":true,"dateCreated":1425715007000,"dateModified":1425929191000,"fileSize":185973322,"format":{"active":null,"dateCreated":1066327569000,"dateModified":null,"description":"Disk Image","extension":".dmg","id":12},"id":35260,"name":"commandlinetoolsosx10.10forxcode6.2","remotePath":"/Developer_Tools/Command_Line_Tools_OS_X_10.10_for_Xcode__Xcode_6.2/commandlinetoolsosx10.10forxcode6.2.dmg","sortOrder":null,"state":"ENABLED"}],"id":23620,"name":"Command Line Tools (OS X 10.10) for Xcode - Xcode 6.2","prerelease":false,"releasedSeed":true,"state":"ENABLED"},{"active":true,"availableInMemberSite":true,"categories":[{"active":null,"dateCreated":1056547200000,"dateModified":1079108316000,"enabled":true,"id":247,"name":"Applications","sortOrder":5}],"dateAvailable":null,"dateCreated":1422579460000,"dateDisabled":null,"dateModified":1422580781000,"description":"This SDK contains the files necessary for iTunes Visual Plug-in development for iTunes 10.4 or later, and includes documentation and sample code. Specifically, this SDK contains the files \"iTunesAPI.h\", \"iTunesVisualAPI.h\", and \"iTunesAPI.cpp\" that developers will use to develop their own plug-ins. The sample code is a fully functional Visual Plug-in developed for Mac OS X 10.5.8 and later with Xcode 3.2 and for Windows XP SP3 and later with Microsoft Visual Studio 2013. Both 32-bit and 64-bit versions of iTunes are supported.","files":[{"active":true,"dateCreated":1422579577000,"dateModified":1422580781000,"fileSize":243268,"format":{"active":null,"dateCreated":1079049600000,"dateModified":null,"description":"Zip","extension":".zip","id":5},"id":34442,"name":"iTunes Visual Plug-ins SDK","remotePath":"/Applications/itunes_visual_plugins_sdk/iTunesVisualPlugInsSDK2_0_1.zip","sortOrder":null,"state":"ENABLED"}],"id":22900,"name":"iTunes Visual Plug-ins SDK","prerelease":false,"releasedSeed":true,"state":"ENABLED"},{"active":true,"availableInMemberSite":true,"categories":[{"active":null,"dateCreated":4094323200000,"dateModified":1330344208000,"enabled":true,"id":14,"name":"OS X","sortOrder":70}],"dateAvailable":null,"dateCreated":1422473743000,"dateDisabled":null,"dateModified":1422568829000,"description":"OS X Yosemite 10.10.2 is an update to OS X Yosemite 10.10.","files":[{"active":true,"dateCreated":1422473537000,"dateModified":1422568829000,"fileSize":841144579,"format":{"active":null,"dateCreated":1066327569000,"dateModified":null,"description":"Disk Image","extension":".dmg","id":12},"id":34421,"name":"OS X Yosemite 10.10.2 build 14C109 Delta Update","remotePath":"/OS_X/OS_X_Yosemite_10.10.2_build_14C109/OSXUpdCombo10.10.2.dmg","sortOrder":null,"state":"ENABLED"},{"active":true,"dateCreated":1422473505000,"dateModified":1422568829000,"fileSize":554331370,"format":{"active":null,"dateCreated":1066327569000,"dateModified":null,"description":"Disk Image","extension":".dmg","id":12},"id":34420,"name":"OS X Yosemite 10.10.2 build 14C109 Combo Update","remotePath":"/OS_X/OS_X_Yosemite_10.10.2_build_14C109/osxupd10.10.2.dmg","sortOrder":null,"state":"ENABLED"}],"id":22880,"name":"OS X Yosemite 10.10.2 build 14C109","prerelease":false,"releasedSeed":true,"state":"ENABLED"},{"active":true,"availableInMemberSite":true,"categories":[{"active":null,"dateCreated":1056547200000,"dateModified":1079108316000,"enabled":true,"id":247,"name":"Applications","sortOrder":5},{"active":null,"dateCreated":4094323200000,"dateModified":1330344208000,"enabled":true,"id":14,"name":"OS X","sortOrder":70}],"dateAvailable":null,"dateCreated":1421366600000,"dateDisabled":null,"dateModified":1421366644000,"description":"This is a pre-release build of Apple Remote Desktop 3.8.","files":[{"active":true,"dateCreated":1421366601000,"dateModified":1421366645000,"fileSize":7639949,"format":{"active":null,"dateCreated":1066327569000,"dateModified":null,"description":"Disk Image","extension":".dmg","id":12},"id":34327,"name":"Apple Remote Desktop 3.8.0 Client Manual","remotePath":"/Applications/Apple_Remote_Desktop_3.8_version_3.7.9.2_build_380A78_Seed/Apple_Remote_Desktop_3.8.0_Client_Manual.dmg","sortOrder":null,"state":"ENABLED"},{"active":true,"dateCreated":1421366600000,"dateModified":1421366645000,"fileSize":49785,"format":{"active":null,"dateCreated":1075908502000,"dateModified":null,"description":"PDF","extension":".pdf","id":2},"id":34326,"name":"Apple Remote Desktop 3.8 Seed 4 Release Notes","remotePath":"/Applications/Apple_Remote_Desktop_3.8_version_3.7.9.2_build_380A78_Seed/Apple_Remote_Desktop_3.8_Seed_4_Release_Notes.pdf","sortOrder":null,"state":"ENABLED"},{"active":true,"dateCreated":1421366601000,"dateModified":1421366645000,"fileSize":14190677,"format":{"active":null,"dateCreated":1066327569000,"dateModified":null,"description":"Disk Image","extension":".dmg","id":12},"id":34328,"name":"Apple Remote Desktop 3.8.0","remotePath":"/Applications/Apple_Remote_Desktop_3.8_version_3.7.9.2_build_380A78_Seed/Apple_Remote_Desktop_3.8.0.dmg","sortOrder":null,"state":"ENABLED"}],"id":22783,"name":"Apple Remote Desktop 3.8 version 3.7.9.2 (build 380A78) Seed","prerelease":true,"releasedSeed":false,"state":"ENABLED"},{"active":true,"availableInMemberSite":true,"categories":[{"active":null,"dateCreated":1052825460000,"dateModified":1079108316000,"enabled":true,"id":187,"name":"Developer Tools","sortOrder":28},{"active":null,"dateCreated":1278517398000,"dateModified":1278517398000,"enabled":true,"id":325,"name":"iOS","sortOrder":50},{"active":null,"dateCreated":4094323200000,"dateModified":1330344208000,"enabled":true,"id":14,"name":"OS X","sortOrder":70}],"dateAvailable":null,"dateCreated":1366217744000,"dateDisabled":null,"dateModified":1421170719000,"description":"Logging profiles used to debug iOS issues. Relevant logs should be included when submitting a bug report.\r\n\r\nFor instructions on how to use these profiles, please visit: https://developer.apple.com/bug-reporting/ios/","files":[{"active":true,"dateCreated":1405430193000,"dateModified":1421170725000,"fileSize":6427,"format":{"active":null,"dateCreated":1262956008000,"dateModified":null,"description":"Mobile Configuration","extension":".mobileconfig","id":26},"id":32847,"name":"Bluetooth Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/bluetoothwirelessproximity.mobileconfig","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403687610000,"dateModified":1421170725000,"fileSize":6858,"format":{"active":null,"dateCreated":1262956008000,"dateModified":null,"description":"Mobile Configuration","extension":".mobileconfig","id":26},"id":32780,"name":"Baseband Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/baseband.mobileconfig","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1411637606000,"dateModified":1421170725000,"fileSize":3434,"format":{"active":null,"dateCreated":1079049600000,"dateModified":null,"description":"Zip","extension":".zip","id":5},"id":33111,"name":"Bonjour Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/discoverydlogging.mobileconfig.zip","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1411637606000,"dateModified":1421170725000,"fileSize":5668,"format":{"active":null,"dateCreated":1262956008000,"dateModified":null,"description":"Mobile Configuration","extension":".mobileconfig","id":26},"id":33110,"name":"Bonjour Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/discoverydlogging.mobileconfig","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1405430193000,"dateModified":1421170725000,"fileSize":3652,"format":{"active":null,"dateCreated":1079049600000,"dateModified":null,"description":"Zip","extension":".zip","id":5},"id":32848,"name":"Bluetooth Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/bluetoothwirelessproximity.mobileconfig.zip","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":5778,"format":{"active":null,"dateCreated":1262956008000,"dateModified":null,"description":"Mobile Configuration","extension":".mobileconfig","id":26},"id":32742,"name":"Multitasking Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/multitasking.mobileconfig","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":3907,"format":{"active":null,"dateCreated":1079049600000,"dateModified":null,"description":"Zip","extension":".zip","id":5},"id":32743,"name":"VPN Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/vpn.mobileconfig.zip","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":5596,"format":{"active":null,"dateCreated":1262956008000,"dateModified":null,"description":"Mobile Configuration","extension":".mobileconfig","id":26},"id":32740,"name":"Mail Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/mail.mobileconfig","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":5114,"format":{"active":null,"dateCreated":1262956008000,"dateModified":null,"description":"Mobile Configuration","extension":".mobileconfig","id":26},"id":32741,"name":"Sync Diagnostics Logging Profile (DA)","remotePath":"/ios/bug_reporter_logging_profiles_ios/dataaccess.mobileconfig","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":3797,"format":{"active":null,"dateCreated":1079049600000,"dateModified":null,"description":"Zip","extension":".zip","id":5},"id":32738,"name":"Mail Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/mail.mobileconfig.zip","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":9082,"format":{"active":null,"dateCreated":1262956008000,"dateModified":null,"description":"Mobile Configuration","extension":".mobileconfig","id":26},"id":32739,"name":"iCloud Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/icloudv2.mobileconfig","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":6778,"format":{"active":null,"dateCreated":1262956008000,"dateModified":null,"description":"Mobile Configuration","extension":".mobileconfig","id":26},"id":32736,"name":"AirTraffic Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/airtraffic.mobileconfig","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":4307,"format":{"active":null,"dateCreated":1079049600000,"dateModified":null,"description":"Zip","extension":".zip","id":5},"id":32737,"name":"Battery Life Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/systemdebugprofileios8.mobileconfig.zip","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":3752,"format":{"active":null,"dateCreated":1079049600000,"dateModified":null,"description":"Zip","extension":".zip","id":5},"id":32750,"name":"Sync Diagnostics Logging Profile (DA)","remotePath":"/ios/bug_reporter_logging_profiles_ios/dataaccess.mobileconfig.zip","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1380098578000,"dateModified":1421170725000,"fileSize":4004,"format":{"active":null,"dateCreated":1079049600000,"dateModified":null,"description":"Zip","extension":".zip","id":5},"id":31962,"name":"In-App Purchase Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/inapppurchaselogging.mobileconfig.zip","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":4495,"format":{"active":null,"dateCreated":1079049600000,"dateModified":null,"description":"Zip","extension":".zip","id":5},"id":32751,"name":"Media Player Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/mediaplayer.mobileconfig.zip","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1380098578000,"dateModified":1421170725000,"fileSize":5935,"format":{"active":null,"dateCreated":1262956008000,"dateModified":null,"description":"Mobile Configuration","extension":".mobileconfig","id":26},"id":31961,"name":"In-App Purchase Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/inapppurchaselogging.mobileconfig","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":8934,"format":{"active":null,"dateCreated":1262956008000,"dateModified":null,"description":"Mobile Configuration","extension":".mobileconfig","id":26},"id":32746,"name":"Media Player Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/mediaplayer.mobileconfig","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":6143,"format":{"active":null,"dateCreated":1262956008000,"dateModified":null,"description":"Mobile Configuration","extension":".mobileconfig","id":26},"id":32747,"name":"Apple Push Notification Services Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/apns.mobileconfig","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":3506,"format":{"active":null,"dateCreated":1079049600000,"dateModified":null,"description":"Zip","extension":".zip","id":5},"id":32745,"name":"AirTraffic Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/airtraffic.mobileconfig.zip","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":4446,"format":{"active":null,"dateCreated":1079049600000,"dateModified":null,"description":"Zip","extension":".zip","id":5},"id":32759,"name":"iAd Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/iad.mobileconfig.zip","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":6651,"format":{"active":null,"dateCreated":1262956008000,"dateModified":null,"description":"Mobile Configuration","extension":".mobileconfig","id":26},"id":32758,"name":"FaceTime Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/facetime.mobileconfig","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":6804,"format":{"active":null,"dateCreated":1262956008000,"dateModified":null,"description":"Mobile Configuration","extension":".mobileconfig","id":26},"id":32757,"name":"Messages Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/imessagev2.mobileconfig","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":5657,"format":{"active":null,"dateCreated":1262956008000,"dateModified":null,"description":"Mobile Configuration","extension":".mobileconfig","id":26},"id":32756,"name":"VPN Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/vpn.mobileconfig","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":7832,"format":{"active":null,"dateCreated":1262956008000,"dateModified":null,"description":"Mobile Configuration","extension":".mobileconfig","id":26},"id":32755,"name":"Battery Life Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/systemdebugprofileios8.mobileconfig","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":7956,"format":{"active":null,"dateCreated":1262956008000,"dateModified":null,"description":"Mobile Configuration","extension":".mobileconfig","id":26},"id":32753,"name":"iAd Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/iad.mobileconfig","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":3270,"format":{"active":null,"dateCreated":1079049600000,"dateModified":null,"description":"Zip","extension":".zip","id":5},"id":32752,"name":"Apple Push Notification Services Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/apns.mobileconfig.zip","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403088258000,"dateModified":1421170725000,"fileSize":28783,"format":{"active":null,"dateCreated":1262956008000,"dateModified":null,"description":"Mobile Configuration","extension":".mobileconfig","id":26},"id":32767,"name":"Wi-Fi Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/wifiv1.mobileconfig","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403088258000,"dateModified":1421170725000,"fileSize":4683,"format":{"active":null,"dateCreated":1079049600000,"dateModified":null,"description":"Zip","extension":".zip","id":5},"id":32766,"name":"Wi-Fi Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/wifiv1.mobileconfig.zip","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403082174000,"dateModified":1421170725000,"fileSize":3714,"format":{"active":null,"dateCreated":1079049600000,"dateModified":null,"description":"Zip","extension":".zip","id":5},"id":32763,"name":"iCloud Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/icloudv2.mobileconfig.zip","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":3874,"format":{"active":null,"dateCreated":1079049600000,"dateModified":null,"description":"Zip","extension":".zip","id":5},"id":32762,"name":"Multitasking Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/multitasking.mobileconfig.zip","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":3953,"format":{"active":null,"dateCreated":1079049600000,"dateModified":null,"description":"Zip","extension":".zip","id":5},"id":32761,"name":"FaceTime Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/facetime.mobileconfig.zip","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1403078049000,"dateModified":1421170725000,"fileSize":4101,"format":{"active":null,"dateCreated":1079049600000,"dateModified":null,"description":"Zip","extension":".zip","id":5},"id":32760,"name":"Messages Logging Profile","remotePath":"/ios/bug_reporter_logging_profiles_ios/imessagev2.mobileconfig.zip","sortOrder":1,"state":"ENABLED"}],"id":21496,"name":"Bug Reporter Logging Profiles (iOS)","prerelease":true,"releasedSeed":false,"state":"ENABLED"},{"active":true,"availableInMemberSite":true,"categories":[{"active":null,"dateCreated":1016127960000,"dateModified":1330344254000,"enabled":true,"id":87,"name":"OS X Server","sortOrder":73}],"dateAvailable":null,"dateCreated":1254751762000,"dateDisabled":null,"dateModified":1420540443000,"description":"This document contains a unlimited-client Serial Number for use in development and testing of Mac OS X Server v10.6 (Snow Leopard Server). The Serial Number expires on Dec 31, 2015.","files":[{"active":true,"dateCreated":1420540443000,"dateModified":1420540443000,"fileSize":4741,"format":{"active":null,"dateCreated":1075908512000,"dateModified":null,"description":"RTF","extension":".rtf","id":8},"id":33491,"name":"Mac OS X Server v10.6 (Snow Leopard Server) Developer Serial Number","remotePath":"/Mac_OS_X_Server/mac_os_x_server_v10.6_snow_leopard_server_developer_serial_number/10.6_snow_leopard_server_developer_sn_dec_31_2015.rtf","sortOrder":1,"state":"ENABLED"}],"id":20499,"name":"Mac OS X Server v10.6 (Snow Leopard Server) Developer Serial Number","prerelease":true,"releasedSeed":false,"state":"ENABLED"},{"active":true,"availableInMemberSite":true,"categories":[{"active":null,"dateCreated":1278517398000,"dateModified":1278517398000,"enabled":true,"id":325,"name":"iOS","sortOrder":50}],"dateAvailable":null,"dateCreated":1373271190000,"dateDisabled":null,"dateModified":1420450733000,"description":"The restorationArchiveTool along with the StateRestorationDebugLogging and StateRestorationDeveloperMode profiles allow you to see what is happening in your state restoration archives.","files":[{"active":true,"dateCreated":1420450732000,"dateModified":1420450733000,"fileSize":6837,"format":{"active":null,"dateCreated":1262956008000,"dateModified":null,"description":"Mobile Configuration","extension":".mobileconfig","id":26},"id":33488,"name":"StateRestoration DeveloperMode","remotePath":"/ios/restorationarchivetool_for_ios_7/staterestoration_developermodev2.mobileconfig","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1373271190000,"dateModified":1420450733000,"fileSize":2323,"format":{"active":null,"dateCreated":1075908512000,"dateModified":null,"description":"RTF","extension":".rtf","id":8},"id":30499,"name":"restorationArchiveTool for iOS 7 Readme","remotePath":"/ios/restorationarchivetool_for_ios_7/restorationarchivetool_for_ios_7_readme.rtf","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1420450732000,"dateModified":1420450733000,"fileSize":4238,"format":{"active":null,"dateCreated":1079049600000,"dateModified":null,"description":"Zip","extension":".zip","id":5},"id":33485,"name":"StateRestoration DebugLogging","remotePath":"/ios/restorationarchivetool_for_ios_7/staterestoration_debugloggingv2.zip","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1373271190000,"dateModified":1420450733000,"fileSize":25576874,"format":{"active":null,"dateCreated":1066327569000,"dateModified":null,"description":"Disk Image","extension":".dmg","id":12},"id":30502,"name":"restorationArchiveTool","remotePath":"/ios/restorationarchivetool_for_ios_7/restorationarchivetool.dmg","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1420450732000,"dateModified":1420450733000,"fileSize":6416,"format":{"active":null,"dateCreated":1262956008000,"dateModified":null,"description":"Mobile Configuration","extension":".mobileconfig","id":26},"id":33487,"name":"StateRestoration DebugLogging","remotePath":"/ios/restorationarchivetool_for_ios_7/staterestoration_debugloggingv2.mobileconfig","sortOrder":1,"state":"ENABLED"},{"active":true,"dateCreated":1420450732000,"dateModified":1420450733000,"fileSize":4216,"format":{"active":null,"dateCreated":1079049600000,"dateModified":null,"description":"Zip","extension":".zip","id":5},"id":33486,"name":"StateRestoration DeveloperMode","remotePath":"/ios/restorationarchivetool_for_ios_7/staterestoration_developermodev2.zip","sortOrder":1,"state":"ENABLED"}],"id":21580,"name":"restorationArchiveTool for iOS 7","prerelease":true,"releasedSeed":false,"state":"ENABLED"},{"active":true,"availableInMemberSite":true,"categories":[{"active":null,"dateCreated":1052825460000,"dateModified":1079108316000,"enabled":true,"id":187,"name":"Developer Tools","sortOrder":28},{"active":null,"dateCreated":1278517398000,"dateModified":1278517398000,"enabled":true,"id":325,"name":"iOS","sortOrder":50},{"active":null,"dateCreated":4094323200000,"dateModified":1330344208000,"enabled":true,"id":14,"name":"OS X","sortOrder":70}],"dateAvailable":null,"dateCreated":1417525719000,"dateDisabled":null,"dateModified":1417527326000,"description":"This is a release version of the complete Xcode developer toolset for Mac, iPhone, iPod touch, and iPad. It includes the iOS 8.1 SDK, OS X 10.10 SDK and OS X 10.9 SDK. Xcode 6.1 requires OS X Yosemite or OS X Mavericks.","files":[{"active":true,"dateCreated":1417525719000,"dateModified":1417527326000,"fileSize":2689510545,"format":{"active":null,"dateCreated":1066327569000,"dateModified":null,"description":"Disk Image","extension":".dmg","id":12},"id":33398,"name":"Xcode 6.1.1","remotePath":"/Developer_Tools/xcode_6.1.1/xcode_6.1.1.dmg","sortOrder":1,"state":"ENABLED"}],"id":21985,"name":"Xcode 6.1.1","prerelease":false,"releasedSeed":true,"state":"ENABLED"},{"active":true,"availableInMemberSite":true,"categories":[{"active":null,"dateCreated":1052825460000,"dateModified":1079108316000,"enabled":true,"id":187,"name":"Developer Tools","sortOrder":28},{"active":null,"dateCreated":1278517398000,"dateModified":1278517398000,"enabled":true,"id":325,"name":"iOS","sortOrder":50},{"active":null,"dateCreated":4094323200000,"dateModified":1330344208000,"enabled":true,"id":14,"name":"OS X","sortOrder":70}],"dateAvailable":null,"dateCreated":1417524906000,"dateDisabled":null,"dateModified":1417527295000,"description":"This package enables UNIX-style development via Terminal by installing command line developer tools, as well as Mac OS X SDK frameworks and headers. Many useful tools are included, such as the Apple LLVM compiler, linker, and Make. If you use Xcode, these tools are also embedded within the Xcode IDE.","files":[{"active":true,"dateCreated":1417524906000,"dateModified":1417527295000,"fileSize":178197787,"format":{"active":null,"dateCreated":1066327569000,"dateModified":null,"description":"Disk Image","extension":".dmg","id":12},"id":33395,"name":"Command Line Tools (OS X 10.10) for Xcode 6.1.1","remotePath":"/Developer_Tools/command_line_tools_os_x_10.10_for_xcode__xcode_6.1.1/commandlinetoolsosx10.10forxcode6.1.1.dmg","sortOrder":1,"state":"ENABLED"}],"id":21983,"name":"Command Line Tools (OS X 10.10) for Xcode - Xcode 6.1.1","prerelease":false,"releasedSeed":true,"state":"ENABLED"},{"active":true,"availableInMemberSite":true,"categories":[{"active":null,"dateCreated":1052825460000,"dateModified":1079108316000,"enabled":true,"id":187,"name":"Developer Tools","sortOrder":28},{"active":null,"dateCreated":1278517398000,"dateModified":1278517398000,"enabled":true,"id":325,"name":"iOS","sortOrder":50},{"active":null,"dateCreated":4094323200000,"dateModified":1330344208000,"enabled":true,"id":14,"name":"OS X","sortOrder":70}],"dateAvailable":null,"dateCreated":1417525291000,"dateDisabled":null,"dateModified":1417527295000,"description":"This package enables UNIX-style development via Terminal by installing command line developer tools, as well as Mac OS X SDK frameworks and headers. Many useful tools are included, such as the Apple LLVM compiler, linker, and Make. If you use Xcode, these tools are also embedded within the Xcode IDE.","files":[{"active":true,"dateCreated":1417525291000,"dateModified":1417527295000,"fileSize":107659811,"format":{"active":null,"dateCreated":1066327569000,"dateModified":null,"description":"Disk Image","extension":".dmg","id":12},"id":33396,"name":"Command Line Tools (OS X 10.9) for Xcode 6.1.1","remotePath":"/Developer_Tools/command_line_tools_os_x_10.9_for_xcode__xcode_6.1.1/commandlinetoolsosx10.9forxcode6.1.1.dmg","sortOrder":1,"state":"ENABLED"}],"id":21984,"name":"Command Line Tools (OS X 10.9) for Xcode - Xcode 6.1.1","prerelease":false,"releasedSeed":true,"state":"ENABLED"},{"active":true,"availableInMemberSite":true,"categories":[{"active":null,"dateCreated":1052825460000,"dateModified":1079108316000,"enabled":true,"id":187,"name":"Developer Tools","sortOrder":28},{"active":null,"dateCreated":4094323200000,"dateModified":1330344208000,"enabled":true,"id":14,"name":"OS X","sortOrder":70}],"dateAvailable":null,"dateCreated":1416317087000,"dateDisabled":null,"dateModified":1416317087000,"description":"This package contains development & debug versions of the OS X kernel and many I/O Kit families for use with LLDB remote (two-machine) kernel debugging. These files contain full symbolic information, unlike the equivalent files in a normal OS X installation. Also included are LLDB macros useful for kernel debugging and DEVELOPMENT (for every day use) and DEBUG (for much more error checking) kernels built with more assertions and fewer compiler optimizations.","files":[{"active":true,"dateCreated":1416317087000,"dateModified":1416317087000,"fileSize":91972340,"format":{"active":null,"dateCreated":1066327569000,"dateModified":null,"description":"Disk Image","extension":".dmg","id":12},"id":33383,"name":"Kernel Debug Kit 10.10.1 build 14B25","remotePath":"/Developer_Tools/kernel_debug_kit_10.10.1_build_14b25/kernel_debug_kit_10.10.1_14b25.dmg","sortOrder":1,"state":"ENABLED"}],"id":21976,"name":"Kernel Debug Kit 10.10.1 build 14B25","prerelease":true,"releasedSeed":false,"state":"ENABLED"},{"active":true,"availableInMemberSite":true,"categories":[{"active":null,"dateCreated":1052825460000,"dateModified":1079108316000,"enabled":true,"id":187,"name":"Developer Tools","sortOrder":28},{"active":null,"dateCreated":4094323200000,"dateModified":1330344208000,"enabled":true,"id":14,"name":"OS X","sortOrder":70}],"dateAvailable":null,"dateCreated":1415816984000,"dateDisabled":null,"dateModified":1415816984000,"description":"The signature check application (\"check-signature\") checks OS X application bundles and installer packages to determine if they are correctly signed for distribution and will pass the default Gatekeeper assessment.","files":[{"active":true,"dateCreated":1415816984000,"dateModified":1415816984000,"fileSize":15979946,"format":{"active":null,"dateCreated":1066327569000,"dateModified":null,"description":"Disk Image","extension":".dmg","id":12},"id":33336,"name":"Signature Check","remotePath":"/Developer_Tools/signaturecheck/signaturecheck.dmg","sortOrder":1,"state":"ENABLED"}],"id":21968,"name":"SignatureCheck","prerelease":true,"releasedSeed":false,"state":"ENABLED"},{"active":true,"availableInMemberSite":true,"categories":[{"active":null,"dateCreated":1052825460000,"dateModified":1079108316000,"enabled":true,"id":187,"name":"Developer Tools","sortOrder":28},{"active":null,"dateCreated":4094323200000,"dateModified":1330344208000,"enabled":true,"id":14,"name":"OS X","sortOrder":70}],"dateAvailable":null,"dateCreated":1243945080000,"dateDisabled":null,"dateModified":1414772063000,"description":"CrashWrangler is a set of tools for OS X to determine if a crash is an exploitable security issue, and if a crash is a duplicate of another known crash. The exploitability diagnosis is intended to be used when you have a reproducible test case, but the duplicate detection can be run on any crash log.","files":[{"active":true,"dateCreated":1414772063000,"dateModified":1414772063000,"fileSize":1017408,"format":{"active":null,"dateCreated":1079049600000,"dateModified":null,"description":"Zip","extension":".zip","id":5},"id":33290,"name":"CrashWrangler","remotePath":"/Mac_OS_X/crashwrangler/56876_crashwrangler.zip","sortOrder":1,"state":"ENABLED"}],"id":20390,"name":"CrashWrangler","prerelease":false,"releasedSeed":true,"state":"ENABLED"},{"active":true,"availableInMemberSite":true,"categories":[{"active":null,"dateCreated":1052825460000,"dateModified":1079108316000,"enabled":true,"id":187,"name":"Developer Tools","sortOrder":28}],"dateAvailable":null,"dateCreated":1413473237000,"dateDisabled":null,"dateModified":1413980886000,"description":"The is the release version of the complete Xcode developer toolset for Mac, iPhone, iPod touch, and iPad. It includes the iOS 8.1 SDK, OS X 10.10 SDK and OS X 10.9 SDK. Xcode 6.1 requires OS X Yosemite or OS X Mavericks.","files":[{"active":true,"dateCreated":1413980886000,"dateModified":1413980886000,"fileSize":2689399690,"format":{"active":null,"dateCreated":1066327569000,"dateModified":null,"description":"Disk Image","extension":".dmg","id":12},"id":33289,"name":"Xcode 6.1","remotePath":"/Developer_Tools/xcode_6.1/56841_xcode_6.1.dmg","sortOrder":1,"state":"ENABLED"}],"id":21960,"name":"Xcode 6.1","prerelease":false,"releasedSeed":true,"state":"ENABLED"},{"active":true,"availableInMemberSite":true,"categories":[{"active":null,"dateCreated":1052825460000,"dateModified":1079108316000,"enabled":true,"id":187,"name":"Developer Tools","sortOrder":28},{"active":null,"dateCreated":4094323200000,"dateModified":1330344208000,"enabled":true,"id":14,"name":"OS X","sortOrder":70}],"dateAvailable":null,"dateCreated":1413542118000,"dateDisabled":null,"dateModified":1413542119000,"description":"This package contains development & debug versions of the OS X kernel and many I/O Kit families for use with LLDB remote (two-machine) kernel debugging. These files contain full symbolic information, unlike the equivalent files in a normal OS X installation. Also included are LLDB macros useful for kernel debugging and DEVELOPMENT (for every day use) and DEBUG (for much more error checking) kernels built with more assertions and fewer compiler optimizations.","files":[{"active":true,"dateCreated":1413542118000,"dateModified":1413542119000,"fileSize":91972684,"format":{"active":null,"dateCreated":1066327569000,"dateModified":null,"description":"Disk Image","extension":".dmg","id":12},"id":33288,"name":"Kernel Debug Kit 10.10 GM build 14A389","remotePath":"/Developer_Tools/kernel_debug_kit_10.10_gm_build_14a389/kernel_debug_kit_10.10_14a389.dmg","sortOrder":1,"state":"ENABLED"}],"id":21961,"name":"Kernel Debug Kit 10.10 GM build 14A389","prerelease":true,"releasedSeed":false,"state":"ENABLED"},{"active":true,"availableInMemberSite":true,"categories":[{"active":null,"dateCreated":1052825460000,"dateModified":1079108316000,"enabled":true,"id":187,"name":"Developer Tools","sortOrder":28}],"dateAvailable":null,"dateCreated":1413472780000,"dateDisabled":null,"dateModified":1413472780000,"description":"This package includes additional hardware i/o tools formerly bundled in the Xcode installer. These tools include: Apple Bluetooth Guidelines Validation, Bluetooth Explorer, HomeKit Accessory Simulator, IO Registry Explorer, Network Link Conditioner.prefpane, PacketLogger and Printer Simulator. These graphics tools support running on OS X 10.10 and OS X 10.9.","files":[{"active":true,"dateCreated":1413472780000,"dateModified":1413472780000,"fileSize":9607382,"format":{"active":null,"dateCreated":1066327569000,"dateModified":null,"description":"Disk Image","extension":".dmg","id":12},"id":33286,"name":"Hardware IO Tools for Xcode 6.1","remotePath":"/Developer_Tools/hardware_io_tools_for_xcode__xcode_6.1/hardwareiotools_for_xcode_6.1.dmg","sortOrder":1,"state":"ENABLED"}],"id":21959,"name":"Hardware IO Tools for Xcode - Xcode 6.1","prerelease":false,"releasedSeed":true,"state":"ENABLED"},{"active":true,"availableInMemberSite":true,"categories":[{"active":null,"dateCreated":1052825460000,"dateModified":1079108316000,"enabled":true,"id":187,"name":"Developer Tools","sortOrder":28}],"dateAvailable":null,"dateCreated":1413472373000,"dateDisabled":null,"dateModified":1413472373000,"description":"This package enables UNIX-style development via Terminal by installing command line developer tools, as well as Mac OS X SDK frameworks and headers. Many useful tools are included, such as the Apple LLVM compiler, linker, and Make. If you use Xcode, these tools are also embedded within the Xcode IDE.","files":[{"active":true,"dateCreated":1413472373000,"dateModified":1413472373000,"fileSize":107698152,"format":{"active":null,"dateCreated":1066327569000,"dateModified":null,"description":"Disk Image","extension":".dmg","id":12},"id":33285,"name":"Command Line Tools for OSX 10.9 for Xcode 6.1","remotePath":"/Developer_Tools/command_line_tools_os_x_10.9_for_xcode__xcode_6.1/command_line_tools_for_osx_10.9_for_xcode_6.1.dmg","sortOrder":1,"state":"ENABLED"}],"id":21958,"name":"Command Line Tools (OS X 10.9) for Xcode - Xcode 6.1","prerelease":false,"releasedSeed":true,"state":"ENABLED"}],"totalCount":398}
|
@@ -0,0 +1,62 @@
|
|
1
|
+
require File.expand_path('../spec_helper', __FILE__)
|
2
|
+
|
3
|
+
module XcodeInstall
|
4
|
+
describe Command::Install do
|
5
|
+
describe 'when invoked' do
|
6
|
+
before do
|
7
|
+
Installer.any_instance.stubs(:exists).returns(true)
|
8
|
+
Installer.any_instance.stubs(:installed).returns([])
|
9
|
+
fixture = Pathname.new('spec/fixtures/xcode_63.json').read
|
10
|
+
xcode = Xcode.new(JSON.parse(fixture))
|
11
|
+
Installer.any_instance.stubs(:seedlist).returns([xcode])
|
12
|
+
end
|
13
|
+
|
14
|
+
it 'downloads and installs' do
|
15
|
+
Installer.any_instance.expects(:download).with('6.3', true, nil, nil).returns('/some/path')
|
16
|
+
Installer.any_instance.expects(:install_dmg).with('/some/path', '-6.3', true, true)
|
17
|
+
Command::Install.run(['6.3'])
|
18
|
+
end
|
19
|
+
|
20
|
+
it 'downloads and installs with custom HTTP URL' do
|
21
|
+
url = 'http://yolo.com/xcode.dmg'
|
22
|
+
Installer.any_instance.expects(:download).with('6.3', true, url, nil).returns('/some/path')
|
23
|
+
Installer.any_instance.expects(:install_dmg).with('/some/path', '-6.3', true, true)
|
24
|
+
Command::Install.run(['6.3', "--url=#{url}"])
|
25
|
+
end
|
26
|
+
|
27
|
+
it 'downloads and installs and does not switch if --no-switch given' do
|
28
|
+
Installer.any_instance.expects(:download).with('6.3', true, nil, nil).returns('/some/path')
|
29
|
+
Installer.any_instance.expects(:install_dmg).with('/some/path', '-6.3', false, true)
|
30
|
+
Command::Install.run(['6.3', '--no-switch'])
|
31
|
+
end
|
32
|
+
|
33
|
+
it 'downloads without progress if switch --no-progress is given' do
|
34
|
+
Installer.any_instance.expects(:download).with('6.3', false, nil, nil).returns('/some/path')
|
35
|
+
Installer.any_instance.expects(:install_dmg).with('/some/path', '-6.3', true, true)
|
36
|
+
Command::Install.run(['6.3', '--no-progress'])
|
37
|
+
end
|
38
|
+
|
39
|
+
it 'reads .xcode-version' do
|
40
|
+
Installer.any_instance.expects(:download).with('6.3', true, nil, nil).returns('/some/path')
|
41
|
+
Installer.any_instance.expects(:install_dmg).with('/some/path', '-6.3', true, true)
|
42
|
+
File.expects(:exist?).with('.xcode-version').returns(true)
|
43
|
+
File.expects(:read).returns('6.3')
|
44
|
+
Command::Install.run([])
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
it 'parses hdiutil output' do
|
49
|
+
installer = Installer.new
|
50
|
+
fixture = Pathname.new('spec/fixtures/hdiutil.plist').read
|
51
|
+
installer.expects(:hdiutil).with('mount', '-plist', '-nobrowse', '-noverify', '/some/path').returns(fixture)
|
52
|
+
location = installer.send(:mount, Pathname.new('/some/path'))
|
53
|
+
location.should == '/Volumes/XcodeME'
|
54
|
+
end
|
55
|
+
|
56
|
+
it 'gives more helpful error when downloaded DMG turns out to be HTML' do
|
57
|
+
installer = Installer.new
|
58
|
+
should.raise(Informative) { installer.mount('spec/fixtures/mail-verify.html') }.message
|
59
|
+
.should.include 'logging into your account from a browser'
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
require File.expand_path('../spec_helper', __FILE__)
|
2
|
+
|
3
|
+
module XcodeInstall
|
4
|
+
xcode_path = '/Volumes/Macintosh HD/Applications/Xcode Beta'
|
5
|
+
|
6
|
+
describe InstalledXcode do
|
7
|
+
it 'finds the current Xcode version with whitespace chars' do
|
8
|
+
InstalledXcode.any_instance.expects(:`).with("DEVELOPER_DIR='' \"#{xcode_path}/Contents/Developer/usr/bin/xcodebuild\" -version").returns("Xcode 6.3.1\nBuild version 6D1002")
|
9
|
+
installed = InstalledXcode.new(xcode_path)
|
10
|
+
installed.version.should == '6.3.1'
|
11
|
+
end
|
12
|
+
|
13
|
+
it 'is robust against broken Xcode installations' do
|
14
|
+
InstalledXcode.any_instance.expects(:`).with("DEVELOPER_DIR='' \"#{xcode_path}/Contents/Developer/usr/bin/xcodebuild\" -version").returns(nil)
|
15
|
+
installed = InstalledXcode.new(xcode_path)
|
16
|
+
installed.version.should == '0.0'
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,101 @@
|
|
1
|
+
require File.expand_path('../spec_helper', __FILE__)
|
2
|
+
|
3
|
+
module XcodeInstall
|
4
|
+
describe '#fetch' do
|
5
|
+
before do
|
6
|
+
client = mock
|
7
|
+
client.stubs(:cookie).returns('customCookie')
|
8
|
+
Spaceship::PortalClient.stubs(:login).returns(client)
|
9
|
+
end
|
10
|
+
|
11
|
+
it 'downloads the file and calls the `progress_block` with the percentage' do
|
12
|
+
installer = Installer.new
|
13
|
+
|
14
|
+
xcode = XcodeInstall::Xcode.new('name' => 'Xcode 9.3',
|
15
|
+
'files' => [{
|
16
|
+
'remotePath' => '/Developer_Tools/Xcode_9.3/Xcode_9.3.xip'
|
17
|
+
}])
|
18
|
+
|
19
|
+
installer.stubs(:fetch_seedlist).returns([xcode])
|
20
|
+
|
21
|
+
stdin = 'stdin'
|
22
|
+
stdout = 'stdout'
|
23
|
+
stderr = 'stderr'
|
24
|
+
wait_thr = 'wait_thr'
|
25
|
+
|
26
|
+
stdin.stubs(:close)
|
27
|
+
stdout.stubs(:close)
|
28
|
+
stderr.stubs(:close)
|
29
|
+
|
30
|
+
current_time = '123123'
|
31
|
+
Time.stubs(:now).returns(current_time)
|
32
|
+
|
33
|
+
xip_path = File.join(File.expand_path('~'), '/Library/Caches/XcodeInstall/Xcode_9.3.xip')
|
34
|
+
progress_log_file = File.join(File.expand_path('~'), "/Library/Caches/XcodeInstall/progress.#{current_time}.progress")
|
35
|
+
|
36
|
+
command = [
|
37
|
+
'curl',
|
38
|
+
'--disable',
|
39
|
+
'--cookie customCookie',
|
40
|
+
'--cookie-jar /tmp/curl-cookies.txt',
|
41
|
+
'--retry 3',
|
42
|
+
'--location',
|
43
|
+
'--continue-at -',
|
44
|
+
"--output #{xip_path}",
|
45
|
+
'https://developer.apple.com/devcenter/download.action\\?path\\=/Developer_Tools/Xcode_9.3/Xcode_9.3.xip',
|
46
|
+
"2> #{progress_log_file}"
|
47
|
+
]
|
48
|
+
Open3.stubs(:popen3).with(command.join(' ')).returns([stdin, stdout, stderr, wait_thr])
|
49
|
+
|
50
|
+
wait_thr.stubs(:alive?).returns(true)
|
51
|
+
|
52
|
+
thr_value = 'thr_value'
|
53
|
+
wait_thr.stubs(:value).returns(thr_value)
|
54
|
+
thr_value.stubs(:success?).returns(true)
|
55
|
+
|
56
|
+
installer.stubs(:install_dmg).with(Pathname.new(xip_path), '-9.3', false, false)
|
57
|
+
|
58
|
+
Thread.new do
|
59
|
+
sleep(1)
|
60
|
+
File.write(progress_log_file, ' 0 4766M 0 6835k 0 0 573k 0 2:21:58 0:00:11 2:21:47 902k')
|
61
|
+
sleep(1)
|
62
|
+
File.write(progress_log_file, ' 5 4766M 0 6835k 0 0 573k 0 2:21:58 0:00:11 2:21:47 902k')
|
63
|
+
sleep(1)
|
64
|
+
File.write(progress_log_file, '50 4766M 0 6835k 0 0 573k 0 2:21:58 0:00:11 2:21:47 902k')
|
65
|
+
sleep(1)
|
66
|
+
File.write(progress_log_file, '100 4766M 0 6835k 0 0 573k 0 2:21:58 0:00:11 2:21:47 902k')
|
67
|
+
sleep(0.5)
|
68
|
+
wait_thr.stubs(:alive?).returns(false)
|
69
|
+
end
|
70
|
+
|
71
|
+
percentages = []
|
72
|
+
installer.install_version(
|
73
|
+
# version: the version to install
|
74
|
+
'9.3',
|
75
|
+
# `should_switch
|
76
|
+
false,
|
77
|
+
# `should_clean`
|
78
|
+
false, # false for now for faster debugging
|
79
|
+
# `should_install`
|
80
|
+
true,
|
81
|
+
# `progress`
|
82
|
+
false,
|
83
|
+
# `url` is nil, as we don't have a custom source
|
84
|
+
nil,
|
85
|
+
# `show_release_notes` is `false`, as this is a non-interactive machine
|
86
|
+
false,
|
87
|
+
# `progress_block` be updated on the download progress
|
88
|
+
proc do |percent|
|
89
|
+
percentages << percent
|
90
|
+
end
|
91
|
+
)
|
92
|
+
|
93
|
+
percentages.each do |current_percent|
|
94
|
+
# Verify all reported percentages are between 0 and 100
|
95
|
+
current_percent.should.be.close(50, 50)
|
96
|
+
end
|
97
|
+
# Verify we got a good amount of percentages reported
|
98
|
+
percentages.count.should.be.close(8, 4)
|
99
|
+
end
|
100
|
+
end
|
101
|
+
end
|