Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

TDD with python book, functional test doesnt find assertRegex

Tags:

python

django

Following the test driven development with python book I got stuck I have tried several different imports but still nothing.. anyone?

Error

$python manage.py test functional_tests
ERROR: test_can_start_a_list_and_retrieve_it_later (functional_tests.tests.NewVisitorTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/coelhao/DjangoProjects/superlists/functional_tests/tests.py", line 45, in
test_can_start_a_list_and_retrieve_it_later
self.assertRegex(edith_list_url, '/lists/.+') AttributeError: 'NewVisitorTest' object has no attribute 'assertRegex' 

Code

from django.test import LiveServerTestCase
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import unittest

class NewVisitorTest(LiveServerTestCase):

    def setUp(self):
        self.browser = webdriver.Firefox()
        self.browser.implicitly_wait(3)

    def tearDown(self):
        self.browser.quit()

    def test_can_start_a_list_and_retrieve_it_later(self):
        # .....

        # When she hits enter, the page updates, and now the page lists
        # "1: Buy peacock feathers" as an item in a to-do list table
        inputbox.send_keys(Keys.ENTER)
        edith_list_url = self.browser.current_url
        self.assertRegex(edith_list_url, '/lists/.+')
        self.check_for_row_in_list_table('1: Buy peacock feathers')

        # .... 
like image 782
Renato Co Avatar asked Aug 16 '13 20:08

Renato Co


1 Answers

I'm assuming you are on Python 2 - then use assertRegexpMatches instead of assertRegex.

assertRegex was introduced in Python 3:

Changed in version 3.2: The method assertRegexpMatches() has been renamed to assertRegex().

like image 163
alecxe Avatar answered Nov 13 '22 16:11

alecxe