示例#1
0
def populate():
    """Populate database with dummy data."""
    description = (
        'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer '
        'dignissim arcu vitae placerat vestibulum. Donec nec augue diam. Donec '
        'lobortis laoreet turpis vehicula faucibus. Cras scelerisque consequat '
        'tempus. Maecenas arcu urna, auctor a cursus in, sodales quis dui. Cum '
        'sociis natoque penatibus et magnis dis parturient montes, nascetur '
        'ridiculus mus. Nunc ex ipsum, dapibus sed nunc quis, porta laoreet '
        'neque. Etiam nec fringilla lacus. Ut viverra tincidunt leo id tempor.'
    )
    items = [
        ('ball', 'soccer', description),
        ('stick', 'basketball', description),
        ('goggles', 'soccer', description),
        ('snowboard', 'soccer', description),
        ('shinguards', 'frisbee', description),
        ('frisbee', 'soccer', description),
        ('bat', 'soccer', description),
        ('raquette', 'soccer', description),
        ('helmet', 'soccer', description),
        ('gloves', 'soccer', description),
        ('net', 'soccer', description),
        ('ball', 'basketball', description),
        ('disk', 'soccer', description),
        ('boots', 'soccer', description),
        ('sock', 'soccer', description),
    ]
    for item in items:
        if not Catagory.exists(item[1]):
            catagory = Catagory.create(name=item[1])
        Item.create(item[0], catagory_name=item[1], description=item[2])
示例#2
0
def dummy_items(test_db):
    ItemTuple = namedtuple('Item', ['name', 'catagory', 'description'])
    items = [
        ItemTuple('ball', 'soccer', 'a soccer ball'),
        ItemTuple('stick', 'basketball', 'a basketball stick'),
        ItemTuple('goggles', 'soccer', ''),
        ItemTuple('snowboard', 'soccer', ''),
        ItemTuple('shinguards', 'frisbee', ''),
        ItemTuple('frisbee', 'soccer', ''),
        ItemTuple('bat', 'soccer', ''),
        ItemTuple('raquette', 'soccer', ''),
        ItemTuple('helmet', 'soccer', ''),
        ItemTuple('gloves', 'soccer', ''),
        ItemTuple('net', 'soccer', ''),
        ItemTuple('ball', 'basketball', ''),
        ItemTuple('disk', 'soccer', ''),
        ItemTuple('boots', 'soccer', ''),
        ItemTuple('sock', 'soccer', ''),
    ]
    for item in items:
        if Catagory.exists(item.catagory):
            Item.create(item.name,
                        catagory_name=item[1],
                        description=item.description)
        else:
            catagory = Catagory.create(name=item[1])
            Item.create(item.name,
                        catagory=catagory,
                        description=item.description)
    return items
示例#3
0
def dummy_catagories(test_db):
    catagories = [
        'soccer',
        'basketball',
        'baseball',
        'frisbee',
    ]
    for catagory in catagories:
        if not Catagory.exists(catagory):
            Catagory.create(catagory)
    return catagories
示例#4
0
def test_dict(mock_session):
    catagory = Catagory(name='cat')
    item = Item(name='x', catagory_id=catagory.id, description='z')
    catagory.items = [item]
    assert catagory.dict == {'id': None, 'name': 'cat', 'items': [item.dict]}
示例#5
0
def test_exists_return_one(mock_session):
    mock_one = mock_session.query.return_value.one
    assert Catagory.exists('a catagory') == mock_one.return_value[0]
示例#6
0
def test_exists_calls_filter(mock, mock_session):
    Catagory.exists('a catagory')
    mock_filter = mock_session.query.return_value.filter
    mock_filter.assert_called_once_with(mock.ANY)
示例#7
0
def test_exists_calls_query_twice(mock, mock_session):
    Catagory.exists('a catagory')
    mock_filter = mock_session.query.return_value.filter
    mock_exists_call = mock_filter.return_value.exists.return_value
    calls = [mock.call(Catagory), mock.call(mock_exists_call)]
    assert mock_session.query.call_args_list == calls
示例#8
0
def test_fetch_all_returns_all(mock_session):
    mock_all = mock_session.query.return_value.all
    assert Catagory.fetch_all() == mock_all.return_value
示例#9
0
def test_fetch_all_calls_query(mock_session):
    Catagory.fetch_all()
    mock_session.query.assert_called_once_with(Catagory)
示例#10
0
def test_create_calls_add_and_commit(mock_session):
    catagory = Catagory.create('a catagory')
    mock_session.add.assert_called_once_with(catagory)
    mock_session.commit.assert_called_once_with()
示例#11
0
def test_create_returns_instance(mock_session):
    assert isinstance(Catagory.create('a catagory'), Catagory)
示例#12
0
def test_create_calls_Catagory(mock, mock_session):
    mock_init = mock.patch('app.models.catagory.Catagory.__init__',
                           return_value=None)
    Catagory.create('a catagory')
    mock_init.assert_called_once_with(name='a catagory')