示例#1
0
 def test_put_second_try_with_different_id_return_original_id(self):
     user_id_original, user_email = self.user_id_and_email()
     user_id_second, _ = self.user_id_and_email()
     self.synchronize(
         accounts.put(self.connection,
                      user_id=user_id_original,
                      user_email=user_email))
     account = self.synchronize(
         accounts.put(self.connection,
                      user_id=user_id_second,
                      user_email=user_email))
     self.assertEqual(user_id_original, account.user_id)
示例#2
0
    def test_put_second_try_with_different_email_throws(self):
        user_id, user_email = self.user_id_and_email()
        _, user_email2 = self.user_id_and_email()
        self.synchronize(
            accounts.put(self.connection,
                         user_id=user_id,
                         user_email=user_email))

        with self.assertRaises(exceptions.Conflict):
            self.synchronize(
                accounts.put(self.connection,
                             user_id=user_id,
                             user_email=user_email2))
示例#3
0
 def setUp(self):
     self.today = datetime.date.today()
     self.user_id, self.user_email = self.user_id_and_email()
     self.synchronize(
         accounts.put(self.connection,
                      user_id=self.user_id,
                      user_email=self.user_email))
示例#4
0
    def test_put(self):
        user_id, user_email = self.user_id_and_email()

        account = self.synchronize(
            accounts.put(self.connection,
                         user_id=user_id,
                         user_email=user_email))
        self.assertEqual(user_id, account.user_id)

        account = self.synchronize(
            accounts.get(self.connection, user_id=user_id))
        self.assertEqual(user_id, account.user_id)
        self.assertEqual(0, account.balance)
        self.synchronize(
            accounts.put(self.connection,
                         user_id=user_id,
                         user_email=user_email))
示例#5
0
 def test_account_block(self):
     user_id, user_email = self.user_id_and_email()
     self.synchronize(
         accounts.put(self.connection,
                      user_id=user_id,
                      user_email=user_email))
     self.synchronize(accounts.block(self.connection, user_id))
     with self.assertRaises(accounts.exceptions.AccountBlocked):
         self.add_money_for(user_id, 100)
示例#6
0
 def setUp(self):
     super().setUp()
     self.user_id, self.user_email = self.user_id_and_email()
     self.synchronize(
         accounts.put(self.connection,
                      user_id=self.user_id,
                      user_email=self.user_email))
     for _ in range(3):
         self.add_money_for(self.user_id, 100)
示例#7
0
 def test_lock_accounts(self):
     user_id1, user_email1 = self.user_id_and_email()
     user_id2, user_email2 = self.user_id_and_email()
     user_emails = {user_id1: user_email1, user_id2: user_email2}
     user_ids = [user_id1, user_id2]
     user_ids.sort()
     for user_id in user_ids:
         self.synchronize(
             accounts.put(self.connection,
                          user_id=user_id,
                          user_email=user_emails[user_id]))
     locked = self.synchronize(
         accounts.lock_accounts(self.connection, ({
             'user_id': x
         } for x in reversed(user_ids))))
     self.assertEqual([x.user_id for x in locked], user_ids)
示例#8
0
 def setUp(self):
     super().setUp()
     self.user_id, self.user_email = self.user_id_and_email()
     self.synchronize(accounts.put(self.connection, user_id=self.user_id, user_email=self.user_email))