Guest User

Untitled

a guest
Nov 20th, 2018
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.76 KB | None | 0 0
  1. from mongoengine import Document
  2. from project_smile.core.fields import NewLocalizedField
  3.  
  4.  
  5. class DocumentWithNewLocalizedField(CoreDocument, Document):
  6. localized_field = NewLocalizedField()
  7.  
  8.  
  9. class NewLocalizedFieldTest(MongoTestCase):
  10.  
  11. def test_set_and_get_localized_field(self):
  12. set_locale('manager', 'en-US')
  13. doc_obj = DocumentWithNewLocalizedField()
  14. doc_obj.localized_field = 'english'
  15.  
  16. self.assertEqual('english', doc_obj.localized_field)
  17. self.assertEqual(str, type(doc_obj.localized_field))
  18. set_locale('manager', 'es-AR')
  19. self.assertEqual('english', doc_obj.localized_field)
  20.  
  21. set_locale('manager', 'es-AR')
  22. doc_obj.localized_field = 'argentino'
  23.  
  24. self.assertEqual('argentino', doc_obj.localized_field)
  25. self.assertEqual(str, type(doc_obj.localized_field))
  26. set_locale('manager', 'en-US')
  27. self.assertEqual('english', doc_obj.localized_field)
  28.  
  29. set_locale('manager', 'es-AR')
  30. doc_obj.localized_field = ['una', 'lista']
  31. self.assertEqual(['una', 'lista'], doc_obj.localized_field)
  32.  
  33. set_locale('manager', 'en-US')
  34. self.assertEqual('english', doc_obj.localized_field)
  35.  
  36. set_locale('manager', 'es-AR')
  37. doc_obj.localized_field = {'un': 'diccionario'}
  38. self.assertEqual({'un': 'diccionario'}, doc_obj.localized_field)
  39.  
  40. set_locale('manager', 'en-US')
  41. self.assertEqual('english', doc_obj.localized_field)
  42.  
  43. def test_set_get_and_save_localized_field(self):
  44. set_locale('manager', 'en-US')
  45. doc_obj = DocumentWithNewLocalizedField()
  46. doc_obj.localized_field = 'english'
  47. doc_obj.save()
  48.  
  49. doc_obj = DocumentWithNewLocalizedField.objects.with_id(doc_obj.id)
  50. self.assertEqual('english', doc_obj.localized_field)
  51. set_locale('manager', 'es-AR')
  52. self.assertEqual('english', doc_obj.localized_field)
  53.  
  54. set_locale('manager', 'es-AR')
  55. doc_obj.localized_field = 'argentino'
  56. doc_obj.save()
  57.  
  58. doc_obj = DocumentWithNewLocalizedField.objects.with_id(doc_obj.id)
  59. self.assertEqual('argentino', doc_obj.localized_field)
  60. set_locale('manager', 'en-US')
  61. self.assertEqual('english', doc_obj.localized_field)
  62.  
  63. set_locale('manager', 'es-AR')
  64. doc_obj.localized_field = ['guardo', 'listas']
  65. doc_obj.save()
  66. doc_obj = DocumentWithNewLocalizedField.objects.with_id(doc_obj.id)
  67. self.assertEqual(['guardo', 'listas'], doc_obj.localized_field)
  68.  
  69. set_locale('manager', 'es-AR')
  70. doc_obj.localized_field = {'guardo': 'diccionarios'}
  71. doc_obj.save()
  72. doc_obj = DocumentWithNewLocalizedField.objects.with_id(doc_obj.id)
  73. self.assertEqual({'guardo': 'diccionarios'}, doc_obj.localized_field)
Add Comment
Please, Sign In to add comment