コード例 #1
0
        public void TaskRetrievalTest()
        {
            const string expected = "taskName";
            var          task     = CreateStudyTaskWithName(expected);

            StudyTaskCollection.Create(base.client).Add(task);

            task = new StudyTask(base.client, task.MessageObject.Id);
            Assert.AreEqual(expected, task.Name);
        }
コード例 #2
0
        public void AddTaskTest()
        {
            const string expected = "taskName";
            var          task     = CreateStudyTaskWithName(expected);

            StudyTaskCollection.Create(base.client).Add(task);

            var result = client.GetTask(task.MessageObject.Id).Name;

            Assert.AreEqual(expected, result);
        }
コード例 #3
0
        public void TaskRetrievalWithTimeSpansTest()
        {
            var task = CreateStudyTaskWithName("taskName");

            StudyTaskCollection.Create(base.client).Add(task);
            task.TimeSpans.Add(new TaskTimeSpan(base.client, task, DateTime.Now));

            int expectedTimeSpanCount = 1;

            task = new StudyTask(base.client, task.MessageObject.Id);
            Assert.AreEqual(expectedTimeSpanCount, task.TimeSpans.Count);
        }
コード例 #4
0
        public void RemoveTimeSpanTest()
        {
            var task = CreateStudyTaskWithName("taskName");

            StudyTaskCollection.Create(base.client).Add(task);
            task.TimeSpans.Add(new TaskTimeSpan(base.client, task, DateTime.Now));
            task.TimeSpans.RemoveAt(0);

            var result = client.GetTimeSpansFor(task.MessageObject.Id);

            Assert.AreEqual(0, result.Length);
        }
コード例 #5
0
        public void RemoveTaskTest()
        {
            var tasks = StudyTaskCollection.Create(base.client);
            var task  = CreateStudyTaskWithName("name");

            tasks.Add(task);
            tasks.Remove(task);

            var result = client.GetTask(task.MessageObject.Id);

            Assert.IsNull(result);
        }
コード例 #6
0
        public void SetTaskTimeSpanEndTest()
        {
            var task = CreateStudyTaskWithName("taskName");

            StudyTaskCollection.Create(base.client).Add(task);
            task.TimeSpans.Add(new TaskTimeSpan(base.client, task, DateTime.Now));
            task.TimeSpans[0].End = DateTime.Today;

            var taskTimeSpanEndFromDatabase = client.GetTimeSpan(task.TimeSpans[0].timeSpanMessageObject.Id).End;

            Assert.IsNotNull(taskTimeSpanEndFromDatabase);
        }
コード例 #7
0
        /// <summary>
        /// Creates a Study Tasks and loads all study tasks to be shown
        /// </summary>
        /// <returns>A view which shows all tasks</returns>
        public ActionResult Index()
        {
            var client = CreateTasksWCFService();
            var userId = User.Identity.GetUserId();

            if (userId != null)
            {
                var userTasks = StudyTaskCollection.FromDatabase(client, userId);
                return(View(userTasks));
            }


            return(View());
        }
コード例 #8
0
        public void ChangeTaskEstimateTest()
        {
            var task = CreateStudyTaskWithName("taskName");

            StudyTaskCollection.Create(base.client).Add(task);

            var expected = TimeSpan.FromSeconds(99);

            task.Estimate = expected;

            var taskEstimateFromDatabase = client.GetTask(task.MessageObject.Id).Estimate;

            Assert.AreEqual(expected, taskEstimateFromDatabase);
        }
コード例 #9
0
        /// <summary>
        /// This method is invoked when the client adds a task
        /// </summary>
        /// <param name="taskName">The name of the task</param>
        /// <param name="estimateString">String representation of the estimated for the new task</param>
        /// <returns>a string of the task id and task total length in seconds, separated by commas</returns>
        public string Add(string taskName, string estimateString)
        {
            int estimate;

            // Check the string for a valid task name
            if (int.TryParse(estimateString, out estimate))
            {
                string userId             = User.Identity.GetUserId();
                var    client             = CreateTasksWCFService();
                var    databaseConnection = StudyTaskCollection.FromDatabase(client, userId);
                var    task = new StudyTask(client, taskName, userId, TimeSpan.FromSeconds(estimate));
                databaseConnection.Add(task);


                var totalLength = task.GetLength();
                return(string.Join(",", task.Id, totalLength.ToStringInSeconds()));
            }
            return(0.ToString());
        }
コード例 #10
0
        public void CumulativeTaskTimeSpansLengthTest()
        {
            var timeSpansInSeconds = new int[] { 5, 3, 10 };

            var task = CreateStudyTaskWithName("taskName");

            StudyTaskCollection.Create(base.client).Add(task);

            DateTime now = DateTime.Now;

            foreach (var seconds in timeSpansInSeconds)
            {
                var taskTimeSpan = new TaskTimeSpan(base.client, task, now);
                task.TimeSpans.Add(taskTimeSpan);
                taskTimeSpan.End = now + TimeSpan.FromSeconds(seconds);
            }

            var expectedCumulativeLength = TimeSpan.FromSeconds(timeSpansInSeconds.Sum());

            Assert.AreEqual(expectedCumulativeLength, task.GetLength());
        }