ruby_tfs 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -1,6 +1,9 @@
1
1
  # ruby_tfs
2
2
  TFS.rb is a wapper around the odata API for TFS
3
3
 
4
+ [![Build Status](https://travis-ci.org/BFGCOMMUNICATIONS/ruby_tfs.png?branch=master)](https://travis-ci.org/BFGCOMMUNICATIONS/ruby_tfs)
5
+ [![Code Climate](https://codeclimate.com/github/BFGCOMMUNICATIONS/ruby_tfs.png)](https://codeclimate.com/github/BFGCOMMUNICATIONS/ruby_tfs)
6
+
4
7
  - [The project](http://www.microsoft.com/en-us/download/details.aspx?id=36230)
5
8
  - [The specification][1]
6
9
 
data/lib/tfs/builds.rb CHANGED
@@ -22,7 +22,11 @@ module TFS
22
22
  # TFS::Builds.find("DevBuild", "My New Project", 'DevBuild.3')
23
23
  #
24
24
  def find(definition, project, number)
25
- TFS.builds("Definition='#{definition}',Project='#{project}',Number='#{number}'").run.first
25
+ begin
26
+ TFS.builds("Definition='#{definition}',Project='#{project}',Number='#{number}'").run.first
27
+ rescue RestClient::BadRequest => e
28
+ raise Queryable::RecordNotFound, "No record found for '#{definition}', '#{project}', #{number}"
29
+ end
26
30
  end
27
31
  end
28
32
  end
data/lib/tfs/queryable.rb CHANGED
@@ -1,5 +1,7 @@
1
1
  module TFS
2
2
  class Queryable
3
+ RecordNotFound = Class.new(StandardError)
4
+
3
5
  class << self
4
6
  include TFS::ClassHelpers
5
7
  # Always limit to the default limit of 50 so as not to overwhelm the service
data/ruby_tfs.gemspec CHANGED
@@ -19,5 +19,5 @@ Gem::Specification.new do |spec|
19
19
  spec.required_rubygems_version = '>= 1.3.6'
20
20
  spec.summary = spec.description
21
21
  spec.test_files = Dir.glob("spec/**/*")
22
- spec.version = "0.0.1"
22
+ spec.version = "0.0.2"
23
23
  end
@@ -402,4 +402,50 @@ http_interactions:
402
402
  href=\"Builds\" />\r\n</feed>"
403
403
  http_version:
404
404
  recorded_at: Wed, 06 Mar 2013 15:52:48 GMT
405
+ - request:
406
+ method: get
407
+ uri: https://snd%5Cplukevdh_cp:garbage@codeplexodata.cloudapp.net/TFS29/Builds('Definition='rubytfs_demo',Project='rubytfs',Number='1'')
408
+ body:
409
+ encoding: US-ASCII
410
+ string: ''
411
+ headers:
412
+ Accept:
413
+ - ! '*/*; q=0.5, application/xml'
414
+ Accept-Encoding:
415
+ - gzip, deflate
416
+ User-Agent:
417
+ - Ruby
418
+ response:
419
+ status:
420
+ code: 400
421
+ message: Bad Request
422
+ headers:
423
+ Cache-Control:
424
+ - private
425
+ Content-Length:
426
+ - '238'
427
+ Content-Type:
428
+ - application/xml
429
+ Expires:
430
+ - Wed, 06 Mar 2013 21:03:25 GMT
431
+ Vary:
432
+ - ! '*'
433
+ Server:
434
+ - Microsoft-IIS/7.0
435
+ Dataserviceversion:
436
+ - 1.0;
437
+ X-Aspnet-Version:
438
+ - 4.0.30319
439
+ X-Powered-By:
440
+ - ASP.NET
441
+ Date:
442
+ - Wed, 06 Mar 2013 21:02:55 GMT
443
+ body:
444
+ encoding: US-ASCII
445
+ string: ! "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\"?>\r\n<error
446
+ xmlns=\"http://schemas.microsoft.com/ado/2007/08/dataservices/metadata\">\r\n
447
+ \ <code></code>\r\n <message xml:lang=\"en-US\">Bad Request - Error in query
448
+ syntax.</message>\r\n</error>"
449
+ http_version:
450
+ recorded_at: Wed, 06 Mar 2013 21:02:55 GMT
405
451
  recorded_with: VCR 2.4.0
@@ -0,0 +1,398 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://snd%5Cplukevdh_cp:garbage@codeplexodata.cloudapp.net/TFS29/$metadata
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - ! '*/*; q=0.5, application/xml'
12
+ Accept-Encoding:
13
+ - gzip, deflate
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Cache-Control:
22
+ - private
23
+ Content-Length:
24
+ - '22255'
25
+ Content-Type:
26
+ - application/xml;charset=utf-8
27
+ Expires:
28
+ - Wed, 06 Mar 2013 21:21:03 GMT
29
+ Vary:
30
+ - ! '*'
31
+ Server:
32
+ - Microsoft-IIS/7.0
33
+ Dataserviceversion:
34
+ - 1.0;
35
+ X-Aspnet-Version:
36
+ - 4.0.30319
37
+ X-Powered-By:
38
+ - ASP.NET
39
+ Date:
40
+ - Wed, 06 Mar 2013 21:20:32 GMT
41
+ body:
42
+ encoding: US-ASCII
43
+ string: ! "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\"?>\r\n<edmx:Edmx
44
+ Version=\"1.0\" xmlns:edmx=\"http://schemas.microsoft.com/ado/2007/06/edmx\">\r\n
45
+ \ <edmx:DataServices xmlns:m=\"http://schemas.microsoft.com/ado/2007/08/dataservices/metadata\"
46
+ m:DataServiceVersion=\"1.0\">\r\n <Schema Namespace=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities\"
47
+ xmlns:d=\"http://schemas.microsoft.com/ado/2007/08/dataservices\" xmlns:m=\"http://schemas.microsoft.com/ado/2007/08/dataservices/metadata\"
48
+ xmlns=\"http://schemas.microsoft.com/ado/2007/05/edm\">\r\n <EntityType
49
+ Name=\"Build\">\r\n <Key>\r\n <PropertyRef Name=\"Definition\"
50
+ />\r\n <PropertyRef Name=\"Number\" />\r\n <PropertyRef
51
+ Name=\"Project\" />\r\n </Key>\r\n <Property Name=\"Project\"
52
+ Type=\"Edm.String\" Nullable=\"false\" />\r\n <Property Name=\"Definition\"
53
+ Type=\"Edm.String\" Nullable=\"false\" />\r\n <Property Name=\"Number\"
54
+ Type=\"Edm.String\" Nullable=\"false\" m:FC_TargetPath=\"SyndicationTitle\"
55
+ m:FC_ContentKind=\"text\" m:FC_KeepInContent=\"true\" />\r\n <Property
56
+ Name=\"Reason\" Type=\"Edm.String\" Nullable=\"true\" />\r\n <Property
57
+ Name=\"Quality\" Type=\"Edm.String\" Nullable=\"true\" />\r\n <Property
58
+ Name=\"Status\" Type=\"Edm.String\" Nullable=\"true\" m:FC_TargetPath=\"SyndicationSummary\"
59
+ m:FC_ContentKind=\"text\" m:FC_KeepInContent=\"true\" />\r\n <Property
60
+ Name=\"RequestedBy\" Type=\"Edm.String\" Nullable=\"true\" />\r\n <Property
61
+ Name=\"RequestedFor\" Type=\"Edm.String\" Nullable=\"true\" />\r\n <Property
62
+ Name=\"LastChangedBy\" Type=\"Edm.String\" Nullable=\"true\" />\r\n <Property
63
+ Name=\"StartTime\" Type=\"Edm.DateTime\" Nullable=\"false\" />\r\n <Property
64
+ Name=\"FinishTime\" Type=\"Edm.DateTime\" Nullable=\"false\" />\r\n <Property
65
+ Name=\"LastChangedOn\" Type=\"Edm.DateTime\" Nullable=\"false\" ConcurrencyMode=\"Fixed\"
66
+ m:FC_TargetPath=\"SyndicationUpdated\" m:FC_ContentKind=\"text\" m:FC_KeepInContent=\"true\"
67
+ />\r\n <Property Name=\"BuildFinished\" Type=\"Edm.Boolean\" Nullable=\"false\"
68
+ />\r\n <Property Name=\"DropLocation\" Type=\"Edm.String\" Nullable=\"true\"
69
+ />\r\n <Property Name=\"Errors\" Type=\"Edm.String\" Nullable=\"true\"
70
+ />\r\n <Property Name=\"Warnings\" Type=\"Edm.String\" Nullable=\"true\"
71
+ />\r\n <NavigationProperty Name=\"WorkItems\" Relationship=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Build_WorkItems\"
72
+ FromRole=\"Build\" ToRole=\"WorkItems\" />\r\n <NavigationProperty
73
+ Name=\"Changesets\" Relationship=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Build_Changesets\"
74
+ FromRole=\"Build\" ToRole=\"Changesets\" />\r\n </EntityType>\r\n <EntityType
75
+ Name=\"BuildDefinition\">\r\n <Key>\r\n <PropertyRef Name=\"Definition\"
76
+ />\r\n <PropertyRef Name=\"Project\" />\r\n </Key>\r\n <Property
77
+ Name=\"Project\" Type=\"Edm.String\" Nullable=\"false\" />\r\n <Property
78
+ Name=\"Definition\" Type=\"Edm.String\" Nullable=\"false\" m:FC_TargetPath=\"SyndicationTitle\"
79
+ m:FC_ContentKind=\"text\" m:FC_KeepInContent=\"true\" />\r\n </EntityType>\r\n
80
+ \ <EntityType Name=\"Changeset\">\r\n <Key>\r\n <PropertyRef
81
+ Name=\"Id\" />\r\n </Key>\r\n <Property Name=\"Id\" Type=\"Edm.Int32\"
82
+ Nullable=\"false\" />\r\n <Property Name=\"ArtifactUri\" Type=\"Edm.String\"
83
+ Nullable=\"true\" m:FC_TargetPath=\"SyndicationTitle\" m:FC_ContentKind=\"text\"
84
+ m:FC_KeepInContent=\"true\" />\r\n <Property Name=\"Comment\" Type=\"Edm.String\"
85
+ Nullable=\"true\" m:FC_TargetPath=\"SyndicationSummary\" m:FC_ContentKind=\"text\"
86
+ m:FC_KeepInContent=\"true\" />\r\n <Property Name=\"Committer\" Type=\"Edm.String\"
87
+ Nullable=\"true\" />\r\n <Property Name=\"CreationDate\" Type=\"Edm.DateTime\"
88
+ Nullable=\"false\" ConcurrencyMode=\"Fixed\" m:FC_TargetPath=\"SyndicationUpdated\"
89
+ m:FC_ContentKind=\"text\" m:FC_KeepInContent=\"true\" />\r\n <Property
90
+ Name=\"Owner\" Type=\"Edm.String\" Nullable=\"true\" />\r\n <Property
91
+ Name=\"Branch\" Type=\"Edm.String\" Nullable=\"true\" />\r\n <Property
92
+ Name=\"WebEditorUrl\" Type=\"Edm.String\" Nullable=\"true\" />\r\n <NavigationProperty
93
+ Name=\"Changes\" Relationship=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Changeset_Changes\"
94
+ FromRole=\"Changeset\" ToRole=\"Changes\" />\r\n <NavigationProperty
95
+ Name=\"WorkItems\" Relationship=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Changeset_WorkItems\"
96
+ FromRole=\"Changeset\" ToRole=\"WorkItems\" />\r\n </EntityType>\r\n
97
+ \ <EntityType Name=\"Project\">\r\n <Key>\r\n <PropertyRef
98
+ Name=\"Name\" />\r\n </Key>\r\n <Property Name=\"Name\" Type=\"Edm.String\"
99
+ Nullable=\"false\" m:FC_TargetPath=\"SyndicationTitle\" m:FC_ContentKind=\"text\"
100
+ m:FC_KeepInContent=\"true\" />\r\n <Property Name=\"Collection\" Type=\"Edm.String\"
101
+ Nullable=\"true\" />\r\n <NavigationProperty Name=\"Changesets\" Relationship=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project_Changesets\"
102
+ FromRole=\"Project\" ToRole=\"Changesets\" />\r\n <NavigationProperty
103
+ Name=\"Builds\" Relationship=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project_Builds\"
104
+ FromRole=\"Project\" ToRole=\"Builds\" />\r\n <NavigationProperty Name=\"BuildDefinitions\"
105
+ Relationship=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project_BuildDefinitions\"
106
+ FromRole=\"Project\" ToRole=\"BuildDefinitions\" />\r\n <NavigationProperty
107
+ Name=\"WorkItems\" Relationship=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project_WorkItems\"
108
+ FromRole=\"Project\" ToRole=\"WorkItems\" />\r\n <NavigationProperty
109
+ Name=\"Queries\" Relationship=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project_Queries\"
110
+ FromRole=\"Project\" ToRole=\"Queries\" />\r\n <NavigationProperty
111
+ Name=\"Branches\" Relationship=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project_Branches\"
112
+ FromRole=\"Project\" ToRole=\"Branches\" />\r\n <NavigationProperty
113
+ Name=\"AreaPaths\" Relationship=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project_AreaPaths\"
114
+ FromRole=\"Project\" ToRole=\"AreaPaths\" />\r\n </EntityType>\r\n <EntityType
115
+ Name=\"WorkItem\">\r\n <Key>\r\n <PropertyRef Name=\"Id\"
116
+ />\r\n </Key>\r\n <Property Name=\"Id\" Type=\"Edm.Int32\" Nullable=\"false\"
117
+ />\r\n <Property Name=\"AreaPath\" Type=\"Edm.String\" Nullable=\"true\"
118
+ />\r\n <Property Name=\"IterationPath\" Type=\"Edm.String\" Nullable=\"true\"
119
+ />\r\n <Property Name=\"Revision\" Type=\"Edm.Int32\" Nullable=\"false\"
120
+ />\r\n <Property Name=\"Priority\" Type=\"Edm.String\" Nullable=\"true\"
121
+ />\r\n <Property Name=\"Severity\" Type=\"Edm.String\" Nullable=\"true\"
122
+ />\r\n <Property Name=\"StackRank\" Type=\"Edm.String\" Nullable=\"true\"
123
+ />\r\n <Property Name=\"Project\" Type=\"Edm.String\" Nullable=\"true\"
124
+ />\r\n <Property Name=\"AssignedTo\" Type=\"Edm.String\" Nullable=\"true\"
125
+ />\r\n <Property Name=\"CreatedDate\" Type=\"Edm.DateTime\" Nullable=\"false\"
126
+ />\r\n <Property Name=\"CreatedBy\" Type=\"Edm.String\" Nullable=\"true\"
127
+ />\r\n <Property Name=\"ChangedDate\" Type=\"Edm.DateTime\" Nullable=\"false\"
128
+ ConcurrencyMode=\"Fixed\" m:FC_TargetPath=\"SyndicationUpdated\" m:FC_ContentKind=\"text\"
129
+ m:FC_KeepInContent=\"true\" />\r\n <Property Name=\"ChangedBy\" Type=\"Edm.String\"
130
+ Nullable=\"true\" />\r\n <Property Name=\"ResolvedBy\" Type=\"Edm.String\"
131
+ Nullable=\"true\" />\r\n <Property Name=\"Title\" Type=\"Edm.String\"
132
+ Nullable=\"true\" m:FC_TargetPath=\"SyndicationTitle\" m:FC_ContentKind=\"text\"
133
+ m:FC_KeepInContent=\"true\" />\r\n <Property Name=\"State\" Type=\"Edm.String\"
134
+ Nullable=\"true\" />\r\n <Property Name=\"Type\" Type=\"Edm.String\"
135
+ Nullable=\"true\" />\r\n <Property Name=\"Reason\" Type=\"Edm.String\"
136
+ Nullable=\"true\" />\r\n <Property Name=\"Description\" Type=\"Edm.String\"
137
+ Nullable=\"true\" m:FC_TargetPath=\"SyndicationSummary\" m:FC_ContentKind=\"text\"
138
+ m:FC_KeepInContent=\"true\" />\r\n <Property Name=\"ReproSteps\" Type=\"Edm.String\"
139
+ Nullable=\"true\" />\r\n <Property Name=\"FoundInBuild\" Type=\"Edm.String\"
140
+ Nullable=\"true\" />\r\n <Property Name=\"IntegratedInBuild\" Type=\"Edm.String\"
141
+ Nullable=\"true\" />\r\n <Property Name=\"WebEditorUrl\" Type=\"Edm.String\"
142
+ Nullable=\"true\" />\r\n <NavigationProperty Name=\"Attachments\" Relationship=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.WorkItem_Attachments\"
143
+ FromRole=\"WorkItem\" ToRole=\"Attachments\" />\r\n </EntityType>\r\n
144
+ \ <EntityType Name=\"Attachment\" m:HasStream=\"true\">\r\n <Key>\r\n
145
+ \ <PropertyRef Name=\"Id\" />\r\n </Key>\r\n <Property
146
+ Name=\"Id\" Type=\"Edm.String\" Nullable=\"false\" />\r\n <Property
147
+ Name=\"WorkItemId\" Type=\"Edm.Int32\" Nullable=\"false\" />\r\n <Property
148
+ Name=\"Index\" Type=\"Edm.Int32\" Nullable=\"false\" />\r\n <Property
149
+ Name=\"AttachedTime\" Type=\"Edm.DateTime\" Nullable=\"false\" ConcurrencyMode=\"Fixed\"
150
+ m:FC_TargetPath=\"SyndicationUpdated\" m:FC_ContentKind=\"text\" m:FC_KeepInContent=\"true\"
151
+ />\r\n <Property Name=\"CreationTime\" Type=\"Edm.DateTime\" Nullable=\"false\"
152
+ />\r\n <Property Name=\"LastWriteTime\" Type=\"Edm.DateTime\" Nullable=\"false\"
153
+ />\r\n <Property Name=\"Name\" Type=\"Edm.String\" Nullable=\"true\"
154
+ m:FC_TargetPath=\"SyndicationTitle\" m:FC_ContentKind=\"text\" m:FC_KeepInContent=\"true\"
155
+ />\r\n <Property Name=\"Extension\" Type=\"Edm.String\" Nullable=\"true\"
156
+ />\r\n <Property Name=\"Comment\" Type=\"Edm.String\" Nullable=\"true\"
157
+ m:FC_TargetPath=\"SyndicationSummary\" m:FC_ContentKind=\"text\" m:FC_KeepInContent=\"true\"
158
+ />\r\n <Property Name=\"Length\" Type=\"Edm.Int64\" Nullable=\"false\"
159
+ />\r\n <Property Name=\"Uri\" Type=\"Edm.String\" Nullable=\"true\"
160
+ />\r\n </EntityType>\r\n <EntityType Name=\"Change\">\r\n <Key>\r\n
161
+ \ <PropertyRef Name=\"Changeset\" />\r\n <PropertyRef Name=\"Path\"
162
+ />\r\n </Key>\r\n <Property Name=\"Collection\" Type=\"Edm.String\"
163
+ Nullable=\"true\" />\r\n <Property Name=\"Changeset\" Type=\"Edm.Int32\"
164
+ Nullable=\"false\" />\r\n <Property Name=\"ChangeType\" Type=\"Edm.String\"
165
+ Nullable=\"true\" />\r\n <Property Name=\"Path\" Type=\"Edm.String\"
166
+ Nullable=\"false\" m:FC_TargetPath=\"SyndicationTitle\" m:FC_ContentKind=\"text\"
167
+ m:FC_KeepInContent=\"true\" />\r\n <Property Name=\"Type\" Type=\"Edm.String\"
168
+ Nullable=\"true\" />\r\n </EntityType>\r\n <EntityType Name=\"Query\">\r\n
169
+ \ <Key>\r\n <PropertyRef Name=\"Id\" />\r\n </Key>\r\n
170
+ \ <Property Name=\"Id\" Type=\"Edm.String\" Nullable=\"false\" />\r\n
171
+ \ <Property Name=\"Name\" Type=\"Edm.String\" Nullable=\"true\" />\r\n
172
+ \ <Property Name=\"Description\" Type=\"Edm.String\" Nullable=\"true\"
173
+ m:FC_TargetPath=\"SyndicationSummary\" m:FC_ContentKind=\"text\" m:FC_KeepInContent=\"true\"
174
+ />\r\n <Property Name=\"QueryText\" Type=\"Edm.String\" Nullable=\"true\"
175
+ />\r\n <Property Name=\"Path\" Type=\"Edm.String\" Nullable=\"true\"
176
+ m:FC_TargetPath=\"SyndicationTitle\" m:FC_ContentKind=\"text\" m:FC_KeepInContent=\"true\"
177
+ />\r\n <NavigationProperty Name=\"WorkItems\" Relationship=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Query_WorkItems\"
178
+ FromRole=\"Query\" ToRole=\"WorkItems\" />\r\n <Property Name=\"Project\"
179
+ Type=\"Edm.String\" Nullable=\"true\" />\r\n <Property Name=\"QueryType\"
180
+ Type=\"Edm.String\" Nullable=\"true\" />\r\n </EntityType>\r\n <EntityType
181
+ Name=\"Branch\">\r\n <Key>\r\n <PropertyRef Name=\"Path\"
182
+ />\r\n </Key>\r\n <Property Name=\"Path\" Type=\"Edm.String\"
183
+ Nullable=\"false\" m:FC_TargetPath=\"SyndicationTitle\" m:FC_ContentKind=\"text\"
184
+ m:FC_KeepInContent=\"true\" />\r\n <Property Name=\"Description\" Type=\"Edm.String\"
185
+ Nullable=\"true\" m:FC_TargetPath=\"SyndicationSummary\" m:FC_ContentKind=\"text\"
186
+ m:FC_KeepInContent=\"true\" />\r\n <Property Name=\"DateCreated\" Type=\"Edm.DateTime\"
187
+ Nullable=\"false\" ConcurrencyMode=\"Fixed\" m:FC_TargetPath=\"SyndicationUpdated\"
188
+ m:FC_ContentKind=\"text\" m:FC_KeepInContent=\"true\" />\r\n <NavigationProperty
189
+ Name=\"Changesets\" Relationship=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Branch_Changesets\"
190
+ FromRole=\"Branch\" ToRole=\"Changesets\" />\r\n </EntityType>\r\n <EntityType
191
+ Name=\"AreaPath\">\r\n <Key>\r\n <PropertyRef Name=\"Path\"
192
+ />\r\n </Key>\r\n <Property Name=\"Path\" Type=\"Edm.String\"
193
+ Nullable=\"false\" m:FC_TargetPath=\"SyndicationTitle\" m:FC_ContentKind=\"text\"
194
+ m:FC_KeepInContent=\"true\" />\r\n <Property Name=\"Name\" Type=\"Edm.String\"
195
+ Nullable=\"true\" ConcurrencyMode=\"Fixed\" m:FC_TargetPath=\"SyndicationSummary\"
196
+ m:FC_ContentKind=\"text\" m:FC_KeepInContent=\"true\" />\r\n <NavigationProperty
197
+ Name=\"SubAreas\" Relationship=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.AreaPath_SubAreas\"
198
+ FromRole=\"AreaPath\" ToRole=\"SubAreas\" />\r\n </EntityType>\r\n <Association
199
+ Name=\"Build_WorkItems\">\r\n <End Role=\"Build\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Build\"
200
+ Multiplicity=\"*\" />\r\n <End Role=\"WorkItems\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.WorkItem\"
201
+ Multiplicity=\"*\" />\r\n </Association>\r\n <Association Name=\"Build_Changesets\">\r\n
202
+ \ <End Role=\"Build\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Build\"
203
+ Multiplicity=\"*\" />\r\n <End Role=\"Changesets\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Changeset\"
204
+ Multiplicity=\"*\" />\r\n </Association>\r\n <Association Name=\"Changeset_Changes\">\r\n
205
+ \ <End Role=\"Changeset\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Changeset\"
206
+ Multiplicity=\"*\" />\r\n <End Role=\"Changes\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Change\"
207
+ Multiplicity=\"*\" />\r\n </Association>\r\n <Association Name=\"Changeset_WorkItems\">\r\n
208
+ \ <End Role=\"Changeset\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Changeset\"
209
+ Multiplicity=\"*\" />\r\n <End Role=\"WorkItems\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.WorkItem\"
210
+ Multiplicity=\"*\" />\r\n </Association>\r\n <Association Name=\"Project_Changesets\">\r\n
211
+ \ <End Role=\"Project\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project\"
212
+ Multiplicity=\"*\" />\r\n <End Role=\"Changesets\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Changeset\"
213
+ Multiplicity=\"*\" />\r\n </Association>\r\n <Association Name=\"Project_Builds\">\r\n
214
+ \ <End Role=\"Project\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project\"
215
+ Multiplicity=\"*\" />\r\n <End Role=\"Builds\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Build\"
216
+ Multiplicity=\"*\" />\r\n </Association>\r\n <Association Name=\"Project_BuildDefinitions\">\r\n
217
+ \ <End Role=\"Project\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project\"
218
+ Multiplicity=\"*\" />\r\n <End Role=\"BuildDefinitions\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.BuildDefinition\"
219
+ Multiplicity=\"*\" />\r\n </Association>\r\n <Association Name=\"Project_WorkItems\">\r\n
220
+ \ <End Role=\"Project\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project\"
221
+ Multiplicity=\"*\" />\r\n <End Role=\"WorkItems\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.WorkItem\"
222
+ Multiplicity=\"*\" />\r\n </Association>\r\n <Association Name=\"Project_Queries\">\r\n
223
+ \ <End Role=\"Project\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project\"
224
+ Multiplicity=\"*\" />\r\n <End Role=\"Queries\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Query\"
225
+ Multiplicity=\"*\" />\r\n </Association>\r\n <Association Name=\"Project_Branches\">\r\n
226
+ \ <End Role=\"Project\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project\"
227
+ Multiplicity=\"*\" />\r\n <End Role=\"Branches\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Branch\"
228
+ Multiplicity=\"*\" />\r\n </Association>\r\n <Association Name=\"Project_AreaPaths\">\r\n
229
+ \ <End Role=\"Project\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project\"
230
+ Multiplicity=\"*\" />\r\n <End Role=\"AreaPaths\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.AreaPath\"
231
+ Multiplicity=\"*\" />\r\n </Association>\r\n <Association Name=\"WorkItem_Attachments\">\r\n
232
+ \ <End Role=\"WorkItem\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.WorkItem\"
233
+ Multiplicity=\"*\" />\r\n <End Role=\"Attachments\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Attachment\"
234
+ Multiplicity=\"*\" />\r\n </Association>\r\n <Association Name=\"Query_WorkItems\">\r\n
235
+ \ <End Role=\"Query\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Query\"
236
+ Multiplicity=\"*\" />\r\n <End Role=\"WorkItems\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.WorkItem\"
237
+ Multiplicity=\"*\" />\r\n </Association>\r\n <Association Name=\"Branch_Changesets\">\r\n
238
+ \ <End Role=\"Branch\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Branch\"
239
+ Multiplicity=\"*\" />\r\n <End Role=\"Changesets\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Changeset\"
240
+ Multiplicity=\"*\" />\r\n </Association>\r\n <Association Name=\"AreaPath_SubAreas\">\r\n
241
+ \ <End Role=\"AreaPath\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.AreaPath\"
242
+ Multiplicity=\"*\" />\r\n <End Role=\"SubAreas\" Type=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.AreaPath\"
243
+ Multiplicity=\"*\" />\r\n </Association>\r\n </Schema>\r\n <Schema
244
+ Namespace=\"Microsoft.Samples.DPE.ODataTFS.Model\" xmlns:d=\"http://schemas.microsoft.com/ado/2007/08/dataservices\"
245
+ xmlns:m=\"http://schemas.microsoft.com/ado/2007/08/dataservices/metadata\"
246
+ xmlns=\"http://schemas.microsoft.com/ado/2007/05/edm\">\r\n <EntityContainer
247
+ Name=\"TFSData\" m:IsDefaultEntityContainer=\"true\">\r\n <EntitySet
248
+ Name=\"Builds\" EntityType=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Build\"
249
+ />\r\n <EntitySet Name=\"BuildDefinitions\" EntityType=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.BuildDefinition\"
250
+ />\r\n <EntitySet Name=\"Changesets\" EntityType=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Changeset\"
251
+ />\r\n <EntitySet Name=\"Projects\" EntityType=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project\"
252
+ />\r\n <EntitySet Name=\"WorkItems\" EntityType=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.WorkItem\"
253
+ />\r\n <EntitySet Name=\"Attachments\" EntityType=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Attachment\"
254
+ />\r\n <EntitySet Name=\"Changes\" EntityType=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Change\"
255
+ />\r\n <EntitySet Name=\"Queries\" EntityType=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Query\"
256
+ />\r\n <EntitySet Name=\"Branches\" EntityType=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Branch\"
257
+ />\r\n <EntitySet Name=\"AreaPaths\" EntityType=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.AreaPath\"
258
+ />\r\n <AssociationSet Name=\"Build_WorkItems\" Association=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Build_WorkItems\">\r\n
259
+ \ <End Role=\"Build\" EntitySet=\"Builds\" />\r\n <End Role=\"WorkItems\"
260
+ EntitySet=\"WorkItems\" />\r\n </AssociationSet>\r\n <AssociationSet
261
+ Name=\"Build_Changesets\" Association=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Build_Changesets\">\r\n
262
+ \ <End Role=\"Build\" EntitySet=\"Builds\" />\r\n <End Role=\"Changesets\"
263
+ EntitySet=\"Changesets\" />\r\n </AssociationSet>\r\n <AssociationSet
264
+ Name=\"Changeset_Changes\" Association=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Changeset_Changes\">\r\n
265
+ \ <End Role=\"Changeset\" EntitySet=\"Changesets\" />\r\n <End
266
+ Role=\"Changes\" EntitySet=\"Changes\" />\r\n </AssociationSet>\r\n
267
+ \ <AssociationSet Name=\"Changeset_WorkItems\" Association=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Changeset_WorkItems\">\r\n
268
+ \ <End Role=\"Changeset\" EntitySet=\"Changesets\" />\r\n <End
269
+ Role=\"WorkItems\" EntitySet=\"WorkItems\" />\r\n </AssociationSet>\r\n
270
+ \ <AssociationSet Name=\"Project_Changesets\" Association=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project_Changesets\">\r\n
271
+ \ <End Role=\"Project\" EntitySet=\"Projects\" />\r\n <End
272
+ Role=\"Changesets\" EntitySet=\"Changesets\" />\r\n </AssociationSet>\r\n
273
+ \ <AssociationSet Name=\"Project_Builds\" Association=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project_Builds\">\r\n
274
+ \ <End Role=\"Project\" EntitySet=\"Projects\" />\r\n <End
275
+ Role=\"Builds\" EntitySet=\"Builds\" />\r\n </AssociationSet>\r\n <AssociationSet
276
+ Name=\"Project_BuildDefinitions\" Association=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project_BuildDefinitions\">\r\n
277
+ \ <End Role=\"Project\" EntitySet=\"Projects\" />\r\n <End
278
+ Role=\"BuildDefinitions\" EntitySet=\"BuildDefinitions\" />\r\n </AssociationSet>\r\n
279
+ \ <AssociationSet Name=\"Project_WorkItems\" Association=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project_WorkItems\">\r\n
280
+ \ <End Role=\"Project\" EntitySet=\"Projects\" />\r\n <End
281
+ Role=\"WorkItems\" EntitySet=\"WorkItems\" />\r\n </AssociationSet>\r\n
282
+ \ <AssociationSet Name=\"Project_Queries\" Association=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project_Queries\">\r\n
283
+ \ <End Role=\"Project\" EntitySet=\"Projects\" />\r\n <End
284
+ Role=\"Queries\" EntitySet=\"Queries\" />\r\n </AssociationSet>\r\n
285
+ \ <AssociationSet Name=\"Project_Branches\" Association=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project_Branches\">\r\n
286
+ \ <End Role=\"Project\" EntitySet=\"Projects\" />\r\n <End
287
+ Role=\"Branches\" EntitySet=\"Branches\" />\r\n </AssociationSet>\r\n
288
+ \ <AssociationSet Name=\"Project_AreaPaths\" Association=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Project_AreaPaths\">\r\n
289
+ \ <End Role=\"Project\" EntitySet=\"Projects\" />\r\n <End
290
+ Role=\"AreaPaths\" EntitySet=\"AreaPaths\" />\r\n </AssociationSet>\r\n
291
+ \ <AssociationSet Name=\"WorkItem_Attachments\" Association=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.WorkItem_Attachments\">\r\n
292
+ \ <End Role=\"WorkItem\" EntitySet=\"WorkItems\" />\r\n <End
293
+ Role=\"Attachments\" EntitySet=\"Attachments\" />\r\n </AssociationSet>\r\n
294
+ \ <AssociationSet Name=\"Query_WorkItems\" Association=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Query_WorkItems\">\r\n
295
+ \ <End Role=\"Query\" EntitySet=\"Queries\" />\r\n <End Role=\"WorkItems\"
296
+ EntitySet=\"WorkItems\" />\r\n </AssociationSet>\r\n <AssociationSet
297
+ Name=\"Branch_Changesets\" Association=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Branch_Changesets\">\r\n
298
+ \ <End Role=\"Branch\" EntitySet=\"Branches\" />\r\n <End
299
+ Role=\"Changesets\" EntitySet=\"Changesets\" />\r\n </AssociationSet>\r\n
300
+ \ <AssociationSet Name=\"AreaPath_SubAreas\" Association=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.AreaPath_SubAreas\">\r\n
301
+ \ <End Role=\"AreaPath\" EntitySet=\"AreaPaths\" />\r\n <End
302
+ Role=\"SubAreas\" EntitySet=\"AreaPaths\" />\r\n </AssociationSet>\r\n
303
+ \ <FunctionImport Name=\"TriggerBuild\" m:HttpMethod=\"POST\" />\r\n
304
+ \ </EntityContainer>\r\n </Schema>\r\n </edmx:DataServices>\r\n</edmx:Edmx>"
305
+ http_version:
306
+ recorded_at: Wed, 06 Mar 2013 21:20:33 GMT
307
+ - request:
308
+ method: get
309
+ uri: https://snd%5Cplukevdh_cp:garbage@codeplexodata.cloudapp.net/TFS29/Projects('rubytfs')/Changesets
310
+ body:
311
+ encoding: US-ASCII
312
+ string: ''
313
+ headers:
314
+ Accept:
315
+ - ! '*/*; q=0.5, application/xml'
316
+ Accept-Encoding:
317
+ - gzip, deflate
318
+ User-Agent:
319
+ - Ruby
320
+ response:
321
+ status:
322
+ code: 200
323
+ message: OK
324
+ headers:
325
+ Cache-Control:
326
+ - private
327
+ Content-Length:
328
+ - '4440'
329
+ Content-Type:
330
+ - application/atom+xml;charset=utf-8
331
+ Expires:
332
+ - Wed, 06 Mar 2013 21:21:04 GMT
333
+ Vary:
334
+ - ! '*'
335
+ Server:
336
+ - Microsoft-IIS/7.0
337
+ Dataserviceversion:
338
+ - 2.0;
339
+ X-Aspnet-Version:
340
+ - 4.0.30319
341
+ X-Powered-By:
342
+ - ASP.NET
343
+ Date:
344
+ - Wed, 06 Mar 2013 21:20:34 GMT
345
+ body:
346
+ encoding: US-ASCII
347
+ string: ! "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\"?>\r\n<feed
348
+ xml:base=\"https://codeplexodata.cloudapp.net/TFS29/\" xmlns:d=\"http://schemas.microsoft.com/ado/2007/08/dataservices\"
349
+ xmlns:m=\"http://schemas.microsoft.com/ado/2007/08/dataservices/metadata\"
350
+ xmlns=\"http://www.w3.org/2005/Atom\">\r\n <title type=\"text\">Changesets</title>\r\n
351
+ \ <id>https://codeplexodata.cloudapp.net/TFS29/Projects('rubytfs')/Changesets/</id>\r\n
352
+ \ <updated>2013-03-06T21:20:34Z</updated>\r\n <link rel=\"self\" title=\"Changesets\"
353
+ href=\"Changesets\" />\r\n <entry m:etag=\"W/&quot;datetime'2013-03-05T16%3A26%3A26.94%2B00%3A00'&quot;\">\r\n
354
+ \ <id>https://codeplexodata.cloudapp.net/TFS29/Changesets(23460)</id>\r\n
355
+ \ <title type=\"text\">vstfs:///VersionControl/Changeset/23460</title>\r\n
356
+ \ <summary type=\"text\">Commit ef35cc2 (Mon Mar 04 18:24:12 2013 -0500)&#xD;\nAuthor:
357
+ Luke van der Hoeven &lt;hungerandthirst@gmail.com&gt;&#xD;\nCommitter: Luke
358
+ van der Hoeven &lt;hungerandthirst@gmail.com&gt;&#xD;\n-----------------------------------------------------------------&#xD;\n
359
+ \ use the repo to persist/update&#xD;\n&#xD;\n</summary>\r\n <updated>2013-03-05T16:26:26Z</updated>\r\n
360
+ \ <author>\r\n <name />\r\n </author>\r\n <link rel=\"edit\"
361
+ title=\"Changeset\" href=\"Changesets(23460)\" />\r\n <link rel=\"http://schemas.microsoft.com/ado/2007/08/dataservices/related/Changes\"
362
+ type=\"application/atom+xml;type=feed\" title=\"Changes\" href=\"Changesets(23460)/Changes\"
363
+ />\r\n <link rel=\"http://schemas.microsoft.com/ado/2007/08/dataservices/related/WorkItems\"
364
+ type=\"application/atom+xml;type=feed\" title=\"WorkItems\" href=\"Changesets(23460)/WorkItems\"
365
+ />\r\n <category term=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Changeset\"
366
+ scheme=\"http://schemas.microsoft.com/ado/2007/08/dataservices/scheme\" />\r\n
367
+ \ <content type=\"application/xml\">\r\n <m:properties>\r\n <d:Id
368
+ m:type=\"Edm.Int32\">23460</d:Id>\r\n <d:ArtifactUri>vstfs:///VersionControl/Changeset/23460</d:ArtifactUri>\r\n
369
+ \ <d:Comment xml:space=\"preserve\">Commit ef35cc2 (Mon Mar 04 18:24:12
370
+ 2013 -0500)&#xD;\nAuthor: Luke van der Hoeven &lt;hungerandthirst@gmail.com&gt;&#xD;\nCommitter:
371
+ Luke van der Hoeven &lt;hungerandthirst@gmail.com&gt;&#xD;\n-----------------------------------------------------------------&#xD;\n
372
+ \ use the repo to persist/update&#xD;\n&#xD;\n</d:Comment>\r\n <d:Committer>SND\\plukevdh_cp</d:Committer>\r\n
373
+ \ <d:CreationDate m:type=\"Edm.DateTime\">2013-03-05T16:26:26.94+00:00</d:CreationDate>\r\n
374
+ \ <d:Owner>SND\\plukevdh_cp</d:Owner>\r\n <d:Branch m:null=\"true\"
375
+ />\r\n <d:WebEditorUrl>https://tfs.codeplex.com/tfs/web/cs.aspx?pcguid=6d081351-a130-4f95-a3e6-486afb32637a&amp;cs=23460</d:WebEditorUrl>\r\n
376
+ \ </m:properties>\r\n </content>\r\n </entry>\r\n <entry m:etag=\"W/&quot;datetime'2013-03-05T16%3A22%3A27.143%2B00%3A00'&quot;\">\r\n
377
+ \ <id>https://codeplexodata.cloudapp.net/TFS29/Changesets(23459)</id>\r\n
378
+ \ <title type=\"text\">vstfs:///VersionControl/Changeset/23459</title>\r\n
379
+ \ <summary type=\"text\">Created team project folder $/rubytfs via the Team
380
+ Project Creation Wizard</summary>\r\n <updated>2013-03-05T16:22:27Z</updated>\r\n
381
+ \ <author>\r\n <name />\r\n </author>\r\n <link rel=\"edit\"
382
+ title=\"Changeset\" href=\"Changesets(23459)\" />\r\n <link rel=\"http://schemas.microsoft.com/ado/2007/08/dataservices/related/Changes\"
383
+ type=\"application/atom+xml;type=feed\" title=\"Changes\" href=\"Changesets(23459)/Changes\"
384
+ />\r\n <link rel=\"http://schemas.microsoft.com/ado/2007/08/dataservices/related/WorkItems\"
385
+ type=\"application/atom+xml;type=feed\" title=\"WorkItems\" href=\"Changesets(23459)/WorkItems\"
386
+ />\r\n <category term=\"Microsoft.Samples.DPE.ODataTFS.Model.Entities.Changeset\"
387
+ scheme=\"http://schemas.microsoft.com/ado/2007/08/dataservices/scheme\" />\r\n
388
+ \ <content type=\"application/xml\">\r\n <m:properties>\r\n <d:Id
389
+ m:type=\"Edm.Int32\">23459</d:Id>\r\n <d:ArtifactUri>vstfs:///VersionControl/Changeset/23459</d:ArtifactUri>\r\n
390
+ \ <d:Comment>Created team project folder $/rubytfs via the Team Project
391
+ Creation Wizard</d:Comment>\r\n <d:Committer>RNO\\_MCLWEB</d:Committer>\r\n
392
+ \ <d:CreationDate m:type=\"Edm.DateTime\">2013-03-05T16:22:27.143+00:00</d:CreationDate>\r\n
393
+ \ <d:Owner>RNO\\_MCLWEB</d:Owner>\r\n <d:Branch m:null=\"true\"
394
+ />\r\n <d:WebEditorUrl>https://tfs.codeplex.com/tfs/web/cs.aspx?pcguid=6d081351-a130-4f95-a3e6-486afb32637a&amp;cs=23459</d:WebEditorUrl>\r\n
395
+ \ </m:properties>\r\n </content>\r\n </entry>\r\n</feed>"
396
+ http_version:
397
+ recorded_at: Wed, 06 Mar 2013 21:20:34 GMT
398
+ recorded_with: VCR 2.4.0