当前位置: 首页>>代码示例>>Python>>正文


Python TestClient.post方法代码示例

本文整理汇总了Python中gittip.testing.client.TestClient.post方法的典型用法代码示例。如果您正苦于以下问题:Python TestClient.post方法的具体用法?Python TestClient.post怎么用?Python TestClient.post使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在gittip.testing.client.TestClient的用法示例。


在下文中一共展示了TestClient.post方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: test_get_amount_and_total_back_from_api

# 需要导入模块: from gittip.testing.client import TestClient [as 别名]
# 或者: from gittip.testing.client.TestClient import post [as 别名]
    def test_get_amount_and_total_back_from_api(self):
        "Test that we get correct amounts and totals back on POSTs to tip.json"
        client = TestClient()

        # First, create some test data
        # We need accounts
        now = datetime.datetime.now(pytz.utc)
        self.make_participant("test_tippee1", claimed_time=now)
        self.make_participant("test_tippee2", claimed_time=now)
        self.make_participant("test_tipper")

        # We need to get ourselves a token!
        response = client.get('/')
        csrf_token = response.request.context['csrf_token']

        # Then, add a $1.50 and $3.00 tip
        response1 = client.post("/test_tippee1/tip.json",
                                {'amount': "1.00", 'csrf_token': csrf_token},
                                user='test_tipper')

        response2 = client.post("/test_tippee2/tip.json",
                                {'amount': "3.00", 'csrf_token': csrf_token},
                                user='test_tipper')

        # Confirm we get back the right amounts.
        first_data = json.loads(response1.body)
        second_data = json.loads(response2.body)
        assert first_data['amount'] == "1.00"
        assert first_data['total_giving'] == "1.00"
        assert second_data['amount'] == "3.00"
        assert second_data['total_giving'] == "4.00"
开发者ID:abnor,项目名称:www.gittip.com,代码行数:33,代码来源:test_tip_json.py

示例2: test_get_amount_and_total_back_from_api

# 需要导入模块: from gittip.testing.client import TestClient [as 别名]
# 或者: from gittip.testing.client.TestClient import post [as 别名]
def test_get_amount_and_total_back_from_api():
    "Test that we get correct amounts and totals back on POSTs to tip.json"
    client = TestClient()

    # First, create some test data
    # We need accounts
    db.execute(CREATE_ACCOUNT, ("test_tippee1",))
    db.execute(CREATE_ACCOUNT, ("test_tippee2",))
    db.execute(CREATE_ACCOUNT, ("test_tipper",))

    # We need to get ourselves a token!
    response = client.get('/')
    csrf_token = response.request.context['csrf_token']

    # Then, add a $1.50 and $3.00 tip
    response1 = client.post("/test_tippee1/tip.json",
                            {'amount': "1.00", 'csrf_token': csrf_token},
                            user='test_tipper')

    response2 = client.post("/test_tippee2/tip.json",
                            {'amount': "3.00", 'csrf_token': csrf_token},
                            user='test_tipper')

    # Confirm we get back the right amounts.
    first_data = json.loads(response1.body)
    second_data = json.loads(response2.body)
    assert_equal(first_data['amount'], "1.00")
    assert_equal(first_data['total_giving'], "1.00")
    assert_equal(second_data['amount'], "3.00")
    assert_equal(second_data['total_giving'], "4.00")
开发者ID:imathis,项目名称:www.gittip.com,代码行数:32,代码来源:test_tip_json.py

示例3: test_post_bad_platform

