Esempio n. 1
0
 /// <summary>
 /// Adds or Gets task marked as public target
 /// </summary>
 /// <param name="helper">TaskHelper</param>
 /// <param name="taskName">Task/Target Name</param>
 /// <param name="category">Task Category</param>
 /// <param name="taskType">Task Type</param>
 /// <returns>Helper Task</returns>
 /// <example>
 /// <code>
 /// var bCleanTask = TaskHelper.GetTargetTask("TaskTest");
 /// </code>
 /// </example>
 public static IHelperTask GetTargetTask(
     this IHelperTaskHandler helper,
     string taskName,
     string category = "",
     string taskType = "")
 {
     return(helper.GetTask(taskName, true, category, taskType));
 }
Esempio n. 2
0
        internal static IEnumerable <string> GetCategories(this IHelperTaskHandler helper)
        {
            if (helper == null)
            {
                return(Enumerable.Empty <string>());
            }

            return(helper.Tasks.GetCategories());
        }
Esempio n. 3
0
        /// <summary>
        /// Adds dependency between tasks
        /// </summary>
        /// <param name="helper">TaskHelper</param>
        /// <param name="task">Helper Task</param>
        /// <param name="dependentTask">Helper Task</param>
        /// <example>
        /// <code>
        /// var bCleanTask = BuildCleanTask("Sln", true)
        ///   .Does(() => { "Clean Solution" });
        /// var bTask = BuildTask("Sln", true)
        ///   .Does(() => { "Build Solution" });
        /// TaskHelper.AddTaskDependency(bTask, bCleanTask);
        /// </code>
        /// </example>
        public static void AddTaskDependency(
            this IHelperTaskHandler helper,
            IHelperTask task,
            IHelperTask dependentTask)
        {
            if (dependentTask == null)
            {
                return;
            }

            helper.AddTaskDependency(task, dependentTask.TaskName);
        }
Esempio n. 4
0
        /// <summary>
        /// Adds dependency between tasks
        /// </summary>
        /// <param name="helper">TaskHelper</param>
        /// <param name="task">Helper Task</param>
        /// <param name="dependentTaskName">Task name</param>
        public static void AddTaskDependency(
            this IHelperTaskHandler helper,
            IHelperTask task,
            string dependentTaskName)
        {
            if (task == null)
            {
                throw new ArgumentNullException(nameof(task));
            }

            helper.AddTaskDependency(task.GetTaskBuilder(), dependentTaskName);
        }
Esempio n. 5
0
        /// <summary>
        /// Adds or Gets task marked as public target
        /// </summary>
        /// <param name="helper">TaskHelper</param>
        /// <param name="taskName">Task/Target Name</param>
        /// <param name="isTarget">True=Public Target(Listed),False=Private Target(Not Listed)</param>
        /// <param name="category">Task Category</param>
        /// <param name="taskType">Task Type</param>
        /// <returns>Helper Task</returns>
        /// <example>
        /// <code>
        /// var bCleanTask = TaskHelper.GetTask("TaskTest", false);
        /// </code>
        /// </example>
        public static IHelperTask GetTask(
            this IHelperTaskHandler helper,
            string taskName,
            bool isTarget   = false,
            string category = "",
            string taskType = "")
        {
            var task = helper.AddTask(taskName);

            task.IsTarget = isTarget;
            task.Category = category;
            task.TaskType = taskType;

            return(task);
        }
Esempio n. 6
0
        public void TaskHelper_GetCategoriesForTasks_NoHelper()
        {
            var context = this.GetMoqContext(new Dictionary <string, bool>(), new Dictionary <string, string>());

            SingletonFactory.Context = context;
            var settings = SingletonFactory.GetHelperSettings();

            settings.TaskTargetFunc = taskName => { return(new CakeTaskBuilder <ActionTask>(new ActionTask(taskName))); };

            var taskHelper = SingletonFactory.GetTaskHelper();

            Assert.IsNotNull(taskHelper);

            var firstTask = context.HelperTask("test1");
            var nextTask  = context.HelperTask("test2", true, "Test");

            IHelperTaskHandler nullHelper = null;
            var categories = nullHelper.GetCategories().ToArray();

            Assert.AreEqual(0, categories.Length);
        }
Esempio n. 7
0
        /// <summary>
        /// Adds dependency between tasks
        /// </summary>
        /// <param name="helper">TaskHelper</param>
        /// <param name="task">Task</param>
        /// <param name="dependentTaskName">Task name</param>
        public static void AddTaskDependency(
            this IHelperTaskHandler helper,
            CakeTaskBuilder <ActionTask> task,
            string dependentTaskName)
        {
            if (task == null)
            {
                throw new ArgumentNullException(nameof(task));
            }

            if (string.IsNullOrWhiteSpace(dependentTaskName))
            {
                throw new ArgumentNullException(nameof(dependentTaskName));
            }

            if (task.Task.Dependencies.Any(t => t == dependentTaskName))
            {
                return;
            }

            task.IsDependentOn(dependentTaskName);
        }