Esempio n. 1
0
        public void Todo全件取得()
        {
            var title    = "タイトル";
            var deadline = new DateTime(2021, 12, 31);
            var count    = 3;

            try
            {
                for (var i = 0; i < count; i++)
                {
                    var command = new TodoSaveCommand(title, deadline);
                    _todoUseCase.Save(command);
                }
            }
            catch (Exception e)
            {
                Assert.Fail(e.Message);
            }

            var result = _todoUseCase.GetAll();

            Assert.AreEqual(count, result.Todos.Count);

            foreach (var todo in result.Todos)
            {
                Assert.AreEqual(title, todo.Title);
                Assert.AreEqual(deadline, todo.Deadline);
                Assert.AreEqual(false, todo.IsCompleted);
            }
        }
Esempio n. 2
0
        public TodoSaveResult Save(TodoSaveCommand command)
        {
            var title    = new TodoTitle(command.Title);
            var deadline = new TodoDeadline(command.Deadline);

            var Todo = _todoFactory.Create(title, deadline);

            _todoRepository.Save(Todo);

            return(new TodoSaveResult(Todo.Id.Value));
        }
Esempio n. 3
0
        public void Todoタイトル_最大桁_20_入力()
        {
            var title    = "あいうえおかきくけこさしすせそたちつてと";
            var deadline = DateTime.Now;
            var command  = new TodoSaveCommand(title, deadline);
            var result   = _todoUseCase.Save(command);

            Assert.IsNotNull(result.CreatedId);

            // ユーザが正しく保存されているか
            var createdTitle = new TodoTitle(title);
            var createdTodo  = _todoRepository.Find(createdTitle);

            Assert.IsNotNull(createdTodo);
        }
Esempio n. 4
0
        public void Todoタイトル_未入力()
        {
            bool exceptionOccured = false;

            try
            {
                var deadline = DateTime.Now;
                var command  = new TodoSaveCommand(null, deadline);
                _todoUseCase.Save(command);
            }
            catch (Exception e)
            {
                Assert.AreEqual("タイトルを入力してください。", e.Message);
                exceptionOccured = true;
            }

            Assert.IsTrue(exceptionOccured);
        }
Esempio n. 5
0
        public void Todoタイトル_最大桁_20_超過入力()
        {
            bool exceptionOccured = false;

            try
            {
                var title    = "あいうえおかきくけこさしすせそたちつてとな";
                var deadline = DateTime.Now;
                var command  = new TodoSaveCommand(title, deadline);
                _todoUseCase.Save(command);
            }
            catch (Exception e)
            {
                Assert.AreEqual("タイトルを20文字以内で入力してください。", e.Message);
                exceptionOccured = true;
            }

            Assert.IsTrue(exceptionOccured);
        }