Skip to content

Commit

Permalink
[#1659] factor out common startup code
Browse files Browse the repository at this point in the history
  • Loading branch information
wardi committed Jun 16, 2014
1 parent d8db8a4 commit fc03233
Showing 1 changed file with 11 additions and 37 deletions.
48 changes: 11 additions & 37 deletions ckan/new_tests/controllers/test_package.py
Expand Up @@ -10,48 +10,37 @@


class TestPackageControllerNew(helpers.FunctionalTestBase):
def test_form_renders(self):
def _get_package_new_page_as_sysadmin(self):
user = factories.Sysadmin()
env = {'REMOTE_USER': user['name'].encode('ascii')}
response = self.app.get(
url=url_for(controller='package', action='new'),
extra_environ=env,
)
return env, response

def test_form_renders(self):
env, response = self._get_package_new_page_as_sysadmin()
assert_true('dataset-edit' in response.forms)

def test_name_required(self):
user = factories.Sysadmin()
env = {'REMOTE_USER': user['name'].encode('ascii')}
response = self.app.get(
url=url_for(controller='package', action='new'),
extra_environ=env,
)
env, response = self._get_package_new_page_as_sysadmin()
form = response.forms['dataset-edit']

response = webtest_submit(form, 'save', status=200, extra_environ=env)
assert_true('dataset-edit' in response.forms)
assert_true('Name: Missing value' in response)

def test_resource_form_renders(self):
user = factories.Sysadmin()
env = {'REMOTE_USER': user['name'].encode('ascii')}
response = self.app.get(
url=url_for(controller='package', action='new'),
extra_environ=env,
)
env, response = self._get_package_new_page_as_sysadmin()
form = response.forms['dataset-edit']
form['name'] = u'resource-form-renders'

response = self._submit_and_follow(form, env, 'save')
assert_true('resource-edit' in response.forms)

def test_first_page_creates_draft_package(self):
user = factories.Sysadmin()
env = {'REMOTE_USER': user['name'].encode('ascii')}
response = self.app.get(
url=url_for(controller='package', action='new'),
extra_environ=env,
)
env, response = self._get_package_new_page_as_sysadmin()
form = response.forms['dataset-edit']
form['name'] = u'first-page-creates-draft'

Expand All @@ -60,12 +49,7 @@ def test_first_page_creates_draft_package(self):
assert_equal(pkg.state, 'draft')

def test_previous_button_works(self):
user = factories.Sysadmin()
env = {'REMOTE_USER': user['name'].encode('ascii')}
response = self.app.get(
url=url_for(controller='package', action='new'),
extra_environ=env,
)
env, response = self._get_package_new_page_as_sysadmin()
form = response.forms['dataset-edit']
form['name'] = u'previous-button-works'

Expand All @@ -76,12 +60,7 @@ def test_previous_button_works(self):
assert_true('dataset-edit' in response.forms)

def test_previous_button_populates_form(self):
user = factories.Sysadmin()
env = {'REMOTE_USER': user['name'].encode('ascii')}
response = self.app.get(
url=url_for(controller='package', action='new'),
extra_environ=env,
)
env, response = self._get_package_new_page_as_sysadmin()
form = response.forms['dataset-edit']
form['name'] = u'previous-button-populates-form'

Expand All @@ -94,12 +73,7 @@ def test_previous_button_populates_form(self):
assert_equal(form['name'].value, u'previous-button-populates-form')

def test_previous_next_maintains_draft_state(self):
user = factories.Sysadmin()
env = {'REMOTE_USER': user['name'].encode('ascii')}
response = self.app.get(
url=url_for(controller='package', action='new'),
extra_environ=env,
)
env, response = self._get_package_new_page_as_sysadmin()
form = response.forms['dataset-edit']
form['name'] = u'previous-next-maintains-draft'

Expand Down

0 comments on commit fc03233

Please sign in to comment.