Guest User

Untitled

a guest
Aug 20th, 2015
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.58 KB | None | 0 0
  1. @mock.patch.object(sqlalchemy_api, '_create_facade')
  2. def test_create_facade_lazily(self, mock_create_facade):
  3. mock_create_facade.side_effect = [mock.Mock(), mock.Mock(),
  4. mock.Mock(), mock.Mock()]
  5. mock_conf_group = mock.MagicMock()
  6. main = sqlalchemy_api._MAIN_FACADE
  7. api = sqlalchemy_api._API_FACADE
  8. f1 = sqlalchemy_api._create_facade_lazily(main, mock_conf_group)
  9. print('f1 = %s' % f1)
  10. f2 = sqlalchemy_api._create_facade_lazily(api, mock_conf_group)
  11. print(f2)
  12. f3 = sqlalchemy_api._create_facade_lazily(main, mock_conf_group,
  13. connection='db1://')
  14. print(f3)
  15. f4 = sqlalchemy_api._create_facade_lazily(main, mock_conf_group,
  16. connection='db2://')
  17. print(f4)
  18. # facade for db2 should be cached and not created a second time
  19. f5 = sqlalchemy_api._create_facade_lazily(main, mock_conf_group,
  20. connection='db2://')
  21. print(f5)
  22. self.assertEqual(4, mock_create_facade.call_count)
  23. # facades with different connections should be different
  24. self.assertNotEqual(f3, f4)
  25. # facades with same connection should be the same
  26. self.assertEqual(f4, f5)
  27.  
  28.  
  29. f1 = <oslo_db.sqlalchemy.enginefacade.LegacyEngineFacade object at 0x7f5f6b17a978>
  30. <Mock id='140047780217912'>
  31. <Mock id='140047780219928'>
  32. <Mock id='140047781833304'>
  33. <Mock id='140047781833304'>
Advertisement
Add Comment
Please, Sign In to add comment