view test/cmp_helper.py @ 6632:e7143e4f6753

try to update to python 3.10.4 from 3.10.0 and try 3.11 Travis ci doesn't seem to tell us what python versions are supported. The one form that is supposed to show that doesn't work for me. Also it looks like nightly is suck at 3.10.0a5+ which isn't nightly. python 3.10.4 is released and current. 3.11 is pre-release/nightly so trying it to replace broken nightly. These upgrades may need to be reverted if invalid.
author John Rouillard <rouilj@ieee.org>
date Sat, 16 Apr 2022 17:04:20 -0400
parents 19bd4b413ed6
children
line wrap: on
line source

class StringFragmentCmpHelper:
    def compareStringFragments(self, s, fragments):
        """Compare a string agains a list of fragments where a tuple denotes a
        set of alternatives
        """
        pos = 0
        for frag in fragments:
            if type(frag) != tuple:
                self.assertEqual(s[pos:pos + len(frag)], frag)
                pos += len(frag)
            else:
                found = False
                for alt in frag:
                    if s[pos:pos + len(alt)] == alt:
                        pos += len(alt)
                        found = True
                        break

                if not found:
                    l = max(map(len, frag))
                    raise AssertionError('%s != %s' %
                                         (repr(s[pos:pos + l]), str(frag)))
        self.assertEqual(s[pos:], '')

Roundup Issue Tracker: http://roundup-tracker.org/