From efddbcd2a15fceb1bd04e34ae92e8c56841416dd Mon Sep 17 00:00:00 2001 From: Pepijn Bruienne Date: Wed, 13 Apr 2016 15:35:16 -0400 Subject: [PATCH 1/2] Fix #10 when comparing 'string' field types. --- sharepoint/lists/types.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sharepoint/lists/types.py b/sharepoint/lists/types.py index 2f5ee14..826507d 100644 --- a/sharepoint/lists/types.py +++ b/sharepoint/lists/types.py @@ -386,7 +386,8 @@ class CalculatedField(Field): group_multi = 2 immutable = True - types = {'float': float} + types = {'float': float, + 'string': str} type_names = {float: 'float', str: 'text', int: 'int'} From da2c63ba6a7ac1346790ae30c3e0e786b5b20408 Mon Sep 17 00:00:00 2001 From: Pepijn Bruienne Date: Mon, 6 Jun 2016 16:03:56 -0400 Subject: [PATCH 2/2] Also add 'error' type to list types. --- sharepoint/lists/types.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/sharepoint/lists/types.py b/sharepoint/lists/types.py index 826507d..e00c090 100644 --- a/sharepoint/lists/types.py +++ b/sharepoint/lists/types.py @@ -153,10 +153,10 @@ def as_xml(self, row, value, **kwargs): else: field_element.append(self._as_xml(row, value, **kwargs)) return field_element - + def _as_xml(self, row, value, **kwargs): return OUT('text', unicode(value)) - + def __repr__(self): return u"<%s '%s'>" % (type(self).__name__, self.name) @@ -363,7 +363,7 @@ def _parse(self, value): return {'id': int(value[0]), 'name': value[1]} def _unparse(self, value): return [unicode(value['id']), value.get('name', '')] - + def descriptor_set(self, row, value): if value is None: return None @@ -385,9 +385,10 @@ class UserMultiField(UserField): class CalculatedField(Field): group_multi = 2 immutable = True - + types = {'float': float, - 'string': str} + 'string': str, + 'error': str} type_names = {float: 'float', str: 'text', int: 'int'} @@ -406,7 +407,7 @@ def _as_xml(self, row, value, **kwargs): class ModerationStatusField(Field): group_multi = 2 immutable = True - + def _parse(self, value): return moderation.moderation_statuses[int(value[0])] def _unparse(self, value):