def test_with_empty_array_as_default_value(self): self.assertEqual({'array_field': []}, translate_doc({}, TranslationMap( {'array_field': { 'default': [] }})))
def test_with_nested_fields_and_multivalued_field(self): self.assertEqual({'a': { 'b': 'value1' }}, translate_doc({'a_b': ['value1']}, TranslationMap({'a_b': { 'name': 'a.b' }})))
def test_with_nested_field(self): self.assertEqual({'a': { 'b': { 'c': 'value' } }}, translate_doc({'a_b_c': 'value'}, TranslationMap( {'a_b_c': { 'name': 'a.b.c' }})))
def test_with_multivalued_field_ignored(self): self.assertEqual({ 'id': '1234', 'ignored_mv_field': 'value1' }, translate_doc( { 'id': '1234', 'ignored_mv_field': ['value1', 'value2'] }, TranslationMap( {'ignored_mv_field': { 'multivalued': False }})))
def test_with_sibling_nested_fields(self): self.assertEqual({'a': { 'b': 'value1', 'c': 'value2' }}, translate_doc({ 'a_b': 'value1', 'a_c': 'value2' }, TranslationMap({ 'a_b': { 'name': 'a.b' }, 'a_c': { 'name': 'a.c' } })))
def test_with_sibling_nested_fields_in_depth(self): self.assertEqual({'a': { 'b': { 'c': { 'd': 'value1' }, 'e': 'value2' } }}, translate_doc({ 'a_b_c_d': 'value1', 'a_b_e': 'value2' }, TranslationMap({ 'a_b_c_d': { 'name': 'a.b.c.d' }, 'a_b_e': { 'name': 'a.b.e' } })))
def test_with_multivalued_field_multiple_values(self): self.assertEqual({'mv_field': ['value1', 'value2']}, translate_doc({'mv_field': ['value1', 'value2']}, TranslationMap({})))
def test_with_multivalued_field_one_value(self): self.assertEqual({'mv_field': 'value1'}, translate_doc({'mv_field': ['value1']}, TranslationMap({})))