def index(): user: User = current_user readonly = (not login_disabled) and user.get_role() == UserRole.Reader items = get_items(collection) return render_template('index.html', view_model=ViewModel(items, readonly))
def view_model(): return ViewModel( [ Item('to-do-id','To Do','Task 1',datetime.now()), Item('done-id','Done','Task 2',datetime.now()), ], False )
def test_show_done_items_if_less_than_5(to_do_item, done_item): view_model = ViewModel( [ done_item, done_item, done_item, done_item ], False ) assert view_model.show_all_done_items
def test_show_done_items_is_5_or_more(to_do_item, done_item): view_model = ViewModel( [ done_item, done_item, done_item, done_item, done_item ], False ) assert not view_model.show_all_done_items
def setUp(self): self.view_model = ViewModel(FakeLogger())
def setUp(self): self.view_model = ViewModel(RealLogger())
from viewmodel import ViewModel import dateutil.parser import pytest from card import Card from datetime import datetime vm = ViewModel(["some todo items"], ["some doing items"], ["some done items"]) today_mock = dateutil.parser.parse('2020-09-02 00:16:26.061713') def test_todo_items(): assert vm.todo_items == ["some todo items"] def test_doing_items(): assert vm.doing_items == ["some doing items"] def test_done_items(): assert vm.done_items == ["some done items"] @pytest.mark.parametrize("last_modified", ['2020-09-02 12:16:26.061713', '2020-09-02 00:00:00.0']) def test_same_date(last_modified): assert vm.same_date(last_modified, today_mock) @pytest.mark.parametrize("last_modified", ['2020-09-01 12:16:26.061713', '2020-09-03 00:00:00.0']) def test_not_same_date(last_modified): assert not vm.same_date(last_modified, today_mock) @pytest.mark.parametrize("last_modified", ['2020-08-30 12:16:26.061713', '2019-10-03 12:16:26.061713']) def test_older_date(last_modified): assert vm.older_date(last_modified, today_mock) @pytest.mark.parametrize("last_modified", ['2020-09-02 12:16:26.061713', '2020-09-03 12:16:26.061713'])
def index(): items = mongoDB.get_items(collection, board_id) item_view_model = ViewModel(items[0], items[1], items[2]) return render_template('index.html', view_model=item_view_model)