def METHOD_NAME(self):
    resource = StubSite(AddressSearchResource(self.manager))
    # Invalid address
    response_error = yield resource.get('thin_wallet/address_search', {b'address': 'vvvv'.encode(), b'count': 3})
    data_error = response_error.json_value()
    self.assertFalse(data_error['success'])
    # Get address search first page success
    response = yield resource.get('thin_wallet/address_search', {b'address': self.address.encode(), b'count': 3})
    data = response.json_value()
    self.assertTrue(data['success'])
    self.assertEqual(len(data['transactions']), 3)
    self.assertTrue(data['has_more'])
    # Getting next page
    response2 = yield resource.get(
        'thin_wallet/address_search',
        {
            b'address': self.address.encode(),
            b'count': b'3',
            b'page': b'next',
            b'hash': data['transactions'][-1]['tx_id'].encode()
        }
    )
    data2 = response2.json_value()
    self.assertTrue(data2['success'])
    self.assertEqual(len(data2['transactions']), 3)
    self.assertFalse(data2['has_more'])
    # Testing that no tx in data is also in data2
    tx_ids_data = [tx['tx_id'] for tx in data['transactions']]
    for tx in data2['transactions']:
        self.assertNotIn(tx['tx_id'], tx_ids_data)
    # Getting previous page from third element
    response3 = yield resource.get(
        'thin_wallet/address_search',
        {
            b'address': self.address.encode(),
            b'count': 3,
            b'page': b'previous',
            b'hash': data['transactions'][-1]['tx_id'].encode()
        }
    )
    data3 = response3.json_value()
    self.assertTrue(data3['success'])
    self.assertEqual(len(data3['transactions']), 2)
    self.assertFalse(data3['has_more'])
    # Testing that no tx in data3 is also in data2
    tx_ids_data = [tx['tx_id'] for tx in data3['transactions']]
    for tx in data2['transactions']:
        self.assertNotIn(tx['tx_id'], tx_ids_data)