예제 #1
0
import pytest
import json
import web

from six.moves.urllib.parse import urlencode

from infogami.utils.delegate import app

b = app.browser()


@pytest.mark.skip(reason="Site is None")
def test_home():
    b.open('/')
    b.status == 200


@pytest.mark.skip(reason="Site is None")
def test_write():
    b.open('/sandbox/test?m=edit')
    b.select_form(name="edit")
    b['title'] = 'Foo'
    b['body'] = 'Bar'
    b.submit()
    assert b.path == '/sandbox/test'

    b.open('/sandbox/test')
    assert 'Foo' in b.data
    assert 'Bar' in b.data

예제 #2
0
from infogami.utils.delegate import app
import web

b = app.browser()

def test_login():
    # try with bad account
    b.open('/account/login')   
    b.select_form(name="login")
    b['username'] = '******'
    b['password'] = '******'

    try:
        b.submit() 
    except web.BrowserError, e:
        assert str(e) == 'Invalid username or password'
    else:
        assert False, 'Expected exception'

    # follow register link
    b.follow_link(text='create a new account')
    assert b.path == '/account/register'

    b.select_form('register')
    b['username'] = '******'
    b['displayname'] = 'Joe'
    b['password'] = '******'
    b['password2'] = 'secret'
    b['email'] = '*****@*****.**'
    b.submit()
    assert b.path == '/'