public static IHelperTask AddToTestTask( this ITaskHelper helper, string targetName, string testCategory, bool isTarget = true, string parentTaskName = "") { if (string.IsNullOrWhiteSpace(targetName)) { throw new ArgumentNullException(nameof(targetName)); } if (string.IsNullOrWhiteSpace(testCategory)) { throw new ArgumentNullException(nameof(testCategory)); } if (!isTarget && string.IsNullOrWhiteSpace(parentTaskName)) { throw new ArgumentNullException(nameof(parentTaskName)); } var newTaskName = isTarget ? targetName : $"{parentTaskName}-{targetName}"; var parentTask = isTarget ? helper.GetTestTask(testCategory) : helper.AddToTestTask(parentTaskName, testCategory); var newTask = helper.GetTestTask(testCategory, newTaskName, isTarget); helper.AddTaskDependency(parentTask, newTask); return(newTask); }