from lettuce import step, world from lettuce.django import django_url from nose.tools import assert_true, assert_equals from django.core.urlresolvers import reverse @step(u'Then I should see a "([^"]*)" button') def then_i_should_see_a_label_button(step, button_label): browser = world.browser button_names = {"Descargar resultados (csv)": "download_results_as_csv"} button_name = button_names[button_label] assert_true( browser.is_element_present_by_name(button_name)) world.button = browser.find_by_name(button_name)[0] @step(u'And the button links to "([^"]*)" for "([^"]*)"') def button_links_to_url_name_for_poll_name(step, url_name, poll_name): poll_id = str(world.poll_id) button = world.button csv_download_url = reverse(url_name, kwargs={'poll_id': poll_id}) assert_equals(django_url(csv_download_url), button['href'])