Revision aba462a2

b/snf-astakos-app/astakos/im/tests.py
36 36
import datetime
37 37
import functools
38 38

  
39
from snf_django.utils.testing import with_settings, override_settings
39
from snf_django.utils.testing import with_settings, override_settings, assertIn
40 40

  
41 41
from django.test import TestCase, Client
42 42
from django.core import mail
......
1436 1436
        self.assertEqual(r.status_code, 200)
1437 1437
        body = json.loads(r.content)
1438 1438
        for name in resource_names:
1439
            self.assertIn(name, body)
1439
            assertIn(name, body)
1440 1440

  
1441 1441
        # get quota
1442 1442
        r = client.get(u('quotas'), follow=True)
......
1447 1447
        self.assertEqual(r.status_code, 200)
1448 1448
        body = json.loads(r.content)
1449 1449
        system_quota = body['system']
1450
        self.assertIn('system', body)
1450
        assertIn('system', body)
1451 1451
        for name in resource_names:
1452
            self.assertIn(name, system_quota)
1452
            assertIn(name, system_quota)
1453 1453

  
1454 1454
        r = client.get(u('service_quotas'), follow=True)
1455 1455
        self.assertEqual(r.status_code, 401)
......
1458 1458
        r = client.get(u('service_quotas'), follow=True, **s1_headers)
1459 1459
        self.assertEqual(r.status_code, 200)
1460 1460
        body = json.loads(r.content)
1461
        self.assertIn(user.uuid, body)
1461
        assertIn(user.uuid, body)
1462 1462

  
1463 1463
        r = client.get(u('commissions'), follow=True, **s1_headers)
1464 1464
        self.assertEqual(r.status_code, 200)
......
1539 1539
        self.assertEqual(r.status_code, 200)
1540 1540
        body = json.loads(r.content)
1541 1541
        self.assertEqual(body['serial'], serial)
1542
        self.assertIn('issue_time', body)
1542
        assertIn('issue_time', body)
1543 1543
        self.assertEqual(body['provisions'], commission_request['provisions'])
1544 1544
        self.assertEqual(body['name'], commission_request['name'])
1545 1545

  
b/snf-astakos-app/astakos/quotaholder_app/tests.py
33 33

  
34 34
from django.test import TestCase
35 35

  
36
from snf_django.utils.testing import assertGreater, assertIn, assertRaises
36 37
import astakos.quotaholder_app.callpoint as qh
37 38
from astakos.quotaholder_app.exception import (
38 39
    InvalidDataError,
......
77 78
        s1 = self.issue_commission([((holder, source, resource1), limit1/2),
78 79
                                    ((holder, source, resource2), limit2)],
79 80
                                   name="initial")
80
        self.assertGreater(s1, 0)
81
        assertGreater(s1, 0)
81 82

  
82 83
        r = qh.get_commission(self.client, s1)
83 84
        provisions = [
......
95 96
        self.assertEqual(r['serial'], s1)
96 97
        ps = r['provisions']
97 98
        for p in ps:
98
            self.assertIn(p, provisions)
99
            assertIn(p, provisions)
99 100

  
100
        with self.assertRaises(NoCommissionError):
101
        with assertRaises(NoCommissionError):
101 102
            qh.get_commission(self.client, s1+1)
102 103

  
103 104
        # commission exceptions
104 105

  
105
        with self.assertRaises(NoCapacityError) as cm:
106
        with assertRaises(NoCapacityError) as cm:
106 107
            self.issue_commission([((holder, source, resource1), 1),
107 108
                                   ((holder, source, resource2), 1)])
108 109

  
......
115 116
        self.assertEqual(e.data['usage'], limit2)
116 117
        self.assertEqual(e.data['limit'], limit2)
117 118

  
118
        with self.assertRaises(NoQuantityError) as cm:
119
        with assertRaises(NoQuantityError) as cm:
119 120
            self.issue_commission([((holder, source, resource1), -1)])
120 121

  
121 122
        e = cm.exception
......
127 128
        self.assertEqual(e.data['usage'], 0)
128 129
        self.assertEqual(e.data['limit'], 0)
129 130

  
130
        with self.assertRaises(NoHoldingError) as cm:
131
        with assertRaises(NoHoldingError) as cm:
131 132
            self.issue_commission([((holder, source, resource1), 1),
132 133
                                   (('nonex', source, resource1), 1)])
133 134

  
......
138 139
        self.assertEqual(provision['resource'], resource1)
139 140
        self.assertEqual(provision['quantity'], 1)
140 141

  
141
        with self.assertRaises(DuplicateError) as cm:
142
        with assertRaises(DuplicateError) as cm:
142 143
            self.issue_commission([((holder, source, resource1), 1),
143 144
                                   ((holder, source, resource1), 2)])
144 145

  
......
149 150
        self.assertEqual(provision['resource'], resource1)
150 151
        self.assertEqual(provision['quantity'], 2)
151 152

  
152
        with self.assertRaises(InvalidDataError):
153
        with assertRaises(InvalidDataError):
153 154
            self.issue_commission([((holder, source, resource1), 1),
154 155
                                   ((holder, source, resource1), "nan")])
155 156

  
......
217 218
        }
218 219
        self.assertEqual(r, quotas)
219 220

  
220
        with self.assertRaises(NoCapacityError):
221
        with assertRaises(NoCapacityError):
221 222
            self.issue_commission(
222 223
                [((holder, source, resource1), limit1/2+1)])
223 224

  
b/snf-django-lib/snf_django/utils/testing.py
186 186

  
187 187
    def assertItemNotFound(self, response):
188 188
        self.assertFault(response, 404, 'itemNotFound')
189

  
190

  
191
# Imitate unittest assertions new in Python 2.7
192

  
193
class _AssertRaisesContext(object):
194
    """
195
    A context manager used to implement TestCase.assertRaises* methods.
196
    Adapted from unittest2.
197
    """
198

  
199
    def __init__(self, expected):
200
        self.expected = expected
201

  
202
    def __enter__(self):
203
        return self
204

  
205
    def __exit__(self, exc_type, exc_value, tb):
206
        if exc_type is None:
207
            try:
208
                exc_name = self.expected.__name__
209
            except AttributeError:
210
                exc_name = str(self.expected)
211
            raise AssertionError(
212
                "%s not raised" % (exc_name,))
213
        if not issubclass(exc_type, self.expected):
214
            # let unexpected exceptions pass through
215
            return False
216
        self.exception = exc_value  # store for later retrieval
217
        return True
218

  
219

  
220
def assertRaises(excClass):
221
    return _AssertRaisesContext(excClass)
222

  
223

  
224
def assertGreater(x, y):
225
    assert x > y
226

  
227

  
228
def assertIn(x, y):
229
    assert x in y

Also available in: Unified diff