Example #1
0
    def setUp(self):
        super(TransactionResourceTest, self).setUp()

        # Create a user.
        self.email = '*****@*****.**'
        self.password = '******'
        self.user = User.objects.create_user(self.email, self.password)

        TransactionFactory.create_batch(2,
                                        date=datetime.date(2010, 01, 03),
                                        user=self.user,
                                        category_id=1)

        another_user = UserFactory.create(email="*****@*****.**")
        TransactionFactory.create(date=datetime.date(2010, 01, 03),
                                  category_id=1,
                                  user=another_user)

        self.transaction = Transaction.objects.get(pk=1)

        self.post_data = {
            'date': '03/03/2010',
            'value': '40',
            'category': '/api/v1/category/2'
        }

        self.detail_url = '/api/v1/transaction/{0}'.format(self.transaction.id)
Example #2
0
    def test_get_list_json(self):
        """
        Successful GET to a list endpoint.
        """

        split = SplitTransaction.objects.create(user=self.user, description="a split transaction")
        split.transactions = TransactionFactory.create_batch(3, user=self.user, category_id=1, date=datetime.date(2010, 10, 10), description="a installment")

        resp = self.api_client.get('/api/v1/split_transaction/', format='json', authentication=self.get_credentials())
        self.assertValidJSONResponse(resp)

        content = self.deserialize(resp)['objects']

        self.assertEquals(content,
                            [{u'id': 1,
                            u'installments': 3,
                            u'resource_uri': u'/api/v1/split_transaction/1',
                            u'total_value': u'30.00',
                            u'description': u'a split transaction',
                            u'transactions': [{u'category': {u'group': u'group',
                                                             u'id': 1,
                                                             u'is_negative': False,
                                                             u'name': u'cat1',
                                                             u'position': 1,
                                                             u'resource_uri': u'/api/v1/category/1'},
                                               u'date': u'2010-10-10',
                                               u'description': u'a installment',
                                               u'id': 1,
                                               u'installment_number': None,
                                               u'resource_uri': u'/api/v1/transaction/1',
                                               u'installment_of': u'/api/v1/split_transaction/1',
                                               u'value': u'10'},
                                              {u'category': {u'group': u'group',
                                                             u'id': 1,
                                                             u'is_negative': False,
                                                             u'name': u'cat1',
                                                             u'position': 1,
                                                             u'resource_uri': u'/api/v1/category/1'},
                                               u'date': u'2010-10-10',
                                               u'description': u'a installment',
                                               u'id': 2,
                                               u'installment_number': None,
                                               u'resource_uri': u'/api/v1/transaction/2',
                                               u'installment_of': u'/api/v1/split_transaction/1',
                                               u'value': u'10'},
                                              {u'category': {u'group': u'group',
                                                             u'id': 1,
                                                             u'is_negative': False,
                                                             u'name': u'cat1',
                                                             u'position': 1,
                                                             u'resource_uri': u'/api/v1/category/1'},
                                               u'date': u'2010-10-10',
                                               u'description': u'a installment',
                                               u'id': 3,
                                               u'installment_number': None,
                                               u'resource_uri': u'/api/v1/transaction/3',
                                               u'installment_of': u'/api/v1/split_transaction/1',
                                               u'value': u'10'}]}])
Example #3
0
    def setUp(self):
        super(TransactionResourceTest, self).setUp()

        # Create a user.
        self.email = '*****@*****.**'
        self.password = '******'
        self.user = User.objects.create_user(self.email, self.password)

        TransactionFactory.create_batch(2, date=datetime.date(2010, 01, 03), user=self.user, category_id=1)

        another_user = UserFactory.create(email="*****@*****.**")
        TransactionFactory.create(date=datetime.date(2010, 01, 03), category_id=1, user=another_user)

        self.transaction = Transaction.objects.get(pk=1)

        self.post_data = {
            'date': '03/03/2010',
            'value': '40',
            'category': '/api/v1/category/2'
        }

        self.detail_url = '/api/v1/transaction/{0}'.format(self.transaction.id)