# 需要导入模块: from gittip.testing.client import TestClient [as 别名]
# 或者: from gittip.testing.client.TestClient import post [as 别名]
    def test_post_bad_platform(self):
        client = TestClient()

        now = datetime.datetime.now(pytz.utc)
        self.make_participant("test_tippee1", claimed_time=now)
        self.make_participant("test_tipper", claimed_time=now)

        api_key = json.loads(client.get('/test_tipper/api-key.json', 'test_tipper').body)['api_key']

        response = client.post( '/test_tipper/tips.json'
                              , json.dumps([{ 'username': 'test_tippee1'
                                            , 'platform': 'badname'
                                            , 'amount': '1.00'
                                             }])
                              , user='test_tipper'
                              , content_type='application/json'
                              , HTTP_AUTHORIZATION='Basic ' + base64.b64encode(api_key + ':')
                               )

        assert response.code == 200

        resp = json.loads(response.body)

        for tip in resp:
            assert 'error' in tip
开发者ID:abnor,项目名称:www.gittip.com,代码行数:27,代码来源:test_tips_json.py

示例4: test_set_tip_out_of_range

# 需要导入模块: from gittip.testing.client import TestClient [as 别名]
# 或者: from gittip.testing.client.TestClient import post [as 别名]
    def test_set_tip_out_of_range(self):
        client = TestClient()
        now = datetime.datetime.now(pytz.utc)
        self.make_participant("alice", claimed_time=now)
        self.make_participant("bob", claimed_time=now)

        response = client.get('/')
        csrf_token = response.request.context['csrf_token']
        response = client.post("/alice/tip.json",
                                {'amount': "110.00", 'csrf_token': csrf_token},
                                user='bob')
        assert "bad amount" in response.body
        assert response.code == 400
        
        response = client.post("/alice/tip.json",
                                {'amount': "-1.00", 'csrf_token': csrf_token},
                                user='bob')
        assert "bad amount" in response.body
        assert response.code == 400
开发者ID:abnor,项目名称:www.gittip.com,代码行数:21,代码来源:test_tip_json.py

示例5: also_prune_variant

# 需要导入模块: from gittip.testing.client import TestClient [as 别名]
# 或者: from gittip.testing.client.TestClient import post [as 别名]
    def also_prune_variant(self, also_prune, tippees=1):
        client = TestClient()

        now = datetime.datetime.now(pytz.utc)
        self.make_participant("test_tippee1", claimed_time=now)
        self.make_participant("test_tippee2", claimed_time=now)
        self.make_participant("test_tipper", claimed_time=now)

        api_key = json.loads(client.get('/test_tipper/api-key.json', 'test_tipper').body)['api_key']

        data = [
            {'username': 'test_tippee1', 'platform': 'gittip', 'amount': '1.00'},
            {'username': 'test_tippee2', 'platform': 'gittip', 'amount': '2.00'}
        ]

        response = client.post( '/test_tipper/tips.json'
                              , json.dumps(data)
                              , user='test_tipper'
                              , content_type='application/json'
                              , HTTP_AUTHORIZATION='Basic ' + base64.b64encode(api_key + ':')
                               )

        assert response.code == 200
        assert len(json.loads(response.body)) == 2

        response = client.post( '/test_tipper/tips.json?also_prune=' + also_prune
                              , json.dumps([{ 'username': 'test_tippee2'
                                            , 'platform': 'gittip'
                                            , 'amount': '1.00'
                                             }])
                              , user='test_tipper'
                              , content_type='application/json'
                              , HTTP_AUTHORIZATION='Basic ' + base64.b64encode(api_key + ':')
                               )

        assert response.code == 200

        response = client.get('/test_tipper/tips.json', 'test_tipper')
        assert response.code == 200
        assert len(json.loads(response.body)) == tippees
开发者ID:abnor,项目名称:www.gittip.com,代码行数:42,代码来源:test_tips_json.py

示例6: change_username

# 需要导入模块: from gittip.testing.client import TestClient [as 别名]
# 或者: from gittip.testing.client.TestClient import post [as 别名]
    def change_username(self, new_username, user='alice'):
        self.make_participant('alice')

        client = TestClient()
        response = client.get('/')
        csrf_token = response.request.context['csrf_token']

        response = client.post( "/alice/username.json"
                              , { 'username': new_username
                                , 'csrf_token': csrf_token
                                 }
                              , user=user
                               )
        return response
