Skip to content
This repository was archived by the owner on Sep 16, 2021. It is now read-only.
This repository was archived by the owner on Sep 16, 2021. It is now read-only.

NameError: name 'Newsletter' is not defined #147

@anilreddy

Description

@anilreddy

Hi,

Am using the below code provided in the documentation am getting the following error when I ran it. How to resolve this issue.

Code:

# mozilla.py
from pypom import Page, Region
from splinter import Browser

executable_path = {'executable_path':'C:/Users/tester/.webdrivers/chromedriver.exe'}

class Mozilla(Page):
    URL_TEMPLATE = 'https://www.mozilla.org/'

    @property
    def newsletter(self):
        return Newsletter(self)

    class Newsletter(Region):
        _root_locator = ('id', 'newsletter-form')
        _submit_locator = ('id', 'footer_email_submit')

        def sign_up(self):
            self.find_element(*self._submit_locator).click()

driver = Browser('chrome', **executable_path)
page = Mozilla(driver).open()
page.newsletter.sign_up()

Error:

Traceback (most recent call last):
  File "mozilla.py", line 22, in <module>
    page.newsletter.sign_up()
  File "mozilla.py", line 11, in newsletter
    return Newsletter(self)
NameError: name 'Newsletter' is not defined

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions