-
Notifications
You must be signed in to change notification settings - Fork 0
/
addTCtoExistingTCcollectionOnTestSet.cs
67 lines (57 loc) · 2.69 KB
/
addTCtoExistingTCcollectionOnTestSet.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
using System;
using System.Collections.Generic;
using System.Collections;
using System.Linq;
using System.Text;
using Rally.RestApi;
using Rally.RestApi.Response;
namespace addTCtoTS
{
class Program
{
static void Main(string[] args)
{
RallyRestApi restApi;
restApi = new RallyRestApi("user@co.com", "secret", "https://rally1.rallydev.com", "v2.0");
String projectRef = "/project/222";
Request testSetRequest = new Request("TestSet");
testSetRequest.Project = projectRef;
testSetRequest.Fetch = new List<string>()
{
"Name",
"FormattedID",
"TestCases"
};
testSetRequest.Query = new Query("FormattedID", Query.Operator.Equals, "TS22");
QueryResult queryTestSetResults = restApi.Query(testSetRequest);
String tsRef = queryTestSetResults.Results.First()._ref;
String tsName = queryTestSetResults.Results.First().Name;
Console.WriteLine(tsName + " " + tsRef);
DynamicJsonObject testSet = restApi.GetByReference(tsRef, "FormattedID", "TestCases");
String testCasesCollectionRef = testSet["TestCases"]._ref;
Console.WriteLine(testCasesCollectionRef);
ArrayList testCasesList = new ArrayList();
foreach (var ts in queryTestSetResults.Results)
{
Request tcRequest = new Request(ts["TestCases"]);
QueryResult queryTestCasesResult = restApi.Query(tcRequest);
foreach (var tc in queryTestCasesResult.Results)
{
var tName = tc["Name"];
var tFormattedID = tc["FormattedID"];
Console.WriteLine("Test Case: " + tName + " " + tFormattedID);
DynamicJsonObject aTC = new DynamicJsonObject();
aTC["_ref"] = tc["_ref"];
testCasesList.Add(aTC); //add each test case in the collection to array 'testCasesList'
}
}
Console.WriteLine("count of elements in the array before adding a new tc:" + testCasesList.Count);
DynamicJsonObject anotherTC = new DynamicJsonObject();
anotherTC["_ref"] = "/testcase/123456789"; //any existing test to add to the collection
testCasesList.Add(anotherTC);
Console.WriteLine("count of elements in the array:" + testCasesList.Count);
testSet["TestCases"] = testCasesList;
OperationResult updateResult = restApi.Update(tsRef, testSet);
}
}
}