def setUp(self): self.client = Redis(decode_responses=True) self.client.flushdb() self.todolist = TodoList(self.client, "peter") self.events = [ "buy some milk", "have lunch", "watch tv", "finish homework", "go to sleep" ]
def queue_todo(target, type): """Check todo list, queue to todo list if not exists""" if isinstance(target, str): # one target exists = session.query(TodoList).filter(TodoList.name == target).first() if not exists: session.add(TodoList(name=target, type=type, status=NEW)) elif isinstance(target, list): #multiple targets to_add = [] for each in target: exists = session.query(TodoList).filter(TodoList.name == each['name']).first() if not exists: to_add.append(TodoList(name=each['name'], type=type, status=NEW)) session.add_all(to_add) session.commit()
def test_sortTodos(self): todo_list = TodoList() todo_list.create_todo('Day 2', datetime.now() + timedelta(days=2)) todo_list.create_todo('Day 1', datetime.now() + timedelta(days=1)) todo_list.sort_todos() self.assertEqual( list(map(lambda todo: todo['content'], todo_list.get_todos())), ['Day 1', 'Day 2'], )
def test_getTodosWithTag(self): todo_list = TodoList() todo_list.create_todo('テスト 1', datetime.now() + timedelta(days=1)) todo_list.create_todo('テスト 2', datetime.now() + timedelta(days=2)) def editor(todo): return { **todo, 'tags': set(['プライベート']), } todo_list.edit_todo(0, editor) self.assertEqual(len(todo_list.get_todos('プライベート')), 1)
def test_editTodo(self): todo_list = TodoList() todo_list.create_todo('テスト', datetime.now() + timedelta(days=1)) def editor(todo): return { **todo, 'content': 'テスト (編集済み)', } todo_list.edit_todo(0, editor) self.assertEqual( todo_list.get_todos()[0]['content'], # *1 'テスト (編集済み)', )
def add_tasks(mail_titles, list_name, mailbox): todo = TodoList(list_name) tasks_with_notes = [t for t in todo.get_tasks(True) if 'notes' in t] gmail_tasks = [t['title'] for t in tasks_with_notes if 'gmail' in t['notes']] finished_tasks = [t for t in tasks_with_notes if t['status'] == 'completed'] finished_gmail_tasks = [t['title'] for t in finished_tasks if 'gmail' in t['notes']] # Unstar any finished tasks for task in finished_gmail_tasks: mailbox.delete_mail(task) # Clear finished tasks todo.clear_finished() # Add any newly starred email to tasks for mail in mail_titles: if not mail in gmail_tasks: todo.add_task(mail, 'gmail')
class TestTodoList(unittest.TestCase): """ The basic class that inherits unittest.TestCase """ def setUp(self): self.todo_list = TodoList() def test_container_has_list_of_todo_instances(self): self.assertIsInstance(self.todo_list.container, list) def test_add_todo(self): #test if it is adding self.assertEqual(self.todo_list.count_todos(), 0) #start at 0 because empty self.todo_list.add_todo("Do laundry") self.assertEqual(self.todo_list.count_todos(), 1) def test_remove_todo(self): self.assertEqual(self.todo_list.count_todos(), 0) todo = self.todo_list.add_todo("Pick up dry cleaning") id_to_remove = todo.id self.assertEqual(self.todo_list.count_todos(), 1) self.todo_list.remove_todo(id_to_remove) self.assertEqual(self.todo_list.count_todos(), 0) def test_complete_todo(self): self.assertEqual(self.todo_list.count_todos(), 0) todo = self.todo_list.add_todo("Pick up dry cleaning") id_to_remove = todo.id self.todo_list.complete_todo(id_to_remove) self.assertEqual(self.todo_list.show_todos(), [id_to_remove, "Pick up dry cleaning", True])
def setUp(self): self.todo_list = TodoList()
from todo import Todo from todo_list import TodoList print(''' 1. Wyswietl liste. 2. Dodaj zadanie. 3. Usun zadanie. 4. Wyjdz. ''') todo_list = TodoList() while True: option = input('Wybierz czynnosc: (1|2|3|4): ') if option == '1': todo_list.show() if option == '2': content = input('Podaj tresc zadania: ') new_todo = Todo(content) todo_list.add(todo=new_todo) if option == '3': idx = int(input('Podaj indeks zadania do usuniecia: ')) todo_list.remove(idx) if option == '4': break print('Koniec dzialania progrmu.')
class TestTodoList(unittest.TestCase): def setUp(self): self.client = Redis(decode_responses=True) self.client.flushdb() self.todolist = TodoList(self.client, "peter") self.events = [ "buy some milk", "have lunch", "watch tv", "finish homework", "go to sleep" ] def test_add(self): self.assertEqual(self.todolist.show_todo_list(), []) self.todolist.add(self.events[0]) self.assertNotEqual(self.todolist.show_todo_list(), []) def test_remove(self): self.todolist.add(self.events[0]) self.todolist.remove(self.events[0]) self.assertEqual(self.todolist.show_todo_list(), []) def test_done(self): self.todolist.add(self.events[0]) self.todolist.done(self.events[0]) self.assertEqual(self.todolist.show_todo_list(), []) self.assertNotEqual(self.todolist.show_done_list(), []) def test_show_todo_list(self): self.assertEqual(self.todolist.show_todo_list(), []) for event in self.events: self.todolist.add(event) self.assertEqual(self.todolist.show_todo_list(), list(reversed(self.events))) def test_show_done_list(self): self.assertEqual(self.todolist.show_done_list(), []) for event in self.events: self.todolist.add(event) for event in self.events: self.todolist.done(event) self.assertEqual(self.todolist.show_done_list(), list(reversed(self.events)))
from os import environ from datetime import datetime, timedelta from flask import Flask, request, render_template from flask.json import jsonify from todo import Todo, edit_deadline, finish_todo, add_tag, remove_tag, to_json from todo_list import TodoList app = Flask(__name__) app.config['TEMPLATES_AUTO_RELOAD'] = True todolist = TodoList() @app.after_request def after_request(response): response.headers.add('Access-Control-Allow-Origin', '*') response.headers.add('Access-Control-Allow-Headers', 'Content-Type,Authorization') response.headers.add('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,OPTIONS') return response @app.route('/', methods=['GET']) def get_index(): return render_template('index.html') @app.route('/assets/<path:file_path>') def assets(file_path):
def test_getTodos(self): todo_list = TodoList() todo_list.create_todo('テスト 1', datetime.now() + timedelta(days=1)) todo_list.create_todo('テスト 2', datetime.now() + timedelta(days=2)) self.assertEqual(len(todo_list.get_todos()), 2)
def test_getTodoRaisesInvalidIdError(self): with self.assertRaises(Exception): todo_list = TodoList() todo_list.get_todo(0)
def test_getTodo(self): todo_list = TodoList() todo_list.create_todo('テスト 1', datetime.now() + timedelta(days=1)) todo_list.create_todo('テスト 2', datetime.now() + timedelta(days=2)) self.assertEqual(todo_list.get_todo(0)['content'], 'テスト 1')
def test_editTodoRaisesInvalidIdError(self): with self.assertRaises(Exception): todo_list = TodoList() todo_list.edit_todo(0, lambda todo: todo)
def test_deleteTodo(self): todo_list = TodoList() todo_list.create_todo('テスト', datetime.now() + timedelta(days=1)) todo_list.delete_todo(0) self.assertEqual(len(todo_list.get_todos()), 0)