Example #1
0
def test_output_outlines_success_colorful():
    "Language: ru -> sucess outlines colorful"

    runner = Runner(join_path('ru', 'success', 'outlines.feature'),
                    verbosity=3,
                    no_color=False)
    runner.run()

    assert_stdout_lines(
        u'\n'
        u'\x1b[1;37m\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b: \u041f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0432\u044b\u0432\u043e\u0434 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043d\u043e\u0433\u043e \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u044f                                  \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines.feature:3\x1b[0m\n'
        u'\x1b[1;37m  \u041a\u0430\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442                                                                  \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines.feature:4\x1b[0m\n'
        u'\x1b[1;37m  \u0414\u043b\u044f \u0442\u043e\u0433\u043e \u0447\u043e\u0431\u044b lettuce \u0431\u044b\u043b \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u043c                                               \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines.feature:5\x1b[0m\n'
        u'\x1b[1;37m  \u042f \u0445\u043e\u0447\u0443, \u0447\u0442\u043e \u0431\u044b \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0438 \u0441\u043e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438 \u043d\u0430 \u0440\u0443\u0441\u0441\u043a\u043e\u043c                        \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines.feature:6\x1b[0m\n'
        u'\n'
        u'\x1b[1;37m  \u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u044f: \u0417\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0444\u043e\u0440\u043c\u0443                                              \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines.feature:8\x1b[0m\n'
        u'\x1b[0;36m    \u041f\u0443\u0441\u043a\u0430\u0439 \u044f \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u044e \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0435  "http://sona-studio.com/contacts/"               \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines_steps.py:12\x1b[0m\n'
        u'\x1b[0;36m    \u041a\u043e\u0433\u0434\u0430 \u044f \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u044e \u0432 \u043f\u043e\u043b\u0435 "\u0418\u043c\u044f" "<\u0438\u043c\u044f>"                                          \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines_steps.py:16\x1b[0m\n'
        u'\x1b[0;36m    \u0418 \u044f \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u044e \u0432 \u043f\u043e\u043b\u0435 "Email" "<email>"                                          \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines_steps.py:24\x1b[0m\n'
        u'\x1b[0;36m    \u0418 \u044f \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u044e \u0432 \u043f\u043e\u043b\u0435 "\u0421\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435" "<\u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435>"                                  \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines_steps.py:32\x1b[0m\n'
        u'\x1b[0;36m    \u0418 \u044f \u043d\u0430\u0436\u0438\u043c\u0430\u044e "\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c"                                                        \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines_steps.py:40\x1b[0m\n'
        u'\x1b[0;36m    \u0422\u043e\u0433\u0434\u0430 \u044f \u043f\u043e\u043b\u0443\u0447\u0430\u044e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 "\u0421\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0432\u0430\u0448\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435"                          \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines_steps.py:43\x1b[0m\n'
        u'\n'
        u'\x1b[1;37m  \u041f\u0440\u0438\u043c\u0435\u0440\u044b:\x1b[0m\n'
        u'\x1b[0;36m   \x1b[1;37m |\x1b[0;36m \u0438\u043c\u044f             \x1b[1;37m |\x1b[0;36m email         \x1b[1;37m |\x1b[0;36m \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435                             \x1b[1;37m |\x1b[0;36m\x1b[0m\n'
        u'\x1b[1;32m   \x1b[1;37m |\x1b[1;32m \u0412\u0438\u0442\u0430\u043b\u0438\u0439 \u0418\u0433\u043e\u0440\u0435\u0432\u0438\u0447\x1b[1;37m |\x1b[1;32m [email protected]\x1b[1;37m |\x1b[1;32m \u0415\u0441\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442, \u043d\u0443\u0436\u043d\u043e \u043e\u0431\u0441\u0443\u0434\u0438\u0442\u044c\x1b[1;37m |\x1b[1;32m\x1b[0m\n'
        u'\x1b[1;32m   \x1b[1;37m |\x1b[1;32m \u041c\u0430\u0440\u0438\u043d\u0430 \u0411\u0430\u043d\u0440\u0430\u0443\u043b  \x1b[1;37m |\x1b[1;32m [email protected]\x1b[1;37m |\x1b[1;32m \u041c\u043d\u0435 \u043d\u0440\u0430\u0432\u044f\u0442\u0441\u044f \u0432\u0430\u0448\u0438 \u0434\u0438\u0437\u0430\u0439\u043d\u044b, \u0445\u043e\u0447\u0443 \u0441\u0430\u0439\u0442  \x1b[1;37m |\x1b[1;32m\x1b[0m\n'
        u'\n'
        u'\x1b[1;37m1 feature (\x1b[1;32m1 passed\x1b[1;37m)\x1b[0m\n'
        u'\x1b[1;37m2 scenarios (\x1b[1;32m2 passed\x1b[1;37m)\x1b[0m\n'
        u'\x1b[1;37m12 steps (\x1b[1;32m12 passed\x1b[1;37m)\x1b[0m\n')
Example #2
0
def test_output_outlines_success_colorless():
    "Language: pt-br -> sucess outlines colorless"

    runner = Runner(join_path('pt-br', 'success', 'outlines.feature'),
                    verbosity=3)
    runner.run()

    assert_stdout_lines(
        u'\n'
        u'Funcionalidade: outlines em português                                  # tests/functional/language_specific_features/pt-br/success/outlines.feature:3\n'
        u'  Como um programador                                                  # tests/functional/language_specific_features/pt-br/success/outlines.feature:4\n'
        u'  Eu quero testar cenários esquemáticos                                # tests/functional/language_specific_features/pt-br/success/outlines.feature:5\n'
        u'  Para ver o output em pt-br                                           # tests/functional/language_specific_features/pt-br/success/outlines.feature:6\n'
        u'\n'
        u'  Esquema do Cenário: Fazer nada, repetidas vezes, através de esquemas # tests/functional/language_specific_features/pt-br/success/outlines.feature:8\n'
        u'    Dado que tenho o <dado1>                                           # tests/functional/language_specific_features/pt-br/success/outlines_steps.py:13\n'
        u'    Quando eu faço algo com <isso>                                     # tests/functional/language_specific_features/pt-br/success/outlines_steps.py:22\n'
        u'    Então eu fico feliz em ver <aquilo>                                # tests/functional/language_specific_features/pt-br/success/outlines_steps.py:31\n'
        u'\n'
        u'  Exemplos:\n'
        u'    | dado1 | isso        | aquilo        |\n'
        u'    | algo  | assim       | funcional     |\n'
        u'    | outro | aqui        | também        |\n'
        u'    | dados | funcionarão | com unicode ! |\n'
        u'\n'
        u'1 feature (1 passed)\n'
        u'3 scenarios (3 passed)\n'
        u'9 steps (9 passed)\n')
Example #3
0
def test_output_with_successful_outline_colorful():
    "Testing the colorful output of a scenario outline"

    runner = Runner(feature_name('success_outline'), verbosity=4)
    runner.run()

    assert_stdout_lines(
        '\n'
        '\033[1;37mFeature: Successful Scenario Outline                          \033[1;30m# tests/functional/output_features/success_outline/success_outline.feature:1\033[0m\n'
        '\033[1;37m  As lettuce author                                           \033[1;30m# tests/functional/output_features/success_outline/success_outline.feature:2\033[0m\n'
        '\033[1;37m  In order to finish the first release                        \033[1;30m# tests/functional/output_features/success_outline/success_outline.feature:3\033[0m\n'
        '\033[1;37m  I want to make scenario outlines work :)                    \033[1;30m# tests/functional/output_features/success_outline/success_outline.feature:4\033[0m\n'
        '\n'
        '\033[1;37m  Scenario Outline: fill a web form                           \033[1;30m# tests/functional/output_features/success_outline/success_outline.feature:6\033[0m\n'
        '\033[0;36m    Given I open browser at "http://www.my-website.com/"      \033[1;30m# tests/functional/output_features/success_outline/success_outline_steps.py:21\033[0m\n'
        '\033[0;36m    And click on "sign-up"                                    \033[1;30m# tests/functional/output_features/success_outline/success_outline_steps.py:25\033[0m\n'
        '\033[0;36m    When I fill the field "username" with "<username>"        \033[1;30m# tests/functional/output_features/success_outline/success_outline_steps.py:29\033[0m\n'
        '\033[0;36m    And I fill the field "password" with "<password>"         \033[1;30m# tests/functional/output_features/success_outline/success_outline_steps.py:29\033[0m\n'
        '\033[0;36m    And I fill the field "password-confirm" with "<password>" \033[1;30m# tests/functional/output_features/success_outline/success_outline_steps.py:29\033[0m\n'
        '\033[0;36m    And I fill the field "email" with "<email>"               \033[1;30m# tests/functional/output_features/success_outline/success_outline_steps.py:29\033[0m\n'
        '\033[0;36m    And I click "done"                                        \033[1;30m# tests/functional/output_features/success_outline/success_outline_steps.py:33\033[0m\n'
        '\033[0;36m    Then I see the message "<message>"                        \033[1;30m# tests/functional/output_features/success_outline/success_outline_steps.py:37\033[0m\n'
        '\n'
        '\033[1;37m  Examples:\033[0m\n'
        '\033[0;36m   \033[1;37m |\033[0;36m username\033[1;37m |\033[0;36m password\033[1;37m |\033[0;36m email         \033[1;37m |\033[0;36m message      \033[1;37m |\033[0;36m\033[0m\n'
        '\033[1;32m   \033[1;37m |\033[1;32m john    \033[1;37m |\033[1;32m doe-1234\033[1;37m |\033[1;32m [email protected]\033[1;37m |\033[1;32m Welcome, John\033[1;37m |\033[1;32m\033[0m\n'
        '\033[1;32m   \033[1;37m |\033[1;32m mary    \033[1;37m |\033[1;32m wee-9876\033[1;37m |\033[1;32m [email protected]\033[1;37m |\033[1;32m Welcome, Mary\033[1;37m |\033[1;32m\033[0m\n'
        '\033[1;32m   \033[1;37m |\033[1;32m foo     \033[1;37m |\033[1;32m foo-bar \033[1;37m |\033[1;32m [email protected]   \033[1;37m |\033[1;32m Welcome, Foo \033[1;37m |\033[1;32m\033[0m\n'
        '\n'
        "\033[1;37m1 feature (\033[1;32m1 passed\033[1;37m)\033[0m\n" \
        "\033[1;37m3 scenarios (\033[1;32m3 passed\033[1;37m)\033[0m\n" \
        "\033[1;37m24 steps (\033[1;32m24 passed\033[1;37m)\033[0m\n"
    )
