@@ -16,8 +16,6 @@ namespace Rally.RestApi.Test
1616 [ TestClass ]
1717 public class RallyRestApiTest
1818 {
19- private static string defectOid ;
20-
2119 public static RallyRestApi GetRallyRestApi ( string userName = "" , string password = "" ,
2220 string server = "" , string wsapiVersion = "" )
2321 {
@@ -116,12 +114,16 @@ public void CreateTest2x()
116114
117115 private void AssertCanCreate ( RallyRestApi restApi )
118116 {
119- CreateResult response = CreateDefect ( restApi ) ;
120- Assert . AreEqual ( 0 , response . Errors . Count ) ;
121- Assert . IsTrue ( response . Reference . ToLower ( ) . Contains ( "defect" ) ) ;
122- dynamic testDefect = restApi . GetByReference ( response . Reference ) ;
123- Assert . AreEqual ( "C# Json Rest Toolkit Test Defect" , testDefect . Name ) ;
124- defectOid = Ref . GetOidFromRef ( response . Reference ) ;
117+ var dynamicJson = new DynamicJsonObject ( ) ;
118+ dynamicJson [ "Name" ] = "C# Json Rest Toolkit Test Defect" ;
119+ CreateResult response = restApi . Create ( "defect" , dynamicJson ) ;
120+ Assert . AreEqual ( 0 , response . Errors . Count ) ;
121+ Assert . IsTrue ( response . Reference . ToLower ( ) . Contains ( "defect" ) ) ;
122+ dynamic testDefect = restApi . GetByReference ( response . Reference ) ;
123+ Assert . AreEqual ( dynamicJson [ "Name" ] , testDefect . Name ) ;
124+
125+ // Now delete it
126+ TestHelperDeleteDefect ( restApi , response . Reference ) ;
125127 }
126128
127129 [ TestMethod ]
@@ -153,7 +155,7 @@ private void AssertCreateFailure(RallyRestApi restApi)
153155 public void AddToCollection2x ( )
154156 {
155157 RallyRestApi restApi = GetRallyRestApi2x ( ) ;
156- var itemRef = CreateDefect ( restApi ) . Reference ;
158+ var itemRef = TestHelperCreateDefect ( restApi ) ;
157159 DynamicJsonObject newTask = new DynamicJsonObject ( ) ;
158160 newTask [ "Name" ] = "New Task Added via collection" ;
159161 NameValueCollection parameters = new NameValueCollection ( ) ;
@@ -200,29 +202,16 @@ public void Delete2x()
200202 AssertCanDelete ( restApi ) ;
201203 }
202204
203- private CreateResult CreateDefect ( RallyRestApi restApi )
205+ private void AssertCanDelete ( RallyRestApi restApi , bool includeFullData = false )
204206 {
205- var dynamicJson = new DynamicJsonObject ( ) ;
206- dynamicJson [ "Name" ] = "C# Json Rest Toolkit Test Defect" ;
207- return restApi . Create ( "defect" , dynamicJson ) ;
208- }
207+ // Create test defect
208+ var defect = TestHelperCreateDefect ( restApi , includeFullData ) ;
209+ var defectOid = Ref . GetOidFromRef ( defect ) ;
209210
210- private void AssertCanDelete ( RallyRestApi restApi , bool includeFullData = false )
211- {
212- var dynamicJson = new DynamicJsonObject ( ) ;
213- dynamicJson [ "Name" ] = "C# Json Rest Toolkit Test Defect" ;
214- if ( includeFullData )
215- {
216- dynamicJson [ "Owner" ] = restApi . GetCurrentUser ( ) [ "_ref" ] ;
217- dynamicJson [ "Package" ] = "Package A" ;
218- }
219- CreateResult response = restApi . Create ( "defect" , dynamicJson ) ;
220- Assert . AreEqual ( 0 , response . Errors . Count ) ;
221- Assert . IsTrue ( response . Reference . ToLower ( ) . Contains ( "defect" ) ) ;
222- OperationResult deleteResponse = restApi . Delete ( Ref . GetRelativeRef ( response . Reference ) ) ;
223- dynamic testDefectEmpty = restApi . GetByReference ( response . Reference ) ;
224- Assert . IsNull ( testDefectEmpty ) ;
225- }
211+ OperationResult deleteResponse = restApi . Delete ( Ref . GetRelativeRef ( defect ) ) ;
212+ dynamic testDefectEmpty = restApi . GetByReference ( defect ) ;
213+ Assert . IsNull ( testDefectEmpty ) ;
214+ }
226215
227216 [ TestMethod ]
228217 public void Update1x ( )
@@ -240,21 +229,59 @@ public void Update2x()
240229
241230 private void AssertCanUpdate ( RallyRestApi restApi )
242231 {
232+ // Create test defect
233+ var defect = TestHelperCreateDefect ( restApi ) ;
234+ var defectOid = Ref . GetOidFromRef ( defect ) ;
235+
243236 var dynamicJson = new DynamicJsonObject ( ) ;
244237 dynamicJson [ "Name" ] = "Dont delete me please " + DateTime . Now . Second ;
245238 OperationResult response = restApi . Update ( "Defect" , defectOid , dynamicJson ) ;
246239 Assert . AreEqual ( 0 , response . Errors . Count ) ;
247240 dynamic updateDefect = restApi . GetByReference ( "/Defect/" + defectOid + ".js" ) ;
248241 Assert . AreEqual ( dynamicJson [ "Name" ] , updateDefect . Name ) ;
242+
243+ // Now delete it
244+ TestHelperDeleteDefect ( restApi , defect ) ;
245+ }
246+
247+ private string TestHelperCreateDefect ( RallyRestApi restApi , bool includeFullData = false )
248+ {
249+ var dynamicJson = new DynamicJsonObject ( ) ;
250+ dynamicJson [ "Name" ] = "C# Json Rest Toolkit Test Defect" ;
251+ if ( includeFullData )
252+ {
253+ dynamicJson [ "Owner" ] = restApi . GetCurrentUser ( ) [ "_ref" ] ;
254+ dynamicJson [ "Package" ] = "Package A" ;
255+ }
256+
257+ CreateResult response = restApi . Create ( "defect" , dynamicJson ) ;
258+ Assert . AreEqual ( 0 , response . Errors . Count ) ;
259+ Assert . IsTrue ( response . Reference . ToLower ( ) . Contains ( "defect" ) ) ;
260+
261+ return response . Reference ;
262+ }
263+
264+ private void TestHelperDeleteDefect ( RallyRestApi restApi , string reference )
265+ {
266+ OperationResult deleteResponse = restApi . Delete ( Ref . GetRelativeRef ( reference ) ) ;
267+ dynamic testDefectEmpty = restApi . GetByReference ( reference ) ;
268+ Assert . IsNull ( testDefectEmpty ) ;
249269 }
250270
251271 [ TestMethod ]
252272 public void GetByReferenceTest ( )
253273 {
254274 RallyRestApi restApi = GetRallyRestApi ( ) ;
255- AssertCanCreate ( restApi ) ;
275+
276+ // Create test defect
277+ var defect = TestHelperCreateDefect ( restApi ) ;
278+ var defectOid = Ref . GetOidFromRef ( defect ) ;
279+
256280 dynamic response = restApi . GetByReference ( "/Defect/" + defectOid + ".js" ) ;
257281 Assert . AreEqual ( defectOid , response . ObjectID . ToString ( ) ) ;
282+
283+ // Now delete it
284+ TestHelperDeleteDefect ( restApi , defect ) ;
258285 }
259286
260287 [ TestMethod ]
@@ -300,8 +327,6 @@ public void GetByReferenceSubscriptionTest()
300327 Assert . IsNotNull ( response . ObjectID ) ;
301328 }
302329
303-
304-
305330 [ TestMethod ]
306331 public void TestAttribute1x ( )
307332 {
0 commit comments