~azzar1/unity/add-show-desktop-key

« back to all changes in this revision

Viewing changes to ivle/webapp/urls/test_router.py

  • Committer: William Grant
  • Date: 2009-07-02 04:20:31 UTC
  • mto: (1294.4.2 ui-the-third)
  • mto: This revision was merged to the branch mainline in revision 1353.
  • Revision ID: me@williamgrant.id.au-20090702042031-ryyijx545seehdh7
Add tests to complete coverage.

Show diffs side-by-side

added added

removed removed

Lines of Context:
128
128
        assert router.resolve('/info2/2008/2') == \
129
129
               (self.r.subjects['info2'].offerings[(2008, 2)], None)
130
130
 
131
 
    def testDefaultRoute(self):
 
131
    def testDefaultView(self):
132
132
        router = Router(root=self.r, viewset='browser')
133
133
        router.add_set_switch('api', 'api')
134
134
        router.add_forward(Root, None, root_to_subject, 1)
157
157
        assert router.resolve('/api/info1/2009/1') == \
158
158
               (self.r.subjects['info1'].offerings[(2009, 1)], OfferingAPIIndex)
159
159
 
 
160
    def testNoDefaultView(self):
 
161
        router = Router(root=self.r)
 
162
        router.add_forward(Root, None, root_to_subject, 1)
 
163
        router.add_view(Subject, '+edit', SubjectEdit)
 
164
 
 
165
        assert router.resolve('/info1/+edit') == \
 
166
               (self.r.subjects['info1'], SubjectEdit)
 
167
 
 
168
        assert router.resolve('/info1') == (self.r.subjects['info1'], None)
 
169
 
 
170
    def testNoRoutesOrViews(self):
 
171
        router = Router(root=self.r)
 
172
        assert router.resolve('/blah') == (self.r, None)
 
173
 
160
174
class TestGeneration(BaseTest):
161
175
    def testOneLevel(self):
162
176
        router = Router(root=self.r)
211
225
        else:
212
226
            raise AssertionError("did not raise RouteConflict")
213
227
 
 
228
    def testViewConflict(self):
 
229
        router = Router(root=self.r)
 
230
        router.add_view(Subject, 'foo', object())
 
231
        router.add_view(Subject, 'foo', object(), viewset='bar')
 
232
        try:
 
233
            router.add_view(Subject, 'foo', object())
 
234
        except RouteConflict:
 
235
            pass
 
236
        else:
 
237
            raise AssertionError("did not raise RouteConflict")
 
238
 
 
239
    def testSetSwitchConflict(self):
 
240
        router = Router(root=self.r)
 
241
        router.add_set_switch('foo', 'bar')
 
242
 
 
243
        try:
 
244
            router.add_set_switch('foo', 'baz')
 
245
        except RouteConflict:
 
246
            pass
 
247
        else:
 
248
            raise AssertionError("did not raise RouteConflict")
 
249
 
214
250
    def testNoPath(self):
215
251
        try:
216
252
            Router(root=self.r).generate(object())