Esempio n. 1
0
def test_make_poem(get_random_line):
    with patch.object(poems, 'fix_repitition', lambda s: s):
        # Poems have a random ordering
        with patch('helga.plugins.poems.random') as random:
            random.choice.side_effect = [0, 1]

            get_random_line.side_effect = ['one', 'two', 'three']
            assert poems.make_poem() == ['one', 'two', 'three']

            get_random_line.side_effect = ['one', 'two', 'three']
            assert poems.make_poem() == ['three', 'two', 'one']
Esempio n. 2
0
def test_make_poem(get_random_line):
    with patch.object(poems, 'fix_repitition', lambda s: s):
        # Poems have a random ordering
        with patch('helga.plugins.poems.random') as random:
            random.choice.side_effect = [0, 1]

            get_random_line.side_effect = ['one', 'two', 'three']
            assert poems.make_poem() == ['one', 'two', 'three']

            get_random_line.side_effect = ['one', 'two', 'three']
            assert poems.make_poem() == ['three', 'two', 'one']
Esempio n. 3
0
def test_make_poem_adds_about_or_by_kwargs(get_random_line, fix_rep):
    poem = ['one', 'two', 'three']
    fix_rep.return_value = poem
    get_random_line.side_effect = poem
    poems.make_poem(about='me')
    args, kwargs = fix_rep.call_args
    assert sorted(args[0]) == sorted(poem)
    assert kwargs == {'about': 'me'}

    poem = ['one', 'two', 'three']
    get_random_line.side_effect = poem
    poems.make_poem(by='me')
    args, kwargs = fix_rep.call_args
    assert sorted(args[0]) == sorted(poem)
    assert kwargs == {'by': 'me'}
Esempio n. 4
0
def test_make_poem_adds_about_or_by_kwargs(get_random_line, fix_rep):
    poem = ['one', 'two', 'three']
    fix_rep.return_value = poem
    get_random_line.side_effect = poem
    poems.make_poem(about='me')
    args, kwargs = fix_rep.call_args
    assert sorted(args[0]) == sorted(poem)
    assert kwargs == {'about': 'me'}

    poem = ['one', 'two', 'three']
    get_random_line.side_effect = poem
    poems.make_poem(by='me')
    args, kwargs = fix_rep.call_args
    assert sorted(args[0]) == sorted(poem)
    assert kwargs == {'by': 'me'}
Esempio n. 5
0
def test_make_poem_tanka(get_random_line):
    get_random_line.side_effect = ['one', 'two', 'three', 'four', 'five']
    poem = poems.make_poem(poem_type='tanka')

    # Poems have a random ordering
    assert poem in (
        ['one', 'two', 'three', 'four', 'five'],
        ['three', 'two', 'one', 'four', 'five'],
    )
Esempio n. 6
0
def test_make_poem_tanka(get_random_line):
    get_random_line.side_effect = ['one', 'two', 'three', 'four', 'five']
    poem = poems.make_poem(poem_type='tanka')

    # Poems have a random ordering
    assert poem in (
        ['one', 'two', 'three', 'four', 'five'],
        ['three', 'two', 'one', 'four', 'five'],
    )
Esempio n. 7
0
def test_make_poem_none_if_incomplete(get_random_line):
    get_random_line.side_effect = ['foo', 'bar', '']
    assert poems.make_poem(poem_type='haiku') is None
Esempio n. 8
0
def test_make_poem_tanka(get_random_line):
    get_random_line.side_effect = ['one', 'two', 'three', 'four', 'five']
    poem = poems.make_poem(poem_type='tanka')
    assert poem == ['one', 'two', 'three', 'four', 'five']
Esempio n. 9
0
def test_make_poem_none_if_incomplete(get_random_line):
    get_random_line.side_effect = ['foo', 'bar', '']
    assert poems.make_poem(poem_type='haiku') is None
Esempio n. 10
0
def test_make_poem_tanka(get_random_line):
    get_random_line.side_effect = ["one", "two", "three", "four", "five"]
    poem = poems.make_poem(poem_type="tanka")

    # Poems have a random ordering
    assert poem in (["one", "two", "three", "four", "five"], ["three", "two", "one", "four", "five"])