开发者ID:angleman,项目名称:www.gittip.com,代码行数:16,代码来源:test_username_json.py

示例7: change_bitcoin_address

# 需要导入模块: from gittip.testing.client import TestClient [as 别名]
# 或者: from gittip.testing.client.TestClient import post [as 别名]
    def change_bitcoin_address(self, address, user='alice'):
        self.make_participant('alice')

        client = TestClient()
        response = client.get('/')
        csrf_token = response.request.context['csrf_token']

        response = client.post( "/alice/bitcoin.json"
                              , { 'bitcoin_address': address
                                , 'csrf_token': csrf_token
                                 }
                              , user=user
                               )
        return response
开发者ID:reedlaw,项目名称:www.gittip.com,代码行数:16,代码来源:test_bitcoin_json.py

示例8: change_statement

# 需要导入模块: from gittip.testing.client import TestClient [as 别名]
# 或者: from gittip.testing.client.TestClient import post [as 别名]
    def change_statement(self, statement, number='singular', user='alice'):
        self.make_participant('alice')

        client = TestClient()
        response = client.get('/')
        csrf_token = response.request.context['csrf_token']

        response = client.post( "/alice/statement.json"
                              , { 'statement': statement
                                , 'number': number
                                , 'csrf_token': csrf_token
                                 }
                              , user=user
                               )
        return response
开发者ID:angleman,项目名称:www.gittip.com,代码行数:17,代码来源:test_statement_json.py

示例9: change_goal

# 需要导入模块: from gittip.testing.client import TestClient [as 别名]
# 或者: from gittip.testing.client.TestClient import post [as 别名]
    def change_goal(self, goal, goal_custom="", user="alice"):
        if isinstance(user, Participant):
            user = user.username
        else:
            self.make_alice()

        client = TestClient()
        response = client.get('/')
        csrf_token = response.request.context['csrf_token']

        response = client.post( "/alice/goal.json"
                              , { 'goal': goal
                                , 'goal_custom': goal_custom
                                , 'csrf_token': csrf_token
                                 }
                              , user=user
                               )
        return response
开发者ID:DylanLacey,项目名称:www.gittip.com,代码行数:20,代码来源:test_goal_json.py

示例10: hit_anonymous

# 需要导入模块: from gittip.testing.client import TestClient [as 别名]
# 或者: from gittip.testing.client.TestClient import post [as 别名]
    def hit_anonymous(self, method='GET', expected_code=200):
        user, ignored = TwitterAccount('alice', {}).opt_in('alice')

        client = TestClient()
        response = client.get('/')
        csrf_token = response.request.context['csrf_token']

        if method == 'GET':
            response = client.get( "/alice/anonymous.json"
                                 , user='alice'
                                  )
        else:
            assert method == 'POST'
            response = client.post( "/alice/anonymous.json"
                                  , {'csrf_token': csrf_token}
                                  , user='alice'
                                   )
        if response.code != expected_code:
            print(response.body)
        return response
开发者ID:angleman,项目名称:www.gittip.com,代码行数:22,代码来源:test_anonymous_json.py

示例11: test_get_response_with_tips

# 需要导入模块: from gittip.testing.client import TestClient [as 别名]
# 或者: from gittip.testing.client.TestClient import post [as 别名]
    def test_get_response_with_tips(self):
        client = TestClient()

        now = datetime.datetime.now(pytz.utc)
        self.make_participant("test_tippee1", claimed_time=now)
        self.make_participant("test_tipper", claimed_time=now)

        response = client.get('/')
        csrf_token = response.request.context['csrf_token']

        response1 = client.post('/test_tippee1/tip.json',
            {'amount': '1.00', 'csrf_token': csrf_token},
            user='test_tipper')

        response = client.get('/test_tipper/tips.json', 'test_tipper')

        assert response1.code == 200
        assert json.loads(response1.body)['amount'] == '1.00'

        data = json.loads(response.body)[0]

        assert response.code == 200
        assert data['username'] == 'test_tippee1'
        assert data['amount'] == '1.00'
