Python collections.UserString() Examples
The following are 30
code examples of collections.UserString().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
collections
, or try the search function
.
Example #1
Source File: Util.py From arnold-usd with Apache License 2.0 | 6 votes |
def to_String_for_subst(s, isinstance=isinstance, str=str, to_String=to_String, BaseStringTypes=BaseStringTypes, SequenceTypes=SequenceTypes, UserString=UserString): # Note that the test cases are sorted by order of probability. if isinstance(s, BaseStringTypes): return s elif isinstance(s, SequenceTypes): return ' '.join([to_String_for_subst(e) for e in s]) elif isinstance(s, UserString): # s.data can only be either a unicode or a regular # string. Please see the UserString initializer. return s.data else: return str(s)
Example #2
Source File: Subst.py From web2board with GNU Lesser General Public License v3.0 | 6 votes |
def substitute(self, args, lvars, within_list): """Substitute expansions in an argument or list of arguments. This serves as a wrapper for splitting up a string into separate tokens. """ if is_String(args) and not isinstance(args, CmdStringHolder): args = str(args) # In case it's a UserString. args = _separate_args.findall(args) for a in args: if a[0] in ' \t\n\r\f\v': if '\n' in a: self.next_line() elif within_list: self.append(a) else: self.next_word() else: self.expand(a, lvars, within_list) else: self.expand(args, lvars, within_list)
Example #3
Source File: Util.py From web2board with GNU Lesser General Public License v3.0 | 6 votes |
def to_String_for_subst(s, isinstance=isinstance, str=str, to_String=to_String, BaseStringTypes=BaseStringTypes, SequenceTypes=SequenceTypes, UserString=UserString): # Note that the test cases are sorted by order of probability. if isinstance(s, BaseStringTypes): return s elif isinstance(s, SequenceTypes): l = [] for e in s: l.append(to_String_for_subst(e)) return ' '.join( s ) elif isinstance(s, UserString): # s.data can only be either a unicode or a regular # string. Please see the UserString initializer. return s.data else: return str(s)
Example #4
Source File: Subst.py From sitoa with Apache License 2.0 | 6 votes |
def substitute(self, args, lvars, within_list): """Substitute expansions in an argument or list of arguments. This serves as a wrapper for splitting up a string into separate tokens. """ if is_String(args) and not isinstance(args, CmdStringHolder): args = str(args) # In case it's a UserString. args = _separate_args.findall(args) for a in args: if a[0] in ' \t\n\r\f\v': if '\n' in a: self.next_line() elif within_list: self.append(a) else: self.next_word() else: self.expand(a, lvars, within_list) else: self.expand(args, lvars, within_list)
Example #5
Source File: Util.py From sitoa with Apache License 2.0 | 6 votes |
def to_String_for_subst(s, isinstance=isinstance, str=str, to_String=to_String, BaseStringTypes=BaseStringTypes, SequenceTypes=SequenceTypes, UserString=UserString): # Note that the test cases are sorted by order of probability. if isinstance(s, BaseStringTypes): return s elif isinstance(s, SequenceTypes): l = [] for e in s: l.append(to_String_for_subst(e)) return ' '.join( s ) elif isinstance(s, UserString): # s.data can only be either a unicode or a regular # string. Please see the UserString initializer. return s.data else: return str(s)
Example #6
Source File: test_pprint.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 5 votes |
def test_user_string(self): d = collections.UserString('') self.assertEqual(pprint.pformat(d, width=1), "''") d = collections.UserString('the quick brown fox jumped over a lazy dog') self.assertEqual(pprint.pformat(d, width=20), """\ ('the quick brown ' 'fox jumped over ' 'a lazy dog')""") self.assertEqual(pprint.pformat({1: d}, width=20), """\ {1: 'the quick ' 'brown fox ' 'jumped over a ' 'lazy dog'}""")
Example #7
Source File: test_userstring.py From ironpython3 with Apache License 2.0 | 5 votes |
def checkequal(self, result, object, methodname, *args, **kwargs): result = self.fixtype(result) object = self.fixtype(object) # we don't fix the arguments, because UserString can't cope with it realresult = getattr(object, methodname)(*args, **kwargs) self.assertEqual( result, realresult )
Example #8
Source File: test_userstring.py From ironpython3 with Apache License 2.0 | 5 votes |
def checkraises(self, exc, obj, methodname, *args): obj = self.fixtype(obj) # we don't fix the arguments, because UserString can't cope with it with self.assertRaises(exc) as cm: getattr(obj, methodname)(*args) self.assertNotEqual(str(cm.exception), '')
Example #9
Source File: test_userstring.py From ironpython3 with Apache License 2.0 | 5 votes |
def checkcall(self, object, methodname, *args): object = self.fixtype(object) # we don't fix the arguments, because UserString can't cope with it getattr(object, methodname)(*args)
Example #10
Source File: query.py From imap_tools with Apache License 2.0 | 5 votes |
def __init__(self, *converted_strings, **unconverted_dicts): self.converted_strings = converted_strings for val in converted_strings: if not any(isinstance(val, t) for t in (str, collections.UserString)): raise ValueError('Unexpected type "{}" for converted part, str like obj expected'.format(type(val))) self.converted_params = ParamConverter(unconverted_dicts).convert() if not any((self.converted_strings, self.converted_params)): raise ValueError('{} expects params'.format(self.__class__.__name__)) super().__init__(self.combine_params())
Example #11
Source File: TestCmd.py From gyp with BSD 3-Clause "New" or "Revised" License | 5 votes |
def is_String(e): return isinstance(e, basestring) or isinstance(e, UserString)
Example #12
Source File: TestCmd.py From gyp with BSD 3-Clause "New" or "Revised" License | 5 votes |
def is_String(e): return isinstance(e, basestring) or isinstance(e, UserString)
Example #13
Source File: Subst.py From sitoa with Apache License 2.0 | 5 votes |
def __init__(self, cmd, literal=None): collections.UserString.__init__(self, cmd) self.literal = literal
Example #14
Source File: Subst.py From sitoa with Apache License 2.0 | 5 votes |
def substitute(self, args, lvars): """Substitute expansions in an argument or list of arguments. This serves as a wrapper for splitting up a string into separate tokens. """ if is_String(args) and not isinstance(args, CmdStringHolder): args = str(args) # In case it's a UserString. try: def sub_match(match): return self.conv(self.expand(match.group(1), lvars)) result = _dollar_exps.sub(sub_match, args) except TypeError: # If the internal conversion routine doesn't return # strings (it could be overridden to return Nodes, for # example), then the 1.5.2 re module will throw this # exception. Back off to a slower, general-purpose # algorithm that works for all data types. args = _separate_args.findall(args) result = [] for a in args: result.append(self.conv(self.expand(a, lvars))) if len(result) == 1: result = result[0] else: result = ''.join(map(str, result)) return result else: return self.expand(args, lvars)
Example #15
Source File: Util.py From sitoa with Apache License 2.0 | 5 votes |
def to_String(s, isinstance=isinstance, str=str, UserString=UserString, BaseStringTypes=BaseStringTypes): if isinstance(s,BaseStringTypes): # Early out when already a string! return s elif isinstance(s, UserString): # s.data can only be either a unicode or a regular # string. Please see the UserString initializer. return s.data else: return str(s)
Example #16
Source File: abcstring.py From CrossHair with MIT License | 5 votes |
def _real_string(thing: object): return thing.data if isinstance(thing, (UserString, AbcString)) else thing
Example #17
Source File: test_collections.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 5 votes |
def test_str_protocol(self): self._superset_test(UserString, str)
Example #18
Source File: test_weakset.py From ironpython3 with Apache License 2.0 | 5 votes |
def test_remove(self): x = ustr('a') self.s.remove(x) self.assertNotIn(x, self.s) self.assertRaises(KeyError, self.s.remove, x) self.assertRaises(TypeError, self.s.remove, [])
Example #19
Source File: test_weakset.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 5 votes |
def setUp(self): # need to keep references to them self.items = [ustr(c) for c in ('a', 'b', 'c')] self.items2 = [ustr(c) for c in ('x', 'y', 'z')] self.ab_items = [ustr(c) for c in 'ab'] self.abcde_items = [ustr(c) for c in 'abcde'] self.def_items = [ustr(c) for c in 'def'] self.ab_weakset = WeakSet(self.ab_items) self.abcde_weakset = WeakSet(self.abcde_items) self.def_weakset = WeakSet(self.def_items) self.letters = [ustr(c) for c in string.ascii_letters] self.s = WeakSet(self.items) self.d = dict.fromkeys(self.items) self.obj = ustr('F') self.fs = WeakSet([self.obj])
Example #20
Source File: test_weakset.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 5 votes |
def test_contains(self): for c in self.letters: self.assertEqual(c in self.s, c in self.d) # 1 is not weakref'able, but that TypeError is caught by __contains__ self.assertNotIn(1, self.s) self.assertIn(self.obj, self.fs) del self.obj self.assertNotIn(ustr('F'), self.fs)
Example #21
Source File: test_weakset.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 5 votes |
def test_add(self): x = ustr('Q') self.s.add(x) self.assertIn(x, self.s) dup = self.s.copy() self.s.add(x) self.assertEqual(self.s, dup) self.assertRaises(TypeError, self.s.add, []) self.fs.add(Foo()) self.assertTrue(len(self.fs) == 1) self.fs.add(self.obj) self.assertTrue(len(self.fs) == 1)
Example #22
Source File: test_weakset.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 5 votes |
def test_discard(self): a, q = ustr('a'), ustr('Q') self.s.discard(a) self.assertNotIn(a, self.s) self.s.discard(q) self.assertRaises(TypeError, self.s.discard, [])
Example #23
Source File: test_weakset.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 5 votes |
def test_weak_destroy_while_iterating(self): # Issue #7105: iterators shouldn't crash when a key is implicitly removed # Create new items to be sure no-one else holds a reference items = [ustr(c) for c in ('a', 'b', 'c')] s = WeakSet(items) it = iter(s) next(it) # Trigger internal iteration # Destroy an item del items[-1] gc.collect() # just in case # We have removed either the first consumed items, or another one self.assertIn(len(list(it)), [len(items), len(items) - 1]) del it # The removal has been committed self.assertEqual(len(s), len(items))
Example #24
Source File: test_weakset.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 5 votes |
def test_weak_destroy_and_mutate_while_iterating(self): # Issue #7105: iterators shouldn't crash when a key is implicitly removed items = [ustr(c) for c in string.ascii_letters] s = WeakSet(items) @contextlib.contextmanager def testcontext(): try: it = iter(s) # Start iterator yielded = ustr(str(next(it))) # Schedule an item for removal and recreate it u = ustr(str(items.pop())) if yielded == u: # The iterator still has a reference to the removed item, # advance it (issue #20006). next(it) gc.collect() # just in case yield u finally: it = None # should commit all removals with testcontext() as u: self.assertNotIn(u, s) with testcontext() as u: self.assertRaises(KeyError, s.remove, u) self.assertNotIn(u, s) with testcontext() as u: s.add(u) self.assertIn(u, s) t = s.copy() with testcontext() as u: s.update(t) self.assertEqual(len(s), len(t)) with testcontext() as u: s.clear() self.assertEqual(len(s), 0)
Example #25
Source File: test_userstring.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 5 votes |
def checkequal(self, result, object, methodname, *args, **kwargs): result = self.fixtype(result) object = self.fixtype(object) # we don't fix the arguments, because UserString can't cope with it realresult = getattr(object, methodname)(*args, **kwargs) self.assertEqual( result, realresult )
Example #26
Source File: test_userstring.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 5 votes |
def checkraises(self, exc, obj, methodname, *args): obj = self.fixtype(obj) # we don't fix the arguments, because UserString can't cope with it with self.assertRaises(exc) as cm: getattr(obj, methodname)(*args) self.assertNotEqual(str(cm.exception), '')
Example #27
Source File: test_collections.py From android_universal with MIT License | 5 votes |
def test_str_protocol(self): self._superset_test(UserString, str)
Example #28
Source File: test_pprint.py From android_universal with MIT License | 5 votes |
def test_user_string(self): d = collections.UserString('') self.assertEqual(pprint.pformat(d, width=1), "''") d = collections.UserString('the quick brown fox jumped over a lazy dog') self.assertEqual(pprint.pformat(d, width=20), """\ ('the quick brown ' 'fox jumped over ' 'a lazy dog')""") self.assertEqual(pprint.pformat({1: d}, width=20), """\ {1: 'the quick ' 'brown fox ' 'jumped over a ' 'lazy dog'}""")
Example #29
Source File: test_weakset.py From Fluid-Designer with GNU General Public License v3.0 | 5 votes |
def test_contains(self): for c in self.letters: self.assertEqual(c in self.s, c in self.d) # 1 is not weakref'able, but that TypeError is caught by __contains__ self.assertNotIn(1, self.s) self.assertIn(self.obj, self.fs) del self.obj self.assertNotIn(ustr('F'), self.fs)
Example #30
Source File: Util.py From arnold-usd with Apache License 2.0 | 5 votes |
def to_String(s, isinstance=isinstance, str=str, UserString=UserString, BaseStringTypes=BaseStringTypes): if isinstance(s,BaseStringTypes): # Early out when already a string! return s elif isinstance(s, UserString): # s.data can only be either a unicode or a regular # string. Please see the UserString initializer. return s.data else: return str(s)