Example #4
0
def test_output_with_successful_outline_colorless():
    "Testing the colorless output of a scenario outline"

    runner = Runner(feature_name('success_outline'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        '\n'
        'Feature: Successful Scenario Outline                          # tests/functional/output_features/success_outline/success_outline.feature:1\n'
        '  As lettuce author                                           # tests/functional/output_features/success_outline/success_outline.feature:2\n'
        '  In order to finish the first release                        # tests/functional/output_features/success_outline/success_outline.feature:3\n'
        '  I want to make scenario outlines work :)                    # tests/functional/output_features/success_outline/success_outline.feature:4\n'
        '\n'
        '  Scenario Outline: fill a web form                           # tests/functional/output_features/success_outline/success_outline.feature:6\n'
        '    Given I open browser at "http://www.my-website.com/"      # tests/functional/output_features/success_outline/success_outline_steps.py:21\n'
        '    And click on "sign-up"                                    # tests/functional/output_features/success_outline/success_outline_steps.py:25\n'
        '    When I fill the field "username" with "<username>"        # tests/functional/output_features/success_outline/success_outline_steps.py:29\n'
        '    And I fill the field "password" with "<password>"         # tests/functional/output_features/success_outline/success_outline_steps.py:29\n'
        '    And I fill the field "password-confirm" with "<password>" # tests/functional/output_features/success_outline/success_outline_steps.py:29\n'
        '    And I fill the field "email" with "<email>"               # tests/functional/output_features/success_outline/success_outline_steps.py:29\n'
        '    And I click "done"                                        # tests/functional/output_features/success_outline/success_outline_steps.py:33\n'
        '    Then I see the message "<message>"                        # tests/functional/output_features/success_outline/success_outline_steps.py:37\n'
        '\n'
        '  Examples:\n'
        '    | username | password | email          | message       |\n'
        '    | john     | doe-1234 | [email protected] | Welcome, John |\n'
        '    | mary     | wee-9876 | [email protected] | Welcome, Mary |\n'
        '    | foo      | foo-bar  | [email protected]    | Welcome, Foo  |\n'
        '\n'
        '1 feature (1 passed)\n'
        '3 scenarios (3 passed)\n'
        '24 steps (24 passed)\n'
    )
Example #5
0
def test_output_outlines_success_colorless():
    "Language: ru -> sucess outlines colorless"

    runner = Runner(join_path('ru', 'success', 'outlines.feature'),
                    verbosity=3,
                    no_color=True)
    runner.run()

    assert_stdout_lines(
        u'\n'
        u'Функционал: Проверить вывод структурного сценария                                  # tests/functional/language_specific_features/ru/success/outlines.feature:3\n'
        u'  Как программист                                                                  # tests/functional/language_specific_features/ru/success/outlines.feature:4\n'
        u'  Для того чобы lettuce был надежным                                               # tests/functional/language_specific_features/ru/success/outlines.feature:5\n'
        u'  Я хочу, что бы сценарии со структурой работали на русском                        # tests/functional/language_specific_features/ru/success/outlines.feature:6\n'
        u'\n'
        u'  Структура сценария: Заполнить форму                                              # tests/functional/language_specific_features/ru/success/outlines.feature:8\n'
        u'    Пускай я открываю в браузере  "http://sona-studio.com/contacts/"               # tests/functional/language_specific_features/ru/success/outlines_steps.py:12\n'
        u'    Когда я заполняю в поле "Имя" "<имя>"                                          # tests/functional/language_specific_features/ru/success/outlines_steps.py:16\n'
        u'    И я заполняю в поле "Email" "<email>"                                          # tests/functional/language_specific_features/ru/success/outlines_steps.py:24\n'
        u'    И я заполняю в поле "Сообщение" "<сообщение>"                                  # tests/functional/language_specific_features/ru/success/outlines_steps.py:32\n'
        u'    И я нажимаю "Отправить"                                                        # tests/functional/language_specific_features/ru/success/outlines_steps.py:40\n'
        u'    Тогда я получаю сообщение "Спасибо за ваше сообщение"                          # tests/functional/language_specific_features/ru/success/outlines_steps.py:43\n'
        u'\n'
        u'  Примеры:\n'
        u'    | имя              | email          | сообщение                              |\n'
        u'    | Виталий Игоревич | [email protected] | Есть интересный проект, нужно обсудить |\n'
        u'    | Марина Банраул   | [email protected] | Мне нравятся ваши дизайны, хочу сайт   |\n'
        u'\n'
        u'1 feature (1 passed)\n'
        u'2 scenarios (2 passed)\n'
        u'12 steps (12 passed)\n')
Example #6
0
def test_output_with_success_colorless_many_features():
    "Testing the output of many successful features"
    runner = Runner(join(abspath(dirname(__file__)), 'output_features', 'many_successful_features'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        "\n"
        "Feature: First feature, of many              # tests/functional/output_features/many_successful_features/one.feature:1\n"
        "  In order to make lettuce more robust       # tests/functional/output_features/many_successful_features/one.feature:2\n"
        "  As a programmer                            # tests/functional/output_features/many_successful_features/one.feature:3\n"
        "  I want to test its output on many features # tests/functional/output_features/many_successful_features/one.feature:4\n"
        "\n"
        "  Scenario: Do nothing                       # tests/functional/output_features/many_successful_features/one.feature:6\n"
        "    Given I do nothing                       # tests/functional/output_features/many_successful_features/dumb_steps.py:6\n"
        "\033[A    Given I do nothing                       # tests/functional/output_features/many_successful_features/dumb_steps.py:6\n"
        "    Then I see that the test passes          # tests/functional/output_features/many_successful_features/dumb_steps.py:8\n"
        "\033[A    Then I see that the test passes          # tests/functional/output_features/many_successful_features/dumb_steps.py:8\n"
        "\n"
        "Feature: Second feature, of many    # tests/functional/output_features/many_successful_features/two.feature:1\n"
        "  I just want to see it green :)    # tests/functional/output_features/many_successful_features/two.feature:2\n"
        "\n"
        "  Scenario: Do nothing              # tests/functional/output_features/many_successful_features/two.feature:4\n"
        "    Given I do nothing              # tests/functional/output_features/many_successful_features/dumb_steps.py:6\n"
        "\033[A    Given I do nothing              # tests/functional/output_features/many_successful_features/dumb_steps.py:6\n"
        "    Then I see that the test passes # tests/functional/output_features/many_successful_features/dumb_steps.py:8\n"
        "\033[A    Then I see that the test passes # tests/functional/output_features/many_successful_features/dumb_steps.py:8\n"
        "\n"
        "2 features (2 passed)\n"
        "2 scenarios (2 passed)\n"
        "4 steps (4 passed)\n"
    )
Example #7
0
def test_output_snippets_with_groups_within_single_quotes_colorful():
    "Testing that the proposed snippet is clever enough to identify groups within single quotes. colorful"

    runner = Runner(feature_name('single-quoted-snippet'), verbosity=4)
    runner.run()

    assert_stdout_lines(
        u'\n'
        u'\033[1;37mFeature: single-quoted snippet proposal                          \033[1;30m# tests/functional/output_features/single-quoted-snippet/single-quoted-snippet.feature:1\033[0m\n'
        u'\n'
        u'\033[1;37m  Scenario: Propose matched groups                               \033[1;30m# tests/functional/output_features/single-quoted-snippet/single-quoted-snippet.feature:2\033[0m\n'
        u'\033[0;33m    Given I have \'stuff here\' and \'more @#$%ˆ& bizar sutff h3r3\' \033[1;30m# tests/functional/output_features/single-quoted-snippet/single-quoted-snippet.feature:3\033[0m\n'
        u'\n'
        "\033[1;37m1 feature (\033[0;31m0 passed\033[1;37m)\033[0m\n" \
        "\033[1;37m1 scenario (\033[0;31m0 passed\033[1;37m)\033[0m\n" \
        "\033[1;37m1 step (\033[0;33m1 undefined\033[1;37m, \033[1;32m0 passed\033[1;37m)\033[0m\n"
        u'\n'
        u'\033[0;33mYou can implement step definitions for undefined steps with these snippets:\n'
        u'\n'
        u'from lettuce import step\n'
        u'\n'
        u'@step(r\'Given I have \\\'(.*)\\\' and \\\'(.*)\\\'\')\n'
        u'def given_i_have_group1_and_group2(step, group1, group2):\n'
        u'    pass\033[0m\n'
    )
Example #8
0
def test_output_snippets_with_groups_within_redundant_quotes():
    "Testing that the proposed snippet is clever enough to avoid duplicating the same snippet"

    runner = Runner(feature_name('redundant-steps-quotes'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        u'\n'
        u'Feature: avoid duplicating same snippet                          # tests/functional/output_features/redundant-steps-quotes/redundant-steps-quotes.feature:1\n'
        u'\n'
        u'  Scenario: Propose matched groups                               # tests/functional/output_features/redundant-steps-quotes/redundant-steps-quotes.feature:2\n'
        u'    Given I have "stuff here" and "more @#$%ˆ& bizar sutff h3r3" # tests/functional/output_features/redundant-steps-quotes/redundant-steps-quotes.feature:3 (undefined)\n'
        u'    Given I have "blablabla" and "12345"                         # tests/functional/output_features/redundant-steps-quotes/redundant-steps-quotes.feature:4 (undefined)\n'
        u'\n'
        u'1 feature (0 passed)\n'
        u'1 scenario (0 passed)\n'
        u'2 steps (2 undefined, 0 passed)\n'
        u'\n'
        u'You can implement step definitions for undefined steps with these snippets:\n'
        u'\n'
        u'from lettuce import step\n'
        u'\n'
        u'@step(r\'Given I have "(.*)" and "(.*)"\')\n'
        u'def given_i_have_group1_and_group2(step, group1, group2):\n'
        u'    pass\n'
    )
Example #9
0
def test_output_snippets_with_groups_within_single_quotes_colorless():
    "Testing that the proposed snippet is clever enough to identify groups within single quotes. colorless"

    runner = Runner(feature_name('single-quoted-snippet'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        u'\n'
        u'Feature: single-quoted snippet proposal                          # tests/functional/output_features/single-quoted-snippet/single-quoted-snippet.feature:1\n'
        u'\n'
        u'  Scenario: Propose matched groups                               # tests/functional/output_features/single-quoted-snippet/single-quoted-snippet.feature:2\n'
        u'    Given I have \'stuff here\' and \'more @#$%ˆ& bizar sutff h3r3\' # tests/functional/output_features/single-quoted-snippet/single-quoted-snippet.feature:3 (undefined)\n'
        u'\n'
        u'1 feature (0 passed)\n'
        u'1 scenario (0 passed)\n'
        u'1 step (1 undefined, 0 passed)\n'
        u'\n'
        u'You can implement step definitions for undefined steps with these snippets:\n'
        u'\n'
        u'from lettuce import step\n'
        u'\n'
        u'@step(r\'Given I have \\\'(.*)\\\' and \\\'(.*)\\\'\')\n'
        u'def given_i_have_group1_and_group2(step, group1, group2):\n'
        u'    pass\n'
    )
Example #10
0
def test_output_outlines_success_colorless():
    "Language: zh-TW -> sucess outlines colorless"

    runner = Runner(join_path('zh-TW', 'success', 'outlines.feature'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        "\n"
        "特性: 中文場景模板           # tests/functional/language_specific_features/zh-TW/success/outlines.feature:3\n"
        "  中文場景模板圖表測試       # tests/functional/language_specific_features/zh-TW/success/outlines.feature:4\n"
        "\n"
        "  場景模板: 用表格描述場景   # tests/functional/language_specific_features/zh-TW/success/outlines.feature:6\n"
        "    如果 輸入是<輸入>        # tests/functional/language_specific_features/zh-TW/success/outlines_steps.py:13\n"
        "    當 執行<處理>時          # tests/functional/language_specific_features/zh-TW/success/outlines_steps.py:22\n"
        "    那麽 得到<結果>          # tests/functional/language_specific_features/zh-TW/success/outlines_steps.py:31\n"
        "\n"
        "  例如:\n"
        "    | 輸入 | 處理 | 結果         |\n"
        "    | 什麽 | 這個 | 功能         |\n"
        "    | 其他 | 這裏 | 一樣         |\n"
        "    | 數據 | 動作 | unicode輸出! |\n"
        "\n"
        "1 feature (1 passed)\n"
        "3 scenarios (3 passed)\n"
        "9 steps (9 passed)\n"
    )
Example #11
0
def test_output_outlines_success_colorless():
    "Language: fr -> sucess outlines colorless"

    runner = Runner(join_path('fr', 'success', 'outlines.feature'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        '\n'
        'Fonctionnalité: Plan de scénario en français # tests/functional/language_specific_features/fr/success/outlines.feature:4\n'
        '  En tant que programmeur                    # tests/functional/language_specific_features/fr/success/outlines.feature:5\n'
        '  Je veux tester les plans de scénario       # tests/functional/language_specific_features/fr/success/outlines.feature:6\n'
        '  Et surtout les sorties                     # tests/functional/language_specific_features/fr/success/outlines.feature:7\n'
        '\n'
        '  Plan de Scénario: Faire la sieste          # tests/functional/language_specific_features/fr/success/outlines.feature:9\n'
        '    Soit un après midi de <mois>             # tests/functional/language_specific_features/fr/success/outlines_steps.py:13\n'
        '    Quand je veux faire la sieste            # tests/functional/language_specific_features/fr/success/outlines_steps.py:22\n'
        '    Je peux aller <lieux>                    # tests/functional/language_specific_features/fr/success/outlines_steps.py:26\n'
        '\n'
        '  Exemples:\n'
        '    | mois    | lieux              |\n'
        '    | janvier | près de la cheminé |\n'
        '    | aôut    | dans le transat    |\n'
        '    | octobre | dans le canapé     |\n'
        '\n'
        '1 feature (1 passed)\n'
        '3 scenarios (3 passed)\n'
        '9 steps (9 passed)\n'
    )
Example #12
0
def test_output_outlines_success_colorful():
    "Language: zh-TW -> sucess outlines colorful"

    runner = Runner(join_path('zh-TW', 'success', 'outlines.feature'), verbosity=4)
    runner.run()

    assert_stdout_lines(
        '\n'
        "\033[1;37m特性: 中文場景模板           \033[1;30m# tests/functional/language_specific_features/zh-TW/success/outlines.feature:3\033[0m\n"
        "\033[1;37m  中文場景模板圖表測試       \033[1;30m# tests/functional/language_specific_features/zh-TW/success/outlines.feature:4\033[0m\n"
        '\n'
        "\033[1;37m  場景模板: 用表格描述場景   \033[1;30m# tests/functional/language_specific_features/zh-TW/success/outlines.feature:6\033[0m\n"
        "\033[0;36m    如果 輸入是<輸入>        \033[1;30m# tests/functional/language_specific_features/zh-TW/success/outlines_steps.py:13\033[0m\n"
        "\033[0;36m    當 執行<處理>時          \033[1;30m# tests/functional/language_specific_features/zh-TW/success/outlines_steps.py:22\033[0m\n"
        "\033[0;36m    那麽 得到<結果>          \033[1;30m# tests/functional/language_specific_features/zh-TW/success/outlines_steps.py:31\033[0m\n"
        '\n'
        "\033[1;37m  例如:\033[0m\n"
        "\033[0;36m   \033[1;37m |\033[0;36m 輸入\033[1;37m |\033[0;36m 處理\033[1;37m |\033[0;36m 結果        \033[1;37m |\033[0;36m\033[0m\n"
        "\033[1;32m   \033[1;37m |\033[1;32m 什麽\033[1;37m |\033[1;32m 這個\033[1;37m |\033[1;32m 功能        \033[1;37m |\033[1;32m\033[0m\n"
        "\033[1;32m   \033[1;37m |\033[1;32m 其他\033[1;37m |\033[1;32m 這裏\033[1;37m |\033[1;32m 一樣        \033[1;37m |\033[1;32m\033[0m\n"
        "\033[1;32m   \033[1;37m |\033[1;32m 數據\033[1;37m |\033[1;32m 動作\033[1;37m |\033[1;32m unicode輸出!\033[1;37m |\033[1;32m\033[0m\n"
        '\n'
        "\033[1;37m1 feature (\033[1;32m1 passed\033[1;37m)\033[0m\n"
        "\033[1;37m3 scenarios (\033[1;32m3 passed\033[1;37m)\033[0m\n"
        "\033[1;37m9 steps (\033[1;32m9 passed\033[1;37m)\033[0m\n"
    )
Example #13
0
def test_output_outlines_success_colorful():
    "Language: pt-br -> sucess outlines colorful"

    runner = Runner(join_path('pt-br', 'success', 'outlines.feature'),
                    verbosity=4)
    runner.run()

    assert_stdout_lines(
        u'\n'
        u'\033[1;37mFuncionalidade: outlines em português                                  \033[1;30m# tests/functional/language_specific_features/pt-br/success/outlines.feature:3\033[0m\n'
        u'\033[1;37m  Como um programador                                                  \033[1;30m# tests/functional/language_specific_features/pt-br/success/outlines.feature:4\033[0m\n'
        u'\033[1;37m  Eu quero testar cenários esquemáticos                                \033[1;30m# tests/functional/language_specific_features/pt-br/success/outlines.feature:5\033[0m\n'
        u'\033[1;37m  Para ver o output em pt-br                                           \033[1;30m# tests/functional/language_specific_features/pt-br/success/outlines.feature:6\033[0m\n'
        u'\n'
        u'\033[1;37m  Esquema do Cenário: Fazer nada, repetidas vezes, através de esquemas \033[1;30m# tests/functional/language_specific_features/pt-br/success/outlines.feature:8\033[0m\n'
        u'\033[0;36m    Dado que tenho o <dado1>                                           \033[1;30m# tests/functional/language_specific_features/pt-br/success/outlines_steps.py:13\033[0m\n'
        u'\033[0;36m    Quando eu faço algo com <isso>                                     \033[1;30m# tests/functional/language_specific_features/pt-br/success/outlines_steps.py:22\033[0m\n'
        u'\033[0;36m    Então eu fico feliz em ver <aquilo>                                \033[1;30m# tests/functional/language_specific_features/pt-br/success/outlines_steps.py:31\033[0m\n'
        u'\n'
        u'\033[1;37m  Exemplos:\033[0m\n'
        u'\033[0;36m   \033[1;37m |\033[0;36m dado1\033[1;37m |\033[0;36m isso       \033[1;37m |\033[0;36m aquilo       \033[1;37m |\033[0;36m\033[0m\n'
        u'\033[1;32m   \033[1;37m |\033[1;32m algo \033[1;37m |\033[1;32m assim      \033[1;37m |\033[1;32m funcional    \033[1;37m |\033[1;32m\033[0m\n'
        u'\033[1;32m   \033[1;37m |\033[1;32m outro\033[1;37m |\033[1;32m aqui       \033[1;37m |\033[1;32m também       \033[1;37m |\033[1;32m\033[0m\n'
        u'\033[1;32m   \033[1;37m |\033[1;32m dados\033[1;37m |\033[1;32m funcionarão\033[1;37m |\033[1;32m com unicode !\033[1;37m |\033[1;32m\033[0m\n'
        u'\n'
        u"\033[1;37m1 feature (\033[1;32m1 passed\033[1;37m)\033[0m\n" \
        u"\033[1;37m3 scenarios (\033[1;32m3 passed\033[1;37m)\033[0m\n" \
        u"\033[1;37m9 steps (\033[1;32m9 passed\033[1;37m)\033[0m\n"
    )
Example #14
0
def test_output_outlines2_success_colorful():
    "Language: fr -> sucess outlines colorful, alternate name"

    runner = Runner(join_path('fr', 'success', 'outlines2.feature'),
                    verbosity=4)
    runner.run()

    assert_stdout_lines(
        '\n'
        '\033[1;37mFonctionnalité: Plan de scénario en français \033[1;30m# tests/functional/language_specific_features/fr/success/outlines2.feature:4\033[0m\n'
        '\033[1;37m  En tant que programmeur                    \033[1;30m# tests/functional/language_specific_features/fr/success/outlines2.feature:5\033[0m\n'
        '\033[1;37m  Je veux tester les plans de scénario       \033[1;30m# tests/functional/language_specific_features/fr/success/outlines2.feature:6\033[0m\n'
        '\033[1;37m  Et surtout les sorties                     \033[1;30m# tests/functional/language_specific_features/fr/success/outlines2.feature:7\033[0m\n'
        '\n'
        '\033[1;37m  Plan de Scénario: Faire la sieste          \033[1;30m# tests/functional/language_specific_features/fr/success/outlines2.feature:9\033[0m\n'
        '\033[0;36m    Soit un après midi de <mois>             \033[1;30m# tests/functional/language_specific_features/fr/success/outlines_steps.py:13\033[0m\n'
        '\033[0;36m    Quand je veux faire la sieste            \033[1;30m# tests/functional/language_specific_features/fr/success/outlines_steps.py:22\033[0m\n'
        '\033[0;36m    Je peux aller <lieux>                    \033[1;30m# tests/functional/language_specific_features/fr/success/outlines_steps.py:26\033[0m\n'
        '\n'
        '\033[1;37m  Exemples:\033[0m\n'
        '\033[0;36m   \033[1;37m |\033[0;36m mois   \033[1;37m |\033[0;36m lieux             \033[1;37m |\033[0;36m\033[0m\n'
        '\033[1;32m   \033[1;37m |\033[1;32m janvier\033[1;37m |\033[1;32m près de la cheminé\033[1;37m |\033[1;32m\033[0m\n'
        '\033[1;32m   \033[1;37m |\033[1;32m aôut   \033[1;37m |\033[1;32m dans le transat   \033[1;37m |\033[1;32m\033[0m\n'
        '\033[1;32m   \033[1;37m |\033[1;32m octobre\033[1;37m |\033[1;32m dans le canapé    \033[1;37m |\033[1;32m\033[0m\n'
        '\n'
        '\033[1;37m1 feature (\033[1;32m1 passed\033[1;37m)\033[0m\n'
        '\033[1;37m3 scenarios (\033[1;32m3 passed\033[1;37m)\033[0m\n'
        '\033[1;37m9 steps (\033[1;32m9 passed\033[1;37m)\033[0m\n')
Example #15
0
def test_output_outlines_success_colorful():
    "Language: pt-br -> sucess outlines colorful"

    runner = Runner(join_path('pt-br', 'success', 'outlines.feature'), verbosity=4)
    runner.run()

    assert_stdout_lines(
        u'\n'
        u'\033[1;37mFuncionalidade: outlines em português                                  \033[1;30m# tests/functional/language_specific_features/pt-br/success/outlines.feature:3\033[0m\n'
        u'\033[1;37m  Como um programador                                                  \033[1;30m# tests/functional/language_specific_features/pt-br/success/outlines.feature:4\033[0m\n'
        u'\033[1;37m  Eu quero testar cenários esquemáticos                                \033[1;30m# tests/functional/language_specific_features/pt-br/success/outlines.feature:5\033[0m\n'
        u'\033[1;37m  Para ver o output em pt-br                                           \033[1;30m# tests/functional/language_specific_features/pt-br/success/outlines.feature:6\033[0m\n'
        u'\n'
        u'\033[1;37m  Esquema do Cenário: Fazer nada, repetidas vezes, através de esquemas \033[1;30m# tests/functional/language_specific_features/pt-br/success/outlines.feature:8\033[0m\n'
        u'\033[0;36m    Dado que tenho o <dado1>                                           \033[1;30m# tests/functional/language_specific_features/pt-br/success/outlines_steps.py:13\033[0m\n'
        u'\033[0;36m    Quando eu faço algo com <isso>                                     \033[1;30m# tests/functional/language_specific_features/pt-br/success/outlines_steps.py:22\033[0m\n'
        u'\033[0;36m    Então eu fico feliz em ver <aquilo>                                \033[1;30m# tests/functional/language_specific_features/pt-br/success/outlines_steps.py:31\033[0m\n'
        u'\n'
        u'\033[1;37m  Exemplos:\033[0m\n'
        u'\033[0;36m   \033[1;37m |\033[0;36m dado1\033[1;37m |\033[0;36m isso       \033[1;37m |\033[0;36m aquilo       \033[1;37m |\033[0;36m\033[0m\n'
        u'\033[1;32m   \033[1;37m |\033[1;32m algo \033[1;37m |\033[1;32m assim      \033[1;37m |\033[1;32m funcional    \033[1;37m |\033[1;32m\033[0m\n'
        u'\033[1;32m   \033[1;37m |\033[1;32m outro\033[1;37m |\033[1;32m aqui       \033[1;37m |\033[1;32m também       \033[1;37m |\033[1;32m\033[0m\n'
        u'\033[1;32m   \033[1;37m |\033[1;32m dados\033[1;37m |\033[1;32m funcionarão\033[1;37m |\033[1;32m com unicode !\033[1;37m |\033[1;32m\033[0m\n'
        u'\n'
        u"\033[1;37m1 feature (\033[1;32m1 passed\033[1;37m)\033[0m\n" \
        u"\033[1;37m3 scenarios (\033[1;32m3 passed\033[1;37m)\033[0m\n" \
        u"\033[1;37m9 steps (\033[1;32m9 passed\033[1;37m)\033[0m\n"
    )
Example #16
0
def test_output_outlines_success_colorless():
    "Language: zh-TW -> sucess outlines colorless"

    runner = Runner(join_path('zh-TW', 'success', 'outlines.feature'),
                    verbosity=3)
    runner.run()

    assert_stdout_lines(
        u"\n"
        u"特性: 中文場景模板           # tests/functional/language_specific_features/zh-TW/success/outlines.feature:3\n"
        u"  中文場景模板圖表測試       # tests/functional/language_specific_features/zh-TW/success/outlines.feature:4\n"
        u"\n"
        u"  場景模板: 用表格描述場景   # tests/functional/language_specific_features/zh-TW/success/outlines.feature:6\n"
        u"    如果 輸入是<輸入>        # tests/functional/language_specific_features/zh-TW/success/outlines_steps.py:13\n"
        u"    當 執行<處理>時          # tests/functional/language_specific_features/zh-TW/success/outlines_steps.py:22\n"
        u"    那麽 得到<結果>          # tests/functional/language_specific_features/zh-TW/success/outlines_steps.py:31\n"
        u"\n"
        u"  例如:\n"
        u"    | 輸入 | 處理 | 結果         |\n"
        u"    | 什麽 | 這個 | 功能         |\n"
        u"    | 其他 | 這裏 | 一樣         |\n"
        u"    | 數據 | 動作 | unicode輸出! |\n"
        u"\n"
        u"1 feature (1 passed)\n"
        u"3 scenarios (3 passed)\n"
        u"9 steps (9 passed)\n")
Example #17
0
def test_output_outlines_success_colorful():
    "Language: zh-CN -> sucess outlines colorful"

    runner = Runner(join_path('zh-CN', 'success', 'outlines.feature'),
                    verbosity=4)
    runner.run()

    assert_stdout_lines(
        u'\n'
        u"\033[1;37m特性: 中文场景模板           \033[1;30m# tests/functional/language_specific_features/zh-CN/success/outlines.feature:3\033[0m\n"
        u"\033[1;37m  中文场景模板图表测试       \033[1;30m# tests/functional/language_specific_features/zh-CN/success/outlines.feature:4\033[0m\n"
        u'\n'
        u"\033[1;37m  场景模板: 用表格描述场景   \033[1;30m# tests/functional/language_specific_features/zh-CN/success/outlines.feature:6\033[0m\n"
        u"\033[0;36m    如果 输入是<输入>        \033[1;30m# tests/functional/language_specific_features/zh-CN/success/outlines_steps.py:13\033[0m\n"
        u"\033[0;36m    当 执行<处理>时          \033[1;30m# tests/functional/language_specific_features/zh-CN/success/outlines_steps.py:22\033[0m\n"
        u"\033[0;36m    那么 得到<结果>          \033[1;30m# tests/functional/language_specific_features/zh-CN/success/outlines_steps.py:31\033[0m\n"
        u'\n'
        u"\033[1;37m  例如:\033[0m\n"
        u"\033[0;36m   \033[1;37m |\033[0;36m 输入\033[1;37m |\033[0;36m 处理\033[1;37m |\033[0;36m 结果        \033[1;37m |\033[0;36m\033[0m\n"
        u"\033[1;32m   \033[1;37m |\033[1;32m 什么\033[1;37m |\033[1;32m 这个\033[1;37m |\033[1;32m 功能        \033[1;37m |\033[1;32m\033[0m\n"
        u"\033[1;32m   \033[1;37m |\033[1;32m 其他\033[1;37m |\033[1;32m 这里\033[1;37m |\033[1;32m 一样        \033[1;37m |\033[1;32m\033[0m\n"
        u"\033[1;32m   \033[1;37m |\033[1;32m 数据\033[1;37m |\033[1;32m 动作\033[1;37m |\033[1;32m unicode输出!\033[1;37m |\033[1;32m\033[0m\n"
        u'\n'
        u"\033[1;37m1 feature (\033[1;32m1 passed\033[1;37m)\033[0m\n"
        u"\033[1;37m3 scenarios (\033[1;32m3 passed\033[1;37m)\033[0m\n"
        u"\033[1;37m9 steps (\033[1;32m9 passed\033[1;37m)\033[0m\n")
Example #18
0
def test_output_outlines_success_colorless():
    "Language: fr -> sucess outlines colorless"

    runner = Runner(join_path('fr', 'success', 'outlines.feature'),
                    verbosity=3)
    runner.run()

    assert_stdout_lines(
        '\n'
        'Fonctionnalité: Plan de scénario en français # tests/functional/language_specific_features/fr/success/outlines.feature:4\n'
        '  En tant que programmeur                    # tests/functional/language_specific_features/fr/success/outlines.feature:5\n'
        '  Je veux tester les plans de scénario       # tests/functional/language_specific_features/fr/success/outlines.feature:6\n'
        '  Et surtout les sorties                     # tests/functional/language_specific_features/fr/success/outlines.feature:7\n'
        '\n'
        '  Plan de Scénario: Faire la sieste          # tests/functional/language_specific_features/fr/success/outlines.feature:9\n'
        '    Soit un après midi de <mois>             # tests/functional/language_specific_features/fr/success/outlines_steps.py:13\n'
        '    Quand je veux faire la sieste            # tests/functional/language_specific_features/fr/success/outlines_steps.py:22\n'
        '    Je peux aller <lieux>                    # tests/functional/language_specific_features/fr/success/outlines_steps.py:26\n'
        '\n'
        '  Exemples:\n'
        '    | mois    | lieux              |\n'
        '    | janvier | près de la cheminé |\n'
        '    | aôut    | dans le transat    |\n'
        '    | octobre | dans le canapé     |\n'
        '\n'
        '1 feature (1 passed)\n'
        '3 scenarios (3 passed)\n'
        '9 steps (9 passed)\n')
Example #19
0
def test_output_with_success_colorful_many_features():
    "Testing the colorful output of many successful features"

    runner = Runner(join(abspath(dirname(__file__)), 'output_features', 'many_successful_features'), verbosity=4)
    runner.run()

    assert_stdout_lines(
        "\n"
        "\033[1;37mFeature: First feature, of many              \033[1;30m# tests/functional/output_features/many_successful_features/one.feature:1\033[0m\n"
        "\033[1;37m  In order to make lettuce more robust       \033[1;30m# tests/functional/output_features/many_successful_features/one.feature:2\033[0m\n"
        "\033[1;37m  As a programmer                            \033[1;30m# tests/functional/output_features/many_successful_features/one.feature:3\033[0m\n"
        "\033[1;37m  I want to test its output on many features \033[1;30m# tests/functional/output_features/many_successful_features/one.feature:4\033[0m\n"
        "\n"
        "\033[1;37m  Scenario: Do nothing                       \033[1;30m# tests/functional/output_features/many_successful_features/one.feature:6\033[0m\n"
        "\033[1;30m    Given I do nothing                       \033[1;30m# tests/functional/output_features/many_successful_features/dumb_steps.py:6\033[0m\n"
        "\033[A\033[1;32m    Given I do nothing                       \033[1;30m# tests/functional/output_features/many_successful_features/dumb_steps.py:6\033[0m\n"
        "\033[1;30m    Then I see that the test passes          \033[1;30m# tests/functional/output_features/many_successful_features/dumb_steps.py:8\033[0m\n"
        "\033[A\033[1;32m    Then I see that the test passes          \033[1;30m# tests/functional/output_features/many_successful_features/dumb_steps.py:8\033[0m\n"
        "\n"
        "\033[1;37mFeature: Second feature, of many    \033[1;30m# tests/functional/output_features/many_successful_features/two.feature:1\033[0m\n"
        "\033[1;37m  I just want to see it green :)    \033[1;30m# tests/functional/output_features/many_successful_features/two.feature:2\033[0m\n"
        "\n"
        "\033[1;37m  Scenario: Do nothing              \033[1;30m# tests/functional/output_features/many_successful_features/two.feature:4\033[0m\n"
        "\033[1;30m    Given I do nothing              \033[1;30m# tests/functional/output_features/many_successful_features/dumb_steps.py:6\033[0m\n"
        "\033[A\033[1;32m    Given I do nothing              \033[1;30m# tests/functional/output_features/many_successful_features/dumb_steps.py:6\033[0m\n"
        "\033[1;30m    Then I see that the test passes \033[1;30m# tests/functional/output_features/many_successful_features/dumb_steps.py:8\033[0m\n"
        "\033[A\033[1;32m    Then I see that the test passes \033[1;30m# tests/functional/output_features/many_successful_features/dumb_steps.py:8\033[0m\n"
        "\n"
        "\033[1;37m2 features (\033[1;32m2 passed\033[1;37m)\033[0m\n" \
        "\033[1;37m2 scenarios (\033[1;32m2 passed\033[1;37m)\033[0m\n" \
        "\033[1;37m4 steps (\033[1;32m4 passed\033[1;37m)\033[0m\n"
    )
Example #20
0
def test_output_outlines_success_colorful():
    "Language: ja -> sucess outlines colorful"

    runner = Runner(join_path('ja', 'success', 'outlines.feature'),
                    verbosity=4)
    runner.run()

    assert_stdout_lines(
        '\n'
        "\033[1;37mフィーチャ: アウトラインを日本語で書く           \033[1;30m# tests/functional/language_specific_features/ja/success/outlines.feature:3\033[0m\n"
        "\033[1;37m  図表のテストをパスすること                     \033[1;30m# tests/functional/language_specific_features/ja/success/outlines.feature:4\033[0m\n"
        '\n'
        "\033[1;37m  シナリオアウトライン: 全てのテストで何もしない \033[1;30m# tests/functional/language_specific_features/ja/success/outlines.feature:6\033[0m\n"
        "\033[0;36m    前提 入力値を <データ1> とし                 \033[1;30m# tests/functional/language_specific_features/ja/success/outlines_steps.py:13\033[0m\n"
        "\033[0;36m    もし 処理 <方法> を使って                    \033[1;30m# tests/functional/language_specific_features/ja/success/outlines_steps.py:22\033[0m\n"
        "\033[0;36m    ならば 表示は <結果> である                  \033[1;30m# tests/functional/language_specific_features/ja/success/outlines_steps.py:31\033[0m\n"
        '\n'
        "\033[1;37m  例:\033[0m\n"
        "\033[0;36m   \033[1;37m |\033[0;36m データ1\033[1;37m |\033[0;36m 方法\033[1;37m |\033[0;36m 結果      \033[1;37m |\033[0;36m\033[0m\n"
        "\033[1;32m   \033[1;37m |\033[1;32m 何か   \033[1;37m |\033[1;32m これ\033[1;37m |\033[1;32m 機能      \033[1;37m |\033[1;32m\033[0m\n"
        "\033[1;32m   \033[1;37m |\033[1;32m その他 \033[1;37m |\033[1;32m ここ\033[1;37m |\033[1;32m 同じ      \033[1;37m |\033[1;32m\033[0m\n"
        "\033[1;32m   \033[1;37m |\033[1;32m データ \033[1;37m |\033[1;32m 動く\033[1;37m |\033[1;32m unicodeで!\033[1;37m |\033[1;32m\033[0m\n"
        '\n'
        "\033[1;37m1 feature (\033[1;32m1 passed\033[1;37m)\033[0m\n"
        "\033[1;37m3 scenarios (\033[1;32m3 passed\033[1;37m)\033[0m\n"
        "\033[1;37m9 steps (\033[1;32m9 passed\033[1;37m)\033[0m\n")
Example #21
0
def test_output_outlines2_success_colorful():
    "Language: fr -> sucess outlines colorful, alternate name"

    runner = Runner(join_path('fr', 'success', 'outlines2.feature'), verbosity=4)
    runner.run()

    assert_stdout_lines(
        '\n'
        '\033[1;37mFonctionnalité: Plan de scénario en français \033[1;30m# tests/functional/language_specific_features/fr/success/outlines2.feature:4\033[0m\n'
        '\033[1;37m  En tant que programmeur                    \033[1;30m# tests/functional/language_specific_features/fr/success/outlines2.feature:5\033[0m\n'
        '\033[1;37m  Je veux tester les plans de scénario       \033[1;30m# tests/functional/language_specific_features/fr/success/outlines2.feature:6\033[0m\n'
        '\033[1;37m  Et surtout les sorties                     \033[1;30m# tests/functional/language_specific_features/fr/success/outlines2.feature:7\033[0m\n'
        '\n'
        '\033[1;37m  Plan de Scénario: Faire la sieste          \033[1;30m# tests/functional/language_specific_features/fr/success/outlines2.feature:9\033[0m\n'
        '\033[0;36m    Soit un après midi de <mois>             \033[1;30m# tests/functional/language_specific_features/fr/success/outlines_steps.py:13\033[0m\n'
        '\033[0;36m    Quand je veux faire la sieste            \033[1;30m# tests/functional/language_specific_features/fr/success/outlines_steps.py:22\033[0m\n'
        '\033[0;36m    Je peux aller <lieux>                    \033[1;30m# tests/functional/language_specific_features/fr/success/outlines_steps.py:26\033[0m\n'
        '\n'
        '\033[1;37m  Exemples:\033[0m\n'
        '\033[0;36m   \033[1;37m |\033[0;36m mois   \033[1;37m |\033[0;36m lieux             \033[1;37m |\033[0;36m\033[0m\n'
        '\033[1;32m   \033[1;37m |\033[1;32m janvier\033[1;37m |\033[1;32m près de la cheminé\033[1;37m |\033[1;32m\033[0m\n'
        '\033[1;32m   \033[1;37m |\033[1;32m aôut   \033[1;37m |\033[1;32m dans le transat   \033[1;37m |\033[1;32m\033[0m\n'
        '\033[1;32m   \033[1;37m |\033[1;32m octobre\033[1;37m |\033[1;32m dans le canapé    \033[1;37m |\033[1;32m\033[0m\n'
        '\n'
        '\033[1;37m1 feature (\033[1;32m1 passed\033[1;37m)\033[0m\n'
        '\033[1;37m3 scenarios (\033[1;32m3 passed\033[1;37m)\033[0m\n'
        '\033[1;37m9 steps (\033[1;32m9 passed\033[1;37m)\033[0m\n'
    )
Example #22
0
def test_output_of_table_with_success_colorless():
    "Language: pt-br -> sucess table colorless"

    runner = Runner(join_path('pt-br', 'success', 'table.feature'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        u"\n"
        u"Funcionalidade: feature burra, com tabela      # tests/functional/language_specific_features/pt-br/success/table.feature:3\n"
        u"  Como um programador                          # tests/functional/language_specific_features/pt-br/success/table.feature:4\n"
        u"  Eu quero testar steps com tabelas            # tests/functional/language_specific_features/pt-br/success/table.feature:5\n"
        u"  Para ver o output em pt-br                   # tests/functional/language_specific_features/pt-br/success/table.feature:6\n"
        u"\n"
        u"  Cenário: Fazer nada, com tabelas :)          # tests/functional/language_specific_features/pt-br/success/table.feature:8\n"
        u"    Dado que eu brinco com os seguintes itens: # tests/functional/language_specific_features/pt-br/success/table_steps.py:6\n"
        u"      | id | description  |\n"
        u"      | 12 | some desc    |\n"
        u"      | 64 | another desc |\n"
        u"\033[A\033[A\033[A\033[A    Dado que eu brinco com os seguintes itens: # tests/functional/language_specific_features/pt-br/success/table_steps.py:6\n"
        u"      | id | description  |\n"
        u"      | 12 | some desc    |\n"
        u"      | 64 | another desc |\n"
        u"\n"
        u"1 feature (1 passed)\n"
        u"1 scenario (1 passed)\n"
        u"1 step (1 passed)\n"
    )
Example #23
0
def test_output_outlines_success_colorless():
    "Language: zh-CN -> sucess outlines colorless"

    runner = Runner(join_path('zh-CN', 'success', 'outlines.feature'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        "\n"
        "特性: 中文场景模板           # tests/functional/language_specific_features/zh-CN/success/outlines.feature:3\n"
        "  中文场景模板图表测试       # tests/functional/language_specific_features/zh-CN/success/outlines.feature:4\n"
        "\n"
        "  场景模板: 用表格描述场景   # tests/functional/language_specific_features/zh-CN/success/outlines.feature:6\n"
        "    如果 输入是<输入>        # tests/functional/language_specific_features/zh-CN/success/outlines_steps.py:13\n"
        "    当 执行<处理>时          # tests/functional/language_specific_features/zh-CN/success/outlines_steps.py:22\n"
        "    那么 得到<结果>          # tests/functional/language_specific_features/zh-CN/success/outlines_steps.py:31\n"
        "\n"
        "  例如:\n"
        "    | 输入 | 处理 | 结果         |\n"
        "    | 什么 | 这个 | 功能         |\n"
        "    | 其他 | 这里 | 一样         |\n"
        "    | 数据 | 动作 | unicode输出! |\n"
        "\n"
        "1 feature (1 passed)\n"
        "3 scenarios (3 passed)\n"
        "9 steps (9 passed)\n"
    )
Example #24
0
def test_output_outlines_success_colorful():
    "Language: ru -> sucess outlines colorful"

    runner = Runner(join_path("ru", "success", "outlines.feature"), verbosity=4)
    runner.run()

    assert_stdout_lines(
        "\n"
        "\x1b[1;37m\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b: \u041f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0432\u044b\u0432\u043e\u0434 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043d\u043e\u0433\u043e \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u044f                                  \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines.feature:3\x1b[0m\n"
        "\x1b[1;37m  \u041a\u0430\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442                                                                  \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines.feature:4\x1b[0m\n"
        "\x1b[1;37m  \u0414\u043b\u044f \u0442\u043e\u0433\u043e \u0447\u043e\u0431\u044b lettuce \u0431\u044b\u043b \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u043c                                               \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines.feature:5\x1b[0m\n"
        "\x1b[1;37m  \u042f \u0445\u043e\u0447\u0443, \u0447\u0442\u043e \u0431\u044b \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0438 \u0441\u043e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438 \u043d\u0430 \u0440\u0443\u0441\u0441\u043a\u043e\u043c                        \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines.feature:6\x1b[0m\n"
        "\n"
        "\x1b[1;37m  \u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u044f: \u0417\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0444\u043e\u0440\u043c\u0443                                              \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines.feature:8\x1b[0m\n"
        '\x1b[0;36m    \u041f\u0443\u0441\u043a\u0430\u0439 \u044f \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u044e \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0435  "http://sona-studio.com/contacts/"               \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines_steps.py:12\x1b[0m\n'
        '\x1b[0;36m    \u041a\u043e\u0433\u0434\u0430 \u044f \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u044e \u0432 \u043f\u043e\u043b\u0435 "\u0418\u043c\u044f" "<\u0438\u043c\u044f>"                                          \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines_steps.py:16\x1b[0m\n'
        '\x1b[0;36m    \u0418 \u044f \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u044e \u0432 \u043f\u043e\u043b\u0435 "Email" "<email>"                                          \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines_steps.py:24\x1b[0m\n'
        '\x1b[0;36m    \u0418 \u044f \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u044e \u0432 \u043f\u043e\u043b\u0435 "\u0421\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435" "<\u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435>"                                  \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines_steps.py:32\x1b[0m\n'
        '\x1b[0;36m    \u0418 \u044f \u043d\u0430\u0436\u0438\u043c\u0430\u044e "\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c"                                                        \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines_steps.py:40\x1b[0m\n'
        '\x1b[0;36m    \u0422\u043e\u0433\u0434\u0430 \u044f \u043f\u043e\u043b\u0443\u0447\u0430\u044e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 "\u0421\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0432\u0430\u0448\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435"                          \x1b[1;30m# tests/functional/language_specific_features/ru/success/outlines_steps.py:43\x1b[0m\n'
        "\n"
        "\x1b[1;37m  \u041f\u0440\u0438\u043c\u0435\u0440\u044b:\x1b[0m\n"
        "\x1b[0;36m   \x1b[1;37m |\x1b[0;36m \u0438\u043c\u044f             \x1b[1;37m |\x1b[0;36m email         \x1b[1;37m |\x1b[0;36m \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435                             \x1b[1;37m |\x1b[0;36m\x1b[0m\n"
        "\x1b[1;32m   \x1b[1;37m |\x1b[1;32m \u0412\u0438\u0442\u0430\u043b\u0438\u0439 \u0418\u0433\u043e\u0440\u0435\u0432\u0438\u0447\x1b[1;37m |\x1b[1;32m [email protected]\x1b[1;37m |\x1b[1;32m \u0415\u0441\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442, \u043d\u0443\u0436\u043d\u043e \u043e\u0431\u0441\u0443\u0434\u0438\u0442\u044c\x1b[1;37m |\x1b[1;32m\x1b[0m\n"
        "\x1b[1;32m   \x1b[1;37m |\x1b[1;32m \u041c\u0430\u0440\u0438\u043d\u0430 \u0411\u0430\u043d\u0440\u0430\u0443\u043b  \x1b[1;37m |\x1b[1;32m [email protected]\x1b[1;37m |\x1b[1;32m \u041c\u043d\u0435 \u043d\u0440\u0430\u0432\u044f\u0442\u0441\u044f \u0432\u0430\u0448\u0438 \u0434\u0438\u0437\u0430\u0439\u043d\u044b, \u0445\u043e\u0447\u0443 \u0441\u0430\u0439\u0442  \x1b[1;37m |\x1b[1;32m\x1b[0m\n"
        "\n"
        "\x1b[1;37m1 feature (\x1b[1;32m1 passed\x1b[1;37m)\x1b[0m\n"
        "\x1b[1;37m2 scenarios (\x1b[1;32m2 passed\x1b[1;37m)\x1b[0m\n"
        "\x1b[1;37m12 steps (\x1b[1;32m12 passed\x1b[1;37m)\x1b[0m\n"
    )
Example #25
0
def test_output_outlines_success_colorless():
    "Language: ru -> sucess outlines colorless"

    runner = Runner(join_path("ru", "success", "outlines.feature"), verbosity=3)
    runner.run()

    assert_stdout_lines(
        "\n"
        "Функционал: Проверить вывод структурного сценария                                  # tests/functional/language_specific_features/ru/success/outlines.feature:3\n"
        "  Как программист                                                                  # tests/functional/language_specific_features/ru/success/outlines.feature:4\n"
        "  Для того чобы lettuce был надежным                                               # tests/functional/language_specific_features/ru/success/outlines.feature:5\n"
        "  Я хочу, что бы сценарии со структурой работали на русском                        # tests/functional/language_specific_features/ru/success/outlines.feature:6\n"
        "\n"
        "  Структура сценария: Заполнить форму                                              # tests/functional/language_specific_features/ru/success/outlines.feature:8\n"
        '    Пускай я открываю в браузере  "http://sona-studio.com/contacts/"               # tests/functional/language_specific_features/ru/success/outlines_steps.py:12\n'
        '    Когда я заполняю в поле "Имя" "<имя>"                                          # tests/functional/language_specific_features/ru/success/outlines_steps.py:16\n'
        '    И я заполняю в поле "Email" "<email>"                                          # tests/functional/language_specific_features/ru/success/outlines_steps.py:24\n'
        '    И я заполняю в поле "Сообщение" "<сообщение>"                                  # tests/functional/language_specific_features/ru/success/outlines_steps.py:32\n'
        '    И я нажимаю "Отправить"                                                        # tests/functional/language_specific_features/ru/success/outlines_steps.py:40\n'
        '    Тогда я получаю сообщение "Спасибо за ваше сообщение"                          # tests/functional/language_specific_features/ru/success/outlines_steps.py:43\n'
        "\n"
        "  Примеры:\n"
        "    | имя              | email          | сообщение                              |\n"
        "    | Виталий Игоревич | [email protected] | Есть интересный проект, нужно обсудить |\n"
        "    | Марина Банраул   | [email protected] | Мне нравятся ваши дизайны, хочу сайт   |\n"
        "\n"
        "1 feature (1 passed)\n"
        "2 scenarios (2 passed)\n"
        "12 steps (12 passed)\n"
    )
Example #26
0
def test_output_outlines_success_colorless():
    "Language: ja -> sucess outlines colorless"

    runner = Runner(join_path('ja', 'success', 'outlines.feature'),
                    verbosity=3)
    runner.run()

    assert_stdout_lines(
        "\n"
        "フィーチャ: アウトラインを日本語で書く           # tests/functional/language_specific_features/ja/success/outlines.feature:3\n"
        "  図表のテストをパスすること                     # tests/functional/language_specific_features/ja/success/outlines.feature:4\n"
        "\n"
        "  シナリオアウトライン: 全てのテストで何もしない # tests/functional/language_specific_features/ja/success/outlines.feature:6\n"
        "    前提 入力値を <データ1> とし                 # tests/functional/language_specific_features/ja/success/outlines_steps.py:13\n"
        "    もし 処理 <方法> を使って                    # tests/functional/language_specific_features/ja/success/outlines_steps.py:22\n"
        "    ならば 表示は <結果> である                  # tests/functional/language_specific_features/ja/success/outlines_steps.py:31\n"
        "\n"
        "  例:\n"
        "    | データ1 | 方法 | 結果       |\n"
        "    | 何か    | これ | 機能       |\n"
        "    | その他  | ここ | 同じ       |\n"
        "    | データ  | 動く | unicodeで! |\n"
        "\n"
        "1 feature (1 passed)\n"
        "3 scenarios (3 passed)\n"
        "9 steps (9 passed)\n")
Example #27
0
def test_output_outlines_success_colorful():
    "Language: ja -> sucess outlines colorful"

    runner = Runner(join_path('ja', 'success', 'outlines.feature'), verbosity=4)
    runner.run()

    assert_stdout_lines(
        '\n'
        "\033[1;37mフィーチャ: アウトラインを日本語で書く           \033[1;30m# tests/functional/language_specific_features/ja/success/outlines.feature:3\033[0m\n"
        "\033[1;37m  図表のテストをパスすること                     \033[1;30m# tests/functional/language_specific_features/ja/success/outlines.feature:4\033[0m\n"
        '\n'
        "\033[1;37m  シナリオアウトライン: 全てのテストで何もしない \033[1;30m# tests/functional/language_specific_features/ja/success/outlines.feature:6\033[0m\n"
        "\033[0;36m    前提 入力値を <データ1> とし                 \033[1;30m# tests/functional/language_specific_features/ja/success/outlines_steps.py:13\033[0m\n"
        "\033[0;36m    もし 処理 <方法> を使って                    \033[1;30m# tests/functional/language_specific_features/ja/success/outlines_steps.py:22\033[0m\n"
        "\033[0;36m    ならば 表示は <結果> である                  \033[1;30m# tests/functional/language_specific_features/ja/success/outlines_steps.py:31\033[0m\n"
        '\n'
        "\033[1;37m  例:\033[0m\n"
        "\033[0;36m   \033[1;37m |\033[0;36m データ1\033[1;37m |\033[0;36m 方法\033[1;37m |\033[0;36m 結果      \033[1;37m |\033[0;36m\033[0m\n"
        "\033[1;32m   \033[1;37m |\033[1;32m 何か   \033[1;37m |\033[1;32m これ\033[1;37m |\033[1;32m 機能      \033[1;37m |\033[1;32m\033[0m\n"
        "\033[1;32m   \033[1;37m |\033[1;32m その他 \033[1;37m |\033[1;32m ここ\033[1;37m |\033[1;32m 同じ      \033[1;37m |\033[1;32m\033[0m\n"
        "\033[1;32m   \033[1;37m |\033[1;32m データ \033[1;37m |\033[1;32m 動く\033[1;37m |\033[1;32m unicodeで!\033[1;37m |\033[1;32m\033[0m\n"
        '\n'
        "\033[1;37m1 feature (\033[1;32m1 passed\033[1;37m)\033[0m\n"
        "\033[1;37m3 scenarios (\033[1;32m3 passed\033[1;37m)\033[0m\n"
        "\033[1;37m9 steps (\033[1;32m9 passed\033[1;37m)\033[0m\n"
    )
Example #28
0
def test_output_outlines_success_colorless():
    "Language: ja -> sucess outlines colorless"

    runner = Runner(join_path('ja', 'success', 'outlines.feature'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        "\n"
        "フィーチャ: アウトラインを日本語で書く           # tests/functional/language_specific_features/ja/success/outlines.feature:3\n"
        "  図表のテストをパスすること                     # tests/functional/language_specific_features/ja/success/outlines.feature:4\n"
        "\n"
        "  シナリオアウトライン: 全てのテストで何もしない # tests/functional/language_specific_features/ja/success/outlines.feature:6\n"
        "    前提 入力値を <データ1> とし                 # tests/functional/language_specific_features/ja/success/outlines_steps.py:13\n"
        "    もし 処理 <方法> を使って                    # tests/functional/language_specific_features/ja/success/outlines_steps.py:22\n"
        "    ならば 表示は <結果> である                  # tests/functional/language_specific_features/ja/success/outlines_steps.py:31\n"
        "\n"
        "  例:\n"
        "    | データ1 | 方法 | 結果       |\n"
        "    | 何か    | これ | 機能       |\n"
        "    | その他  | ここ | 同じ       |\n"
        "    | データ  | 動く | unicodeで! |\n"
        "\n"
        "1 feature (1 passed)\n"
        "3 scenarios (3 passed)\n"
        "9 steps (9 passed)\n"
    )
Example #29
0
def test_output_outlines_success_colorful():
    "Language: zh-CN -> sucess outlines colorful"

    runner = Runner(join_path('zh-CN', 'success', 'outlines.feature'), verbosity=4)
    runner.run()

    assert_stdout_lines(
        '\n'
        "\033[1;37m特性: 中文场景模板           \033[1;30m# tests/functional/language_specific_features/zh-CN/success/outlines.feature:3\033[0m\n"
        "\033[1;37m  中文场景模板图表测试       \033[1;30m# tests/functional/language_specific_features/zh-CN/success/outlines.feature:4\033[0m\n"
        '\n'
        "\033[1;37m  场景模板: 用表格描述场景   \033[1;30m# tests/functional/language_specific_features/zh-CN/success/outlines.feature:6\033[0m\n"
        "\033[0;36m    如果 输入是<输入>        \033[1;30m# tests/functional/language_specific_features/zh-CN/success/outlines_steps.py:13\033[0m\n"
        "\033[0;36m    当 执行<处理>时          \033[1;30m# tests/functional/language_specific_features/zh-CN/success/outlines_steps.py:22\033[0m\n"
        "\033[0;36m    那么 得到<结果>          \033[1;30m# tests/functional/language_specific_features/zh-CN/success/outlines_steps.py:31\033[0m\n"
        '\n'
        "\033[1;37m  例如:\033[0m\n"
        "\033[0;36m   \033[1;37m |\033[0;36m 输入\033[1;37m |\033[0;36m 处理\033[1;37m |\033[0;36m 结果        \033[1;37m |\033[0;36m\033[0m\n"
        "\033[1;32m   \033[1;37m |\033[1;32m 什么\033[1;37m |\033[1;32m 这个\033[1;37m |\033[1;32m 功能        \033[1;37m |\033[1;32m\033[0m\n"
        "\033[1;32m   \033[1;37m |\033[1;32m 其他\033[1;37m |\033[1;32m 这里\033[1;37m |\033[1;32m 一样        \033[1;37m |\033[1;32m\033[0m\n"
        "\033[1;32m   \033[1;37m |\033[1;32m 数据\033[1;37m |\033[1;32m 动作\033[1;37m |\033[1;32m unicode输出!\033[1;37m |\033[1;32m\033[0m\n"
        '\n'
        "\033[1;37m1 feature (\033[1;32m1 passed\033[1;37m)\033[0m\n"
        "\033[1;37m3 scenarios (\033[1;32m3 passed\033[1;37m)\033[0m\n"
        "\033[1;37m9 steps (\033[1;32m9 passed\033[1;37m)\033[0m\n"
    )
Example #30
0
def test_output_outlines_success_colorless():
    "Language: pt-br -> sucess outlines colorless"

    runner = Runner(join_path('pt-br', 'success', 'outlines.feature'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        u'\n'
        u'Funcionalidade: outlines em português                                  # tests/functional/language_specific_features/pt-br/success/outlines.feature:3\n'
        u'  Como um programador                                                  # tests/functional/language_specific_features/pt-br/success/outlines.feature:4\n'
        u'  Eu quero testar cenários esquemáticos                                # tests/functional/language_specific_features/pt-br/success/outlines.feature:5\n'
        u'  Para ver o output em pt-br                                           # tests/functional/language_specific_features/pt-br/success/outlines.feature:6\n'
        u'\n'
        u'  Esquema do Cenário: Fazer nada, repetidas vezes, através de esquemas # tests/functional/language_specific_features/pt-br/success/outlines.feature:8\n'
        u'    Dado que tenho o <dado1>                                           # tests/functional/language_specific_features/pt-br/success/outlines_steps.py:13\n'
        u'    Quando eu faço algo com <isso>                                     # tests/functional/language_specific_features/pt-br/success/outlines_steps.py:22\n'
        u'    Então eu fico feliz em ver <aquilo>                                # tests/functional/language_specific_features/pt-br/success/outlines_steps.py:31\n'
        u'\n'
        u'  Exemplos:\n'
        u'    | dado1 | isso        | aquilo        |\n'
        u'    | algo  | assim       | funcional     |\n'
        u'    | outro | aqui        | também        |\n'
        u'    | dados | funcionarão | com unicode ! |\n'
        u'\n'
        u'1 feature (1 passed)\n'
        u'3 scenarios (3 passed)\n'
        u'9 steps (9 passed)\n'
    )
Example #31
0
def test_output_outlines_success_colorless():
    "Language: zh-CN -> sucess outlines colorless"

    runner = Runner(join_path('zh-CN', 'success', 'outlines.feature'),
                    verbosity=3)
    runner.run()

    assert_stdout_lines(
        u"\n"
        u"特性: 中文场景模板           # tests/functional/language_specific_features/zh-CN/success/outlines.feature:3\n"
        u"  中文场景模板图表测试       # tests/functional/language_specific_features/zh-CN/success/outlines.feature:4\n"
        u"\n"
        u"  场景模板: 用表格描述场景   # tests/functional/language_specific_features/zh-CN/success/outlines.feature:6\n"
        u"    如果 输入是<输入>        # tests/functional/language_specific_features/zh-CN/success/outlines_steps.py:13\n"
        u"    当 执行<处理>时          # tests/functional/language_specific_features/zh-CN/success/outlines_steps.py:22\n"
        u"    那么 得到<结果>          # tests/functional/language_specific_features/zh-CN/success/outlines_steps.py:31\n"
        u"\n"
        u"  例如:\n"
        u"    | 输入 | 处理 | 结果         |\n"
        u"    | 什么 | 这个 | 功能         |\n"
        u"    | 其他 | 这里 | 一样         |\n"
        u"    | 数据 | 动作 | unicode输出! |\n"
        u"\n"
        u"1 feature (1 passed)\n"
        u"3 scenarios (3 passed)\n"
        u"9 steps (9 passed)\n")
Example #32
0
def test_output_outlines_success_colorful():
    "Language: zh-TW -> sucess outlines colorful"

    runner = Runner(join_path('zh-TW', 'success', 'outlines.feature'),
                    verbosity=4)
    runner.run()

    assert_stdout_lines(
        u'\n'
        u"\033[1;37m特性: 中文場景模板           \033[1;30m# tests/functional/language_specific_features/zh-TW/success/outlines.feature:3\033[0m\n"
        u"\033[1;37m  中文場景模板圖表測試       \033[1;30m# tests/functional/language_specific_features/zh-TW/success/outlines.feature:4\033[0m\n"
        u'\n'
        u"\033[1;37m  場景模板: 用表格描述場景   \033[1;30m# tests/functional/language_specific_features/zh-TW/success/outlines.feature:6\033[0m\n"
        u"\033[0;36m    如果 輸入是<輸入>        \033[1;30m# tests/functional/language_specific_features/zh-TW/success/outlines_steps.py:13\033[0m\n"
        u"\033[0;36m    當 執行<處理>時          \033[1;30m# tests/functional/language_specific_features/zh-TW/success/outlines_steps.py:22\033[0m\n"
        u"\033[0;36m    那麽 得到<結果>          \033[1;30m# tests/functional/language_specific_features/zh-TW/success/outlines_steps.py:31\033[0m\n"
        u'\n'
        u"\033[1;37m  例如:\033[0m\n"
        u"\033[0;36m   \033[1;37m |\033[0;36m 輸入\033[1;37m |\033[0;36m 處理\033[1;37m |\033[0;36m 結果        \033[1;37m |\033[0;36m\033[0m\n"
        u"\033[1;32m   \033[1;37m |\033[1;32m 什麽\033[1;37m |\033[1;32m 這個\033[1;37m |\033[1;32m 功能        \033[1;37m |\033[1;32m\033[0m\n"
        u"\033[1;32m   \033[1;37m |\033[1;32m 其他\033[1;37m |\033[1;32m 這裏\033[1;37m |\033[1;32m 一樣        \033[1;37m |\033[1;32m\033[0m\n"
        u"\033[1;32m   \033[1;37m |\033[1;32m 數據\033[1;37m |\033[1;32m 動作\033[1;37m |\033[1;32m unicode輸出!\033[1;37m |\033[1;32m\033[0m\n"
        u'\n'
        u"\033[1;37m1 feature (\033[1;32m1 passed\033[1;37m)\033[0m\n"
        u"\033[1;37m3 scenarios (\033[1;32m3 passed\033[1;37m)\033[0m\n"
        u"\033[1;37m9 steps (\033[1;32m9 passed\033[1;37m)\033[0m\n")
Example #33
0
def test_output_when_could_not_find_features_colorless():
    "Testing the colorful output of many successful features colorless"

    path = fs.relpath(join(abspath(dirname(__file__)), 'unexistent-folder'))
    runner = Runner(path, verbosity=3)
    runner.run()

    assert_stdout_lines(
        'Oops!\n'
        'could not find features at ./%s\n' % path
    )
def test_simple_tables_behave_as_feature():
    "Basic step.behave_as behaviour is working"
    Runner(path_to_feature('2nd_table_steps'), verbosity=3).run()
    if platform.system() != "Windows":
        assert_stdout_lines(
            "\n"
            "Feature: Multiplication                            # tests/functional/behave_as_features/2nd_table_steps/2nd_table_steps.feature:2\n"
            "  In order to avoid silly mistakes                 # tests/functional/behave_as_features/2nd_table_steps/2nd_table_steps.feature:3\n"
            "  Cashiers must be able to multiplicate numbers :) # tests/functional/behave_as_features/2nd_table_steps/2nd_table_steps.feature:4\n"
            "\n"
            "  Scenario: Regular numbers                        # tests/functional/behave_as_features/2nd_table_steps/2nd_table_steps.feature:6\n"
            "    Given I multiply these numbers:                # tests/functional/behave_as_features/2nd_table_steps/simple_tables_step_definitions.py:31\n"
            "      | number |\n"
            "      | 55     |\n"
            "      | 2      |\n"
            "    Then the result should be 110 on the screen    # tests/functional/behave_as_features/2nd_table_steps/simple_tables_step_definitions.py:19\n"
            "\n"
            "  Scenario: Shorter version of the scenario above  # tests/functional/behave_as_features/2nd_table_steps/2nd_table_steps.feature:13\n"
            "    Given I multiply 55 and 2 into the calculator  # tests/functional/behave_as_features/2nd_table_steps/simple_tables_step_definitions.py:23\n"
            "    Then the result should be 110 on the screen    # tests/functional/behave_as_features/2nd_table_steps/simple_tables_step_definitions.py:19\n"
            "\n"
            "1 feature (1 passed)\n"
            "2 scenarios (2 passed)\n"
            "4 steps (4 passed)\n"
        )
    else:
        assert_stdout_lines(
            "\n"
            "Feature: Multiplication                            # tests/functional/behave_as_features/2nd_table_steps/2nd_table_steps.feature:2\n"
            "  In order to avoid silly mistakes                 # tests/functional/behave_as_features/2nd_table_steps/2nd_table_steps.feature:3\n"
            "  Cashiers must be able to multiplicate numbers :) # tests/functional/behave_as_features/2nd_table_steps/2nd_table_steps.feature:4\n"
            "\n"
            "  Scenario: Regular numbers                        # tests/functional/behave_as_features/2nd_table_steps/2nd_table_steps.feature:6\n"
            "    Given I multiply these numbers:                # tests/functional/behave_as_features/2nd_table_steps/simple_tables_step_definitions.py:32\n"
            "      | number |\n"
            "      | 55     |\n"
            "      | 2      |\n"
            "    Then the result should be 110 on the screen    # tests/functional/behave_as_features/2nd_table_steps/simple_tables_step_definitions.py:20\n"
            "\n"
            "  Scenario: Shorter version of the scenario above  # tests/functional/behave_as_features/2nd_table_steps/2nd_table_steps.feature:13\n"
            "    Given I multiply 55 and 2 into the calculator  # tests/functional/behave_as_features/2nd_table_steps/simple_tables_step_definitions.py:24\n"
            "    Then the result should be 110 on the screen    # tests/functional/behave_as_features/2nd_table_steps/simple_tables_step_definitions.py:20\n"
            "\n"
            "1 feature (1 passed)\n"
            "2 scenarios (2 passed)\n"
            "4 steps (4 passed)\n"
        )
Example #35
0
def test_output_with_success_colorless():
    "Language: zh-CN -> sucess colorless"

    runner = Runner(join_path('zh-CN', 'success', 'dumb.feature'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        "\n"
        "特性: 简单测试           # tests/functional/language_specific_features/zh-CN/success/dumb.feature:3\n"
        "  什么都不做应该运行成功 # tests/functional/language_specific_features/zh-CN/success/dumb.feature:4\n"
        "\n"
        "  场景: 什么都不做       # tests/functional/language_specific_features/zh-CN/success/dumb.feature:6\n"
        "    如果 什么都不做      # tests/functional/language_specific_features/zh-CN/success/dumb_steps.py:6\n"
        "\n"
        "1 feature (1 passed)\n"
        "1 scenario (1 passed)\n"
        "1 step (1 passed)\n")
def test_simple_behave_as_feature():
    "Basic step.behave_as behaviour is working"
    Runner(path_to_feature('1st_normal_steps'), verbosity=3).run()

    if platform.system() != "Windows":
        assert_stdout_lines(
            "\n"
            "Feature: Multiplication                            # tests/functional/behave_as_features/1st_normal_steps/1st_normal_steps.feature:2\n"
            "  In order to avoid silly mistakes                 # tests/functional/behave_as_features/1st_normal_steps/1st_normal_steps.feature:3\n"
            "  Cashiers must be able to multiplicate numbers :) # tests/functional/behave_as_features/1st_normal_steps/1st_normal_steps.feature:4\n"
            "\n"
            "  Scenario: Regular numbers                        # tests/functional/behave_as_features/1st_normal_steps/1st_normal_steps.feature:6\n"
            "    Given I have entered 10 into the calculator    # tests/functional/behave_as_features/1st_normal_steps/simple_step_definitions.py:11\n"
            "    And I have entered 4 into the calculator       # tests/functional/behave_as_features/1st_normal_steps/simple_step_definitions.py:11\n"
            "    When I press multiply                          # tests/functional/behave_as_features/1st_normal_steps/simple_step_definitions.py:15\n"
            "    Then the result should be 40 on the screen     # tests/functional/behave_as_features/1st_normal_steps/simple_step_definitions.py:19\n"
            "\n"
            "  Scenario: Shorter version of the scenario above  # tests/functional/behave_as_features/1st_normal_steps/1st_normal_steps.feature:12\n"
            "    Given I multiply 10 and 4 into the calculator  # tests/functional/behave_as_features/1st_normal_steps/simple_step_definitions.py:23\n"
            "    Then the result should be 40 on the screen     # tests/functional/behave_as_features/1st_normal_steps/simple_step_definitions.py:19\n"
            "\n"
            "1 feature (1 passed)\n"
            "2 scenarios (2 passed)\n"
            "6 steps (6 passed)\n"
        )
    else:
        assert_stdout_lines(
            "\n"
            "Feature: Multiplication                            # tests/functional/behave_as_features/1st_normal_steps/1st_normal_steps.feature:2\n"
            "  In order to avoid silly mistakes                 # tests/functional/behave_as_features/1st_normal_steps/1st_normal_steps.feature:3\n"
            "  Cashiers must be able to multiplicate numbers :) # tests/functional/behave_as_features/1st_normal_steps/1st_normal_steps.feature:4\n"
            "\n"
            "  Scenario: Regular numbers                        # tests/functional/behave_as_features/1st_normal_steps/1st_normal_steps.feature:6\n"
            "    Given I have entered 10 into the calculator    # tests/functional/behave_as_features/1st_normal_steps/simple_step_definitions.py:12\n"
            "    And I have entered 4 into the calculator       # tests/functional/behave_as_features/1st_normal_steps/simple_step_definitions.py:12\n"
            "    When I press multiply                          # tests/functional/behave_as_features/1st_normal_steps/simple_step_definitions.py:16\n"
            "    Then the result should be 40 on the screen     # tests/functional/behave_as_features/1st_normal_steps/simple_step_definitions.py:20\n"
            "\n"
            "  Scenario: Shorter version of the scenario above  # tests/functional/behave_as_features/1st_normal_steps/1st_normal_steps.feature:12\n"
            "    Given I multiply 10 and 4 into the calculator  # tests/functional/behave_as_features/1st_normal_steps/simple_step_definitions.py:24\n"
            "    Then the result should be 40 on the screen     # tests/functional/behave_as_features/1st_normal_steps/simple_step_definitions.py:20\n"
            "\n"
            "1 feature (1 passed)\n"
            "2 scenarios (2 passed)\n"
            "6 steps (6 passed)\n"
        )
Example #37
0
def test_output_with_success_colorless():
    "Language: zh-TW -> sucess colorless"

    runner = Runner(join_path('zh-TW', 'success', 'dumb.feature'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        u"\n"
        u"特性: 簡單測試           # tests/functional/language_specific_features/zh-TW/success/dumb.feature:3\n"
        u"  什麽都不做應該運行成功 # tests/functional/language_specific_features/zh-TW/success/dumb.feature:4\n"
        u"\n"
        u"  場景: 什麽都不做       # tests/functional/language_specific_features/zh-TW/success/dumb.feature:6\n"
        u"    如果 什麽都不做      # tests/functional/language_specific_features/zh-TW/success/dumb_steps.py:6\n"
        u"\n"
        u"1 feature (1 passed)\n"
        u"1 scenario (1 passed)\n"
        u"1 step (1 passed)\n")
Example #38
0
def test_output_with_success_colorless():
    "Language: ja -> sucess colorless"

    runner = Runner(join_path('ja', 'success', 'dumb.feature'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        "\n"
        "フィーチャ: ダムフィーチャ           # tests/functional/language_specific_features/ja/success/dumb.feature:3\n"
        "  テストをグリーンになればテスト成功 # tests/functional/language_specific_features/ja/success/dumb.feature:4\n"
        "\n"
        "  シナリオ: 何もしない               # tests/functional/language_specific_features/ja/success/dumb.feature:6\n"
        "    前提 何もしない                  # tests/functional/language_specific_features/ja/success/dumb_steps.py:6\n"
        "\n"
        "1 feature (1 passed)\n"
        "1 scenario (1 passed)\n"
        "1 step (1 passed)\n")
Example #39
0
def test_output_with_success_colorless():
    "Language: ja -> sucess colorless"

    runner = Runner(join_path('ja', 'success', 'dumb.feature'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        "\n"
        "フィーチャ: ダムフィーチャ           # tests/functional/language_specific_features/ja/success/dumb.feature:3\n"
        "  テストをグリーンになればテスト成功 # tests/functional/language_specific_features/ja/success/dumb.feature:4\n"
        "\n"
        "  シナリオ: 何もしない               # tests/functional/language_specific_features/ja/success/dumb.feature:6\n"
        "    前提 何もしない                  # tests/functional/language_specific_features/ja/success/dumb_steps.py:6\n"
        "\n"
        "1 feature (1 passed)\n"
        "1 scenario (1 passed)\n"
        "1 step (1 passed)\n"
    )
Example #40
0
def test_output_with_success_colorless():
    "Language: zh-CN -> sucess colorless"

    runner = Runner(join_path("zh-CN", "success", "dumb.feature"), verbosity=3)
    runner.run()

    assert_stdout_lines(
        u"\n"
        u"特性: 简单测试           # tests/functional/language_specific_features/zh-CN/success/dumb.feature:3\n"
        u"  什么都不做应该运行成功 # tests/functional/language_specific_features/zh-CN/success/dumb.feature:4\n"
        u"\n"
        u"  场景: 什么都不做       # tests/functional/language_specific_features/zh-CN/success/dumb.feature:6\n"
        u"    如果 什么都不做      # tests/functional/language_specific_features/zh-CN/success/dumb_steps.py:6\n"
        u"\n"
        u"1 feature (1 passed)\n"
        u"1 scenario (1 passed)\n"
        u"1 step (1 passed)\n"
    )
Example #41
0
def test_output_with_success_colorless():
    "Language: fr -> sucess colorless"

    runner = Runner(join_path('fr', 'success', 'dumb.feature'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        "\n"
        "Fonctionnalité: Test complet # tests/functional/language_specific_features/fr/success/dumb.feature:3\n"
        "  En tant que programmeur    # tests/functional/language_specific_features/fr/success/dumb.feature:4\n"
        "  Je veux valider les tests  # tests/functional/language_specific_features/fr/success/dumb.feature:5\n"
        "\n"
        "  Scénario: On ne fait rien  # tests/functional/language_specific_features/fr/success/dumb.feature:7\n"
        "    Quand je ne fait rien    # tests/functional/language_specific_features/fr/success/dumb_steps.py:6\n"
        "\n"
        "1 feature (1 passed)\n"
        "1 scenario (1 passed)\n"
        "1 step (1 passed)\n")
Example #42
0
def test_output_with_success_colorless():
    "Language: zh-TW -> sucess colorless"

    runner = Runner(join_path('zh-TW', 'success', 'dumb.feature'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        "\n"
        "特性: 簡單測試           # tests/functional/language_specific_features/zh-TW/success/dumb.feature:3\n"
        "  什麽都不做應該運行成功 # tests/functional/language_specific_features/zh-TW/success/dumb.feature:4\n"
        "\n"
        "  場景: 什麽都不做       # tests/functional/language_specific_features/zh-TW/success/dumb.feature:6\n"
        "    如果 什麽都不做      # tests/functional/language_specific_features/zh-TW/success/dumb_steps.py:6\n"
        "\n"
        "1 feature (1 passed)\n"
        "1 scenario (1 passed)\n"
        "1 step (1 passed)\n"
    )
Example #43
0
def test_output_with_failed_colorful_with_table():
    "Testing the colorful output of failed with table"

    runner = Runner(feature_name('failed_table'), verbosity=4)
    runner.run()

    assert_stdout_lines(
        "\n"
        "\033[1;37mFeature: Table Fail                           \033[1;30m# tests/functional/output_features/failed_table/failed_table.feature:1\033[0m\n"
        "\n"
        "\033[1;37m  Scenario: See it fail                       \033[1;30m# tests/functional/output_features/failed_table/failed_table.feature:2\033[0m\n"
        "\033[1;30m    Given I have a dumb step that passes      \033[1;30m# tests/functional/output_features/failed_table/failed_table_steps.py:20\033[0m\n"
        "\033[A\033[1;32m    Given I have a dumb step that passes      \033[1;30m# tests/functional/output_features/failed_table/failed_table_steps.py:20\033[0m\n"
        "\033[1;30m    And this one fails                        \033[1;30m# tests/functional/output_features/failed_table/failed_table_steps.py:24\033[0m\n"
        "\033[A\033[0;31m    And this one fails                        \033[1;41;33m# tests/functional/output_features/failed_table/failed_table_steps.py:24\033[0m\n"
        "\033[1;31m    Traceback (most recent call last):\n"
        '      File "%(lettuce_core_file)s", line %(call_line)d, in __call__\n'
        "        ret = self.function(self.step, *args, **kw)\n"
        '      File "%(step_file)s", line 25, in tof\n'
        "        assert False\n"
        "    AssertionError\033[0m\n"
        "\033[1;30m    Then this one will be skipped             \033[1;30m# tests/functional/output_features/failed_table/failed_table_steps.py:28\033[0m\n"
        "\033[A\033[0;36m    Then this one will be skipped             \033[1;30m# tests/functional/output_features/failed_table/failed_table_steps.py:28\033[0m\n"
        "\033[1;30m    And this one will be skipped              \033[1;30m# tests/functional/output_features/failed_table/failed_table_steps.py:28\033[0m\n"
        "\033[A\033[0;36m    And this one will be skipped              \033[1;30m# tests/functional/output_features/failed_table/failed_table_steps.py:28\033[0m\n"
        "\033[0;33m    And this one does not even has definition \033[1;30m# tests/functional/output_features/failed_table/failed_table.feature:12\033[0m\n"
        "\n"
        "\033[1;37m1 feature (\033[0;31m0 passed\033[1;37m)\033[0m\n"
        "\033[1;37m1 scenario (\033[0;31m0 passed\033[1;37m)\033[0m\n"
        "\033[1;37m5 steps (\033[0;31m1 failed\033[1;37m, \033[0;36m2 skipped\033[1;37m, \033[0;33m1 undefined\033[1;37m, \033[1;32m1 passed\033[1;37m)\033[0m\n"
        "\n"
        "\033[0;33mYou can implement step definitions for undefined steps with these snippets:\n"
        "\n"
        "from lettuce import step\n"
        "\n"
        "@step(r'And this one does not even has definition')\n"
        "def and_this_one_does_not_even_has_definition(step):\n"
        "    pass\033[0m"
        "\n" % {
            'lettuce_core_file': lettuce_path('core.py'),
            'step_file': lettuce_path('..', 'tests', 'functional', 'output_features', 'failed_table', 'failed_table_steps.py'),
            'call_line':call_line,
        }
    )
Example #44
0
def test_output_with_success_colorless():
    "Language: fr -> sucess colorless"

    runner = Runner(join_path('fr', 'success', 'dumb.feature'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        "\n"
        "Fonctionnalité: Test complet # tests/functional/language_specific_features/fr/success/dumb.feature:3\n"
        "  En tant que programmeur    # tests/functional/language_specific_features/fr/success/dumb.feature:4\n"
        "  Je veux valider les tests  # tests/functional/language_specific_features/fr/success/dumb.feature:5\n"
        "\n"
        "  Scénario: On ne fait rien  # tests/functional/language_specific_features/fr/success/dumb.feature:7\n"
        "    Quand je ne fait rien    # tests/functional/language_specific_features/fr/success/dumb_steps.py:6\n"
        "\n"
        "1 feature (1 passed)\n"
        "1 scenario (1 passed)\n"
        "1 step (1 passed)\n"
    )
Example #45
0
def test_output_with_failful_outline_colorful():
    "Testing the colorful output of a scenario outline"

    runner = Runner(feature_name('fail_outline'), verbosity=4)
    runner.run()

    assert_stdout_lines(
        '\n'
        '\033[1;37mFeature: Failful Scenario Outline                             \033[1;30m# tests/functional/output_features/fail_outline/fail_outline.feature:1\033[0m\n'
        '\033[1;37m  As lettuce author                                           \033[1;30m# tests/functional/output_features/fail_outline/fail_outline.feature:2\033[0m\n'
        '\033[1;37m  In order to finish the first release                        \033[1;30m# tests/functional/output_features/fail_outline/fail_outline.feature:3\033[0m\n'
        '\033[1;37m  I want to make scenario outlines work :)                    \033[1;30m# tests/functional/output_features/fail_outline/fail_outline.feature:4\033[0m\n'
        '\n'
        '\033[1;37m  Scenario Outline: fill a web form                           \033[1;30m# tests/functional/output_features/fail_outline/fail_outline.feature:6\033[0m\n'
        '\033[0;36m    Given I open browser at "http://www.my-website.com/"      \033[1;30m# tests/functional/output_features/fail_outline/fail_outline_steps.py:21\033[0m\n'
        '\033[0;36m    And click on "sign-up"                                    \033[1;30m# tests/functional/output_features/fail_outline/fail_outline_steps.py:25\033[0m\n'
        '\033[0;36m    When I fill the field "username" with "<username>"        \033[1;30m# tests/functional/output_features/fail_outline/fail_outline_steps.py:29\033[0m\n'
        '\033[0;36m    And I fill the field "password" with "<password>"         \033[1;30m# tests/functional/output_features/fail_outline/fail_outline_steps.py:29\033[0m\n'
        '\033[0;36m    And I fill the field "password-confirm" with "<password>" \033[1;30m# tests/functional/output_features/fail_outline/fail_outline_steps.py:29\033[0m\n'
        '\033[0;36m    And I fill the field "email" with "<email>"               \033[1;30m# tests/functional/output_features/fail_outline/fail_outline_steps.py:29\033[0m\n'
        '\033[0;36m    And I click "done"                                        \033[1;30m# tests/functional/output_features/fail_outline/fail_outline_steps.py:33\033[0m\n'
        '\033[0;36m    Then I see the message "<message>"                        \033[1;30m# tests/functional/output_features/fail_outline/fail_outline_steps.py:37\033[0m\n'
        '\n'
        '\033[1;37m  Examples:\033[0m\n'
        '\033[0;36m   \033[1;37m |\033[0;36m username\033[1;37m |\033[0;36m password\033[1;37m |\033[0;36m email         \033[1;37m |\033[0;36m message      \033[1;37m |\033[0;36m\033[0m\n'
        '\033[1;32m   \033[1;37m |\033[1;32m john    \033[1;37m |\033[1;32m doe-1234\033[1;37m |\033[1;32m [email protected]\033[1;37m |\033[1;32m Welcome, John\033[1;37m |\033[1;32m\033[0m\n'
        '\033[1;32m   \033[1;37m |\033[1;32m mary    \033[1;37m |\033[1;32m wee-9876\033[1;37m |\033[1;32m [email protected]\033[1;37m |\033[1;32m Welcome, Mary\033[1;37m |\033[1;32m\033[0m\n'
        "\033[1;31m    Traceback (most recent call last):\n"
        '      File "%(lettuce_core_file)s", line %(call_line)d, in __call__\n'
        "        ret = self.function(self.step, *args, **kw)\n"
        '      File "%(step_file)s", line 30, in when_i_fill_the_field_x_with_y\n'
        "        if field == 'password' and value == 'wee-9876':  assert False\n"
        "    AssertionError\033[0m\n"
        '\033[1;32m   \033[1;37m |\033[1;32m foo     \033[1;37m |\033[1;32m foo-bar \033[1;37m |\033[1;32m [email protected]   \033[1;37m |\033[1;32m Welcome, Foo \033[1;37m |\033[1;32m\033[0m\n'
        '\n'
        "\033[1;37m1 feature (\033[0;31m0 passed\033[1;37m)\033[0m\n" \
        "\033[1;37m3 scenarios (\033[1;32m2 passed\033[1;37m)\033[0m\n" \
        "\033[1;37m24 steps (\033[0;31m1 failed\033[1;37m, \033[0;36m4 skipped\033[1;37m, \033[1;32m19 passed\033[1;37m)\033[0m\n" % {
            'lettuce_core_file': lettuce_path('core.py'),
            'step_file': lettuce_path('..', 'tests', 'functional', 'output_features', 'fail_outline', 'fail_outline_steps.py'),
            'call_line':call_line,
        }
    )
Example #46
0
def test_output_with_failful_outline_colorless():
    "Testing the colorless output of a scenario outline"

    runner = Runner(feature_name('fail_outline'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        '\n'
        'Feature: Failful Scenario Outline                             # tests/functional/output_features/fail_outline/fail_outline.feature:1\n'
        '  As lettuce author                                           # tests/functional/output_features/fail_outline/fail_outline.feature:2\n'
        '  In order to finish the first release                        # tests/functional/output_features/fail_outline/fail_outline.feature:3\n'
        '  I want to make scenario outlines work :)                    # tests/functional/output_features/fail_outline/fail_outline.feature:4\n'
        '\n'
        '  Scenario Outline: fill a web form                           # tests/functional/output_features/fail_outline/fail_outline.feature:6\n'
        '    Given I open browser at "http://www.my-website.com/"      # tests/functional/output_features/fail_outline/fail_outline_steps.py:21\n'
        '    And click on "sign-up"                                    # tests/functional/output_features/fail_outline/fail_outline_steps.py:25\n'
        '    When I fill the field "username" with "<username>"        # tests/functional/output_features/fail_outline/fail_outline_steps.py:29\n'
        '    And I fill the field "password" with "<password>"         # tests/functional/output_features/fail_outline/fail_outline_steps.py:29\n'
        '    And I fill the field "password-confirm" with "<password>" # tests/functional/output_features/fail_outline/fail_outline_steps.py:29\n'
        '    And I fill the field "email" with "<email>"               # tests/functional/output_features/fail_outline/fail_outline_steps.py:29\n'
        '    And I click "done"                                        # tests/functional/output_features/fail_outline/fail_outline_steps.py:33\n'
        '    Then I see the message "<message>"                        # tests/functional/output_features/fail_outline/fail_outline_steps.py:37\n'
        '\n'
        '  Examples:\n'
        '    | username | password | email          | message       |\n'
        '    | john     | doe-1234 | [email protected] | Welcome, John |\n'
        '    | mary     | wee-9876 | [email protected] | Welcome, Mary |\n'
        "    Traceback (most recent call last):\n"
        '      File "%(lettuce_core_file)s", line %(call_line)d, in __call__\n'
        "        ret = self.function(self.step, *args, **kw)\n"
        '      File "%(step_file)s", line 30, in when_i_fill_the_field_x_with_y\n'
        "        if field == 'password' and value == 'wee-9876':  assert False\n"
        "    AssertionError\n"
        '    | foo      | foo-bar  | [email protected]    | Welcome, Foo  |\n'
        '\n'
        '1 feature (0 passed)\n'
        '3 scenarios (2 passed)\n'
        '24 steps (1 failed, 4 skipped, 19 passed)\n' % {
            'lettuce_core_file': lettuce_path('core.py'),
            'step_file': lettuce_path('..', 'tests', 'functional', 'output_features', 'fail_outline', 'fail_outline_steps.py'),
            'call_line':call_line,
        }
    )
Example #47
0
def test_output_with_success_colorless():
    "Language: pt-br -> sucess colorless"

    runner = Runner(join_path('pt-br', 'success', 'dumb.feature'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        u"\n"
        u"Funcionalidade: feature burra       # tests/functional/language_specific_features/pt-br/success/dumb.feature:3\n"
        u"  Como um programador               # tests/functional/language_specific_features/pt-br/success/dumb.feature:4\n"
        u"  Eu quero que este teste passe     # tests/functional/language_specific_features/pt-br/success/dumb.feature:5\n"
        u"  Para testar um cenário de sucesso # tests/functional/language_specific_features/pt-br/success/dumb.feature:6\n"
        u"\n"
        u"  Cenário: Fazer nada               # tests/functional/language_specific_features/pt-br/success/dumb.feature:8\n"
        u"    Dado que eu faço nada           # tests/functional/language_specific_features/pt-br/success/dumb_steps.py:6\n"
        u"\n"
        u"1 feature (1 passed)\n"
        u"1 scenario (1 passed)\n"
        u"1 step (1 passed)\n")
Example #48
0
def test_output_of_table_with_success_colorless():
    "Language: ja -> sucess table colorless"

    runner = Runner(join_path('ja', 'success', 'table.feature'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        "\n"
        "フィーチャ: テーブル記法                     # tests/functional/language_specific_features/ja/success/table.feature:3\n"
        "  日本語でのテーブル記法がパスするかのテスト # tests/functional/language_specific_features/ja/success/table.feature:4\n"
        "\n"
        "  シナリオ: 何もしないテーブル               # tests/functional/language_specific_features/ja/success/table.feature:6\n"
        "    前提 データは以下:                       # tests/functional/language_specific_features/ja/success/table_steps.py:6\n"
        "      | id | 定義       |\n"
        "      | 12 | 何かの定義 |\n"
        "      | 64 | 別の定義   |\n"
        "\n"
        "1 feature (1 passed)\n"
        "1 scenario (1 passed)\n"
        "1 step (1 passed)\n")
Example #49
0
def test_output_with_success_colorless():
    "Language: ru -> sucess colorless"

    runner = Runner(join_path('ru', 'success', 'dumb.feature'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        '\n'
        'Функционал: тупая фича                # tests/functional/language_specific_features/ru/success/dumb.feature:3\n'
        '  Чтобы lettuce был более надежным    # tests/functional/language_specific_features/ru/success/dumb.feature:4\n'
        '  Как программист                     # tests/functional/language_specific_features/ru/success/dumb.feature:5\n'
        '  Я хочу что бы тест был зеленый      # tests/functional/language_specific_features/ru/success/dumb.feature:6\n'
        '\n'
        '  Сценарий: Ничего не делать          # tests/functional/language_specific_features/ru/success/dumb.feature:8\n'
        '    Пуская я ничего не делаю          # tests/functional/language_specific_features/ru/success/dumb_steps.py:6\n'
        '    Тогда я вижу что тест выполняется # tests/functional/language_specific_features/ru/success/dumb_steps.py:10\n'
        '\n'
        '1 feature (1 passed)\n'
        '1 scenario (1 passed)\n'
        '2 steps (2 passed)\n')
Example #50
0
def test_output_of_table_with_success_colorless():
    "Language: zh-CN -> sucess table colorless"

    runner = Runner(join_path('zh-CN', 'success', 'table.feature'),
                    verbosity=3)
    runner.run()

    assert_stdout_lines(
        u"\n"
        u"特性: 步骤中包含表格             # tests/functional/language_specific_features/zh-CN/success/table.feature:3\n"
        u"  简体中文表格步骤的成功测试     # tests/functional/language_specific_features/zh-CN/success/table.feature:4\n"
        u"\n"
        u"  场景: 什么都不做的表格步骤测试 # tests/functional/language_specific_features/zh-CN/success/table.feature:6\n"
        u"    如果 输入数据如下:           # tests/functional/language_specific_features/zh-CN/success/table_steps.py:6\n"
        u"      | id | 名称   |\n"
        u"      | 12 | 名称一 |\n"
        u"      | 64 | 名称二 |\n"
        u"\n"
        u"1 feature (1 passed)\n"
        u"1 scenario (1 passed)\n"
        u"1 step (1 passed)\n")
Example #51
0
def test_output_of_table_with_success_colorless():
    "Language: zh-TW -> sucess table colorless"

    runner = Runner(join_path('zh-TW', 'success', 'table.feature'),
                    verbosity=3)
    runner.run()

    assert_stdout_lines(
        u"\n"
        u"特性: 步驟中包含表格             # tests/functional/language_specific_features/zh-TW/success/table.feature:3\n"
        u"  繁體中文表格步驟的成功測試     # tests/functional/language_specific_features/zh-TW/success/table.feature:4\n"
        u"\n"
        u"  場景: 什麽都不做的表格步驟測試 # tests/functional/language_specific_features/zh-TW/success/table.feature:6\n"
        u"    如果 輸入數據如下:           # tests/functional/language_specific_features/zh-TW/success/table_steps.py:6\n"
        u"      | id | 名稱   |\n"
        u"      | 12 | 名稱一 |\n"
        u"      | 64 | 名稱二 |\n"
        u"\n"
        u"1 feature (1 passed)\n"
        u"1 scenario (1 passed)\n"
        u"1 step (1 passed)\n")
Example #52
0
def test_output_of_table_with_success_colorless():
    "Language: ru -> sucess table colorless"

    runner = Runner(join_path('ru', 'success', 'table.feature'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        "\n"
        "Функционал: фича с табличкой                                     # tests/functional/language_specific_features/ru/success/table.feature:3\n"
        "  Для того, что бы lettuce был надежным                          # tests/functional/language_specific_features/ru/success/table.feature:4\n"
        "  Как программист                                                # tests/functional/language_specific_features/ru/success/table.feature:5\n"
        "  Я хочу, что бы тесты с таблицами работали отлично и на русском # tests/functional/language_specific_features/ru/success/table.feature:6\n"
        "\n"
        "  Сценарий: Проверить таблички                                   # tests/functional/language_specific_features/ru/success/table.feature:8\n"
        "    Пускай имеем таблицу пациентов:                              # tests/functional/language_specific_features/ru/success/table_steps.py:5\n"
        "      | ФИО        | Диагноз             |\n"
        "      | Петров ПП  | диарея              |\n"
        "      | Сидоров НА | хронический снобизм |\n"
        "\n"
        "1 feature (1 passed)\n"
        "1 scenario (1 passed)\n"
        "1 step (1 passed)\n")
Example #53
0
def test_output_of_table_with_success_colorless():
    "Language: fr -> sucess table colorless"

    runner = Runner(join_path('fr', 'success', 'table.feature'), verbosity=3)
    runner.run()

    assert_stdout_lines(
        "\n"
        "Fonctionnalité: Test des sorties, avec table        # tests/functional/language_specific_features/fr/success/table.feature:4\n"
        "  En tant que programmeur                           # tests/functional/language_specific_features/fr/success/table.feature:5\n"
        "  Je veux tester les sorties de scénario avec table # tests/functional/language_specific_features/fr/success/table.feature:6\n"
        "\n"
        "  Scénario: NE rien faire, mais avec des tables     # tests/functional/language_specific_features/fr/success/table.feature:8\n"
        "    Soit les éléments suivant                       # tests/functional/language_specific_features/fr/success/table_steps.py:6\n"
        "      | id | élément |\n"
        "      | 50 | Un      |\n"
        "      | 59 | 42      |\n"
        "      | 29 | sieste  |\n"
        "\n"
        "1 feature (1 passed)\n"
        "1 scenario (1 passed)\n"
        "1 step (1 passed)\n")
Example #54
0
def test_simple_behave_as_feature():
    "Basic step.behave_as behaviour is working"
    Runner(path_to_feature('1st_normal_steps'), verbosity=3).run()
    assert_stdout_lines(
        "\n"
        "Feature: Multiplication                            # tests/functional/behave_as_features/1st_normal_steps/1st_normal_steps.feature:2\n"
        "  In order to avoid silly mistakes                 # tests/functional/behave_as_features/1st_normal_steps/1st_normal_steps.feature:3\n"
        "  Cashiers must be able to multiplicate numbers :) # tests/functional/behave_as_features/1st_normal_steps/1st_normal_steps.feature:4\n"
        "\n"
        "  Scenario: Regular numbers                        # tests/functional/behave_as_features/1st_normal_steps/1st_normal_steps.feature:6\n"
        "    Given I have entered 10 into the calculator    # tests/functional/behave_as_features/1st_normal_steps/simple_step_definitions.py:11\n"
        "    And I have entered 4 into the calculator       # tests/functional/behave_as_features/1st_normal_steps/simple_step_definitions.py:11\n"
        "    When I press multiply                          # tests/functional/behave_as_features/1st_normal_steps/simple_step_definitions.py:15\n"
        "    Then the result should be 40 on the screen     # tests/functional/behave_as_features/1st_normal_steps/simple_step_definitions.py:19\n"
        "\n"
        "  Scenario: Shorter version of the scenario above  # tests/functional/behave_as_features/1st_normal_steps/1st_normal_steps.feature:12\n"
        "    Given I multiply 10 and 4 into the calculator  # tests/functional/behave_as_features/1st_normal_steps/simple_step_definitions.py:23\n"
        "    Then the result should be 40 on the screen     # tests/functional/behave_as_features/1st_normal_steps/simple_step_definitions.py:19\n"
        "\n"
        "1 feature (1 passed)\n"
        "2 scenarios (2 passed)\n"
        "6 steps (6 passed)\n")
Example #55
0
def test_simple_tables_behave_as_feature():
    "Basic step.behave_as behaviour is working"
    Runner(path_to_feature('2nd_table_steps'), verbosity=3).run()
    assert_stdout_lines(
        "\n"
        "Feature: Multiplication                            # tests/functional/behave_as_features/2nd_table_steps/2nd_table_steps.feature:2\n"
        "  In order to avoid silly mistakes                 # tests/functional/behave_as_features/2nd_table_steps/2nd_table_steps.feature:3\n"
        "  Cashiers must be able to multiplicate numbers :) # tests/functional/behave_as_features/2nd_table_steps/2nd_table_steps.feature:4\n"
        "\n"
        "  Scenario: Regular numbers                        # tests/functional/behave_as_features/2nd_table_steps/2nd_table_steps.feature:6\n"
        "    Given I multiply these numbers:                # tests/functional/behave_as_features/2nd_table_steps/simple_tables_step_definitions.py:31\n"
        "      | number |\n"
        "      | 55     |\n"
        "      | 2      |\n"
        "    Then the result should be 110 on the screen    # tests/functional/behave_as_features/2nd_table_steps/simple_tables_step_definitions.py:19\n"
        "\n"
        "  Scenario: Shorter version of the scenario above  # tests/functional/behave_as_features/2nd_table_steps/2nd_table_steps.feature:13\n"
        "    Given I multiply 55 and 2 into the calculator  # tests/functional/behave_as_features/2nd_table_steps/simple_tables_step_definitions.py:23\n"
        "    Then the result should be 110 on the screen    # tests/functional/behave_as_features/2nd_table_steps/simple_tables_step_definitions.py:19\n"
        "\n"
        "1 feature (1 passed)\n"
        "2 scenarios (2 passed)\n"
        "4 steps (4 passed)\n")