开发者ID:abnor,项目名称:www.gittip.com,代码行数:26,代码来源:test_tips_json.py

示例12: TestRecordAnExchange

# 需要导入模块: from gittip.testing.client import TestClient [as 别名]
# 或者: from gittip.testing.client.TestClient import post [as 别名]
class TestRecordAnExchange(Harness):

    # fixture
    # =======

    def setUp(self):
        super(Harness, self).setUp()
        self.client = TestClient()

    def get_csrf_token(self):
        response = self.client.get('/')
        return response.request.context['csrf_token']

    def record_an_exchange(self, amount, fee, note, make_participants=True):
        if make_participants:
            now = utcnow()
            self.make_participant('alice', claimed_time=now, is_admin=True)
            self.make_participant('bob', claimed_time=now)
        return self.client.post( '/bob/history/record-an-exchange'
                               , { 'amount': amount, 'fee': fee, 'note': note
                                 , 'csrf_token': self.get_csrf_token()
                                  }
                               , 'alice'
                                )

    # tests
    # =====

    def test_success_is_302(self):
        actual = self.record_an_exchange('10', '0', 'foo').code
        assert actual == 302, actual

    def test_non_admin_is_404(self):
        self.make_participant('alice', claimed_time=utcnow())
        self.make_participant('bob', claimed_time=utcnow())
        actual = self.record_an_exchange('10', '0', 'foo', False).code
        assert actual == 404, actual

    def test_non_post_is_405(self):
        self.make_participant('alice', claimed_time=utcnow(), is_admin=True)
        self.make_participant('bob', claimed_time=utcnow())
        actual = \
               self.client.get('/bob/history/record-an-exchange', 'alice').code
        assert actual == 405, actual

    def test_bad_amount_is_400(self):
        actual = self.record_an_exchange('cheese', '0', 'foo').code
        assert actual == 400, actual

    def test_bad_fee_is_400(self):
        actual = self.record_an_exchange('10', 'cheese', 'foo').code
        assert actual == 400, actual

    def test_no_note_is_400(self):
        actual = self.record_an_exchange('10', '0', '').code
        assert actual == 400, actual

    def test_whitespace_note_is_400(self):
        actual = self.record_an_exchange('10', '0', '    ').code
        assert actual == 400, actual

    def test_dropping_balance_below_zero_is_500(self):
        actual = self.record_an_exchange('-10', '0', 'noted').code
        assert actual == 500, actual

    def test_success_records_exchange(self):
        self.record_an_exchange('10', '0.50', 'noted')
        expected = { "amount": Decimal('10.00')
                   , "fee": Decimal('0.50')
                   , "participant": "bob"
                   , "recorder": "alice"
                   , "note": "noted"
                    }
        SQL = "SELECT amount, fee, participant, recorder, note " \
              "FROM exchanges"
        actual = self.db.one(SQL, back_as=dict)
        assert actual == expected, actual

    def test_success_updates_balance(self):
        self.record_an_exchange('10', '0', 'noted')
        expected = Decimal('10.00')
        SQL = "SELECT balance FROM participants WHERE username='bob'"
        actual = self.db.one(SQL)
        assert actual == expected, actual

    def test_withdrawals_work(self):
        self.make_participant('alice', claimed_time=utcnow(), is_admin=True)
        self.make_participant('bob', claimed_time=utcnow(), balance=20)
        self.record_an_exchange('-7', '0', 'noted', False)
        expected = Decimal('13.00')
        SQL = "SELECT balance FROM participants WHERE username='bob'"
        actual = self.db.one(SQL)
        assert actual == expected, actual
开发者ID:angleman,项目名称:www.gittip.com,代码行数:95,代码来源:test_record_an_exchange.py

示例13: Tests

# 需要导入模块: from gittip.testing.client import TestClient [as 别名]
# 或者: from gittip.testing.client.TestClient import post [as 别名]
class Tests(Harness):

    def setUp(self):
        Harness.setUp(self)
        self.website = _test_website
        self.client = TestClient()

    def tearDown(self):
        Harness.tearDown(self)
        self.website.oauth_cache = {}


    @mock.patch('requests.post')
    @mock.patch('requests.get')
    def test_associate_opts_in(self, get, post):
        self.website.oauth_cache = {"deadbeef": ("deadbeef", "opt-in", "")}

        post.return_value.status_code = 200
        post.return_value.text = "oauth_token=foo&oauth_token_secret=foo&user_id=foo"

        get.return_value.status_code = 200
        get.return_value.text = '{"id": 1234, "screen_name": "alice"}'

        response = self.client.get("/on/twitter/associate?oauth_token=deadbeef&"
                                   "oauth_verifier=donald_trump")
        assert response.code == 302, response.body
        assert response.headers['Location'] == "/alice/", response.headers


    @mock.patch('requests.post')
    @mock.patch('requests.get')
    def test_associate_connects(self, get, post):
        self.make_participant('alice')
        self.website.oauth_cache = {"deadbeef": ("deadbeef", "connect", "")}

        post.return_value.status_code = 200
        post.return_value.text = "oauth_token=foo&oauth_token_secret=foo&user_id=foo"

        get.return_value.status_code = 200
        get.return_value.text = '{"id": 1234, "screen_name": "alice"}'

        response = self.client.get("/on/twitter/associate?oauth_token=deadbeef&"
                                   "oauth_verifier=donald_trump", user="alice")
        assert response.code == 302, response.body
        assert response.headers['Location'] == "/alice/", response.headers

        rec = self.db.one("SELECT * FROM elsewhere")
        assert rec.participant == 'alice', rec
        assert rec.platform == 'twitter', rec


    @mock.patch('requests.post')
    @mock.patch('requests.get')
    def test_associate_confirms_on_connect(self, get, post):
        TwitterAccount(self.db, '1234', {'screen_name': 'alice'}).opt_in('alice')

        self.make_participant('bob')
        self.website.oauth_cache = {"deadbeef": ("deadbeef", "connect", "")}

        post.return_value.status_code = 200
        post.return_value.text = "oauth_token=foo&oauth_token_secret=foo&user_id=foo"

        get.return_value.status_code = 200
        get.return_value.text = '{"id": 1234, "screen_name": "alice"}'

        self.client.get('/') # populates cookies['csrf_token']
        response = self.client.get("/on/twitter/associate?oauth_token=deadbeef&"
                                   "oauth_verifier=donald_trump", user="bob")
        assert "Please Confirm" in response.body, response.body


    @mock.patch('requests.post')
    @mock.patch('requests.get')
    def test_confirmation_properly_displays_remaining_bitbucket(self, get, post):
        alice, foo = TwitterAccount(self.db, '1234', {'screen_name': 'alice'}).opt_in('alice')
        alice.participant.take_over(BitbucketAccount(self.db, '1234', {'username': 'alice_bb'}))

        self.make_participant('bob')
        self.website.oauth_cache = {"deadbeef": ("deadbeef", "connect", "")}

        post.return_value.status_code = 200
        post.return_value.text = "oauth_token=foo&oauth_token_secret=foo&user_id=foo"

        get.return_value.status_code = 200
        get.return_value.text = '{"id": 1234, "screen_name": "alice"}'

        self.client.get('/') # populates cookies['csrf_token']
        response = self.client.get("/on/twitter/associate?oauth_token=deadbeef&"
                                   "oauth_verifier=donald_trump", user="bob")
        assert response.body.count("alice_bb<br />") == 2, response.body


    def test_can_post_to_take_over(self):
        TwitterAccount(self.db, '1234', {'screen_name': 'alice'}).opt_in('alice')

        self.make_participant('bob')
        self.website.connect_tokens = {("bob", "twitter", "1234"): "deadbeef"}

        csrf_token = self.client.get('/').request.context['csrf_token']
        response = self.client.post( "/on/take-over.html"
#.........这里部分代码省略.........
开发者ID:abnor,项目名称:www.gittip.com,代码行数:103,代码来源:test_associate.py

示例14: TestRecordAnExchange

# 需要导入模块: from gittip.testing.client import TestClient [as 别名]
# 或者: from gittip.testing.client.TestClient import post [as 别名]
class TestRecordAnExchange(Harness):

    # fixture
    # =======

    def setUp(self):
        super(Harness, self).setUp()
        self.client = TestClient()

    def get_csrf_token(self):
        response = self.client.get("/")
        return response.request.context["csrf_token"]

    def record_an_exchange(self, amount, fee, note, make_participants=True):
        if make_participants:
            now = utcnow()
            self.make_participant("alice", claimed_time=now, is_admin=True)
            self.make_participant("bob", claimed_time=now)
        return self.client.post(
            "/bob/history/record-an-exchange",
            {"amount": amount, "fee": fee, "note": note, "csrf_token": self.get_csrf_token()},
            "alice",
        )

    # tests
    # =====

    def test_success_is_302(self):
        actual = self.record_an_exchange("10", "0", "foo").code
        assert actual == 302

    def test_non_admin_is_404(self):
        self.make_participant("alice", claimed_time=utcnow())
        self.make_participant("bob", claimed_time=utcnow())
        actual = self.record_an_exchange("10", "0", "foo", False).code
        assert actual == 404

    def test_non_post_is_405(self):
        self.make_participant("alice", claimed_time=utcnow(), is_admin=True)
        self.make_participant("bob", claimed_time=utcnow())
        actual = self.client.get("/bob/history/record-an-exchange", "alice").code
        assert actual == 405

    def test_bad_amount_is_400(self):
        actual = self.record_an_exchange("cheese", "0", "foo").code
        assert actual == 400

    def test_bad_fee_is_400(self):
        actual = self.record_an_exchange("10", "cheese", "foo").code
        assert actual == 400

    def test_no_note_is_400(self):
        actual = self.record_an_exchange("10", "0", "").code
        assert actual == 400

    def test_whitespace_note_is_400(self):
        actual = self.record_an_exchange("10", "0", "    ").code
        assert actual == 400

    def test_dropping_balance_below_zero_is_500(self):
        actual = self.record_an_exchange("-10", "0", "noted").code
        assert actual == 500

    def test_success_records_exchange(self):
        self.record_an_exchange("10", "0.50", "noted")
        expected = {
            "amount": Decimal("10.00"),
            "fee": Decimal("0.50"),
            "participant": "bob",
            "recorder": "alice",
            "note": "noted",
        }
        SQL = "SELECT amount, fee, participant, recorder, note " "FROM exchanges"
        actual = self.db.one(SQL, back_as=dict)
        assert actual == expected

    def test_success_updates_balance(self):
        self.record_an_exchange("10", "0", "noted")
        expected = Decimal("10.00")
        SQL = "SELECT balance FROM participants WHERE username='bob'"
        actual = self.db.one(SQL)
        assert actual == expected

    def test_withdrawals_work(self):
        self.make_participant("alice", claimed_time=utcnow(), is_admin=True)
        self.make_participant("bob", claimed_time=utcnow(), balance=20)
        self.record_an_exchange("-7", "0", "noted", False)
        expected = Decimal("13.00")
        SQL = "SELECT balance FROM participants WHERE username='bob'"
        actual = self.db.one(SQL)
        assert actual == expected

    def test_withdrawals_take_fee_out_of_balance(self):
        self.make_participant("alice", claimed_time=utcnow(), is_admin=True)
        self.make_participant("bob", claimed_time=utcnow(), balance=20)
        self.record_an_exchange("-7", "1.13", "noted", False)
        SQL = "SELECT balance FROM participants WHERE username='bob'"
        assert self.db.one(SQL) == Decimal("11.87")
开发者ID:joeyespo,项目名称:www.gittip.com,代码行数:100,代码来源:test_record_an_exchange.py

示例15: TestPages

# 需要导入模块: from gittip.testing.client import TestClient [as 别名]
# 或者: from gittip.testing.client.TestClient import post [as 别名]

#.........这里部分代码省略.........
        alice.set_tip_to("bob", 1)
        update_homepage_queries_once(self.db)

        actual = self.client.get("/").body
        expected = "Anonymous"
        assert expected in actual

    def test_profile(self):
        self.make_participant("cheese", claimed_time=datetime.datetime.now(pytz.utc))
        expected = "I'm grateful for gifts"
        actual = self.get("/cheese/").decode("utf8")  # deal with cent sign
        assert expected in actual

    def test_widget(self):
        self.make_participant("cheese", claimed_time=datetime.datetime.now(pytz.utc))
        expected = "javascript: window.open"
        actual = self.get("/cheese/widget.html")
        assert expected in actual

    def test_bank_account(self):
        expected = "add<br> or change your bank account"
        actual = self.get("/bank-account.html")
        assert expected in actual

    def test_credit_card(self):
        expected = "add<br> or change your credit card"
        actual = self.get("/credit-card.html")
        assert expected in actual

    def test_github_associate(self):
        expected = "Bad request, program!"
        actual = self.get("/on/github/associate")
        assert expected in actual

    def test_twitter_associate(self):
        expected = "Bad request, program!"
        actual = self.get("/on/twitter/associate")
        assert expected in actual

    def test_about(self):
        expected = "small weekly cash gifts"
        actual = self.get("/about/")
        assert expected in actual

    def test_about_stats(self):
        expected = "have joined Gittip"
        actual = self.get("/about/stats.html")
        assert expected in actual

    def test_about_charts(self):
        expected = "Money transferred"
        actual = self.get("/about/charts.html")
        assert expected in actual

    @patch("gittip.elsewhere.github.requests")
    def test_github_proxy(self, requests):
        requests.get().status_code = 200
        requests.get().text = GITHUB_USER_UNREGISTERED_LGTEST
        expected = "lgtest has not joined"
        actual = self.get("/on/github/lgtest/").decode("utf8")
        assert expected in actual

    # This hits the network. XXX add a knob to skip this
    def test_twitter_proxy(self):
        expected = "Twitter has not joined"
        actual = self.get("/on/twitter/twitter/").decode("utf8")
        assert expected in actual

    def test_404(self):
        actual = self.get("/about/four-oh-four.html")
        assert "Page Not Found" in actual
        assert "{%" not in actual

    def test_bank_account_complete(self):
        expected = "Page Not Found"
        actual = self.get("/bank-account-complete.html")
        assert expected in actual

    def test_bank_account_json(self):
        expected = "Page Not Found"
        actual = self.get("/bank-account.json")
        assert expected in actual

    def test_credit_card_json(self):
        expected = "Page Not Found"
        actual = self.get("/credit-card.json")
        assert expected in actual

    def test_anonymous_sign_out_redirects(self):
        response = self.client.get("/")
        csrf_token = response.request.context["csrf_token"]
        response = self.client.post("/sign-out.html", {"csrf_token": csrf_token})
        assert response.code == 302
        assert response.headers["Location"] == "/"

    def test_receipts_signed_in(self):
        alice = self.make_participant("alice", claimed_time=datetime.datetime.now(pytz.utc))
        self.db.run("INSERT INTO exchanges (id, participant, amount, fee) VALUES(100,'alice',1,0.1)")
        request = self.client.get("/alice/receipts/100.html", "alice")
        assert request.code == 200
开发者ID:joeyespo,项目名称:www.gittip.com,代码行数:104,代码来源:test_pages.py


注:本文中的gittip.testing.client.TestClient.post方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。