def test_endpoint_response_concatenation(self): """Parser should concatenate multiple response cells with the same verb+path. """ source_cells = [ '# ResponseInfo POST /foo/:bar', '# ResponseInfo POST /foo/:bar', '# ResponseInfo POST /foo', 'ignored', '# ResponseInfo GET /foo/:bar' ] parser = APICellParser(comment_prefix='#') endpoints = parser.endpoint_responses(source_cells) self.assertEqual(len(endpoints), 2) # for ease of testing endpoints = dict(endpoints) self.assertEqual(len(endpoints['/foo']), 1) self.assertEqual(len(endpoints['/foo/:bar']), 2) self.assertEqual(endpoints['/foo']['POST'], '# ResponseInfo POST /foo\n') self.assertEqual(endpoints['/foo/:bar']['POST'], '# ResponseInfo POST /foo/:bar\n# ResponseInfo POST /foo/:bar\n') self.assertEqual(endpoints['/foo/:bar']['GET'], '# ResponseInfo GET /foo/:bar\n')