/// <summary> /// Create a daylight test run /// </summary> /// <param name="testRun">TestRun Object that holds all the metadata about test run</param> /// <param name="testSettings">TestSettings object that hold all the daylight and Zumo App configuration</param> /// <returns>The run id of the newly created test run</returns> public static async Task<string> CreateDaylightRun(TestRun testRun, TestSettings testSettings) { var authHeader = await GetAuthHeader(testSettings); if (authHeader == null) return String.Empty; using (var c = new HttpClient()) { c.DefaultRequestHeaders.Authorization = authHeader; JsonSerializerSettings jss = new JsonSerializerSettings(); jss.DefaultValueHandling = DefaultValueHandling.Ignore; string runObj = JsonConvert.SerializeObject(testRun, jss); var content = new StringContent(runObj.ToString(), Encoding.UTF8, "application/json"); var resp = await c.PostAsync(string.Format("{0}/api/{1}/runs", testSettings.Custom["DayLightUrl"], testSettings.Custom["DaylightProject"]), content); if (!resp.IsSuccessStatusCode) { return String.Empty; } string respBody = resp.Content.ReadAsStringAsync().Result; TestRun newRun = JsonConvert.DeserializeObject<TestRun>(respBody); return newRun.RunId; } }