Initial commit

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
This commit is contained in:
2020-01-15 20:15:14 -05:00
commit a61ad46b49
45 changed files with 1720 additions and 0 deletions

26
tests/test_models.py Normal file
View File

@@ -0,0 +1,26 @@
from django.test import TestCase
from trading.models import User, Commodity, Tx, BalanceError
class TestTransactions(TestCase):
def test_user_balances(self):
# Create users
user1 = User.objects.create_user(username="test1", email="test1@test.test")
user2 = User.objects.create_user(username="test2", email="test2@test.test")
commodity = Commodity(created_by=user1, in_circulation=1000, name="commodity")
commodity.save()
self.assertEqual(user1.balances(), {commodity: 1000})
self.assertEqual(user2.balances(), {})
Tx(source=user1, dest=user2, amount=100, commodity=commodity).save()
self.assertEqual(user1.balances(), {commodity: 900})
self.assertEqual(user2.balances(), {commodity: 100})
with self.assertRaises(BalanceError):
Tx(source=user2, dest=user1, amount=1000, commodity=commodity).save()
self.assertEqual(user1.balances(), {commodity: 900})
self.assertEqual(user2.balances(), {commodity: 100})