Fix up various issues in RBTools tests.

Review Request #10952 — Created March 13, 2020 and submitted

david
RBTools
release-2.0.x
rbtools

There are a few issues that cropped up in the RBTools test suite,
especially when running on Python 3:

  • A bad merge made it so we were no longer importing parse_qsl and
    urlparse where they were used.
  • Some assertions were checking that some data were six.text_type when
    they ought to have been checking for the native string type.
  • A typo had ItemResourceTests.tearDown calling the superclass'
    setUp method instead of tearDown.
  • hgsubversion tests haven't worked for a while (the test infrastructure
    overrides the .hgrc but the only way to install the hgsubversion
    extension is via .hgrc). Unfortunately some change made it so that
    after the setUpClass was called, if we then skipped the test, we'd end
    up with a bad cwd for the rest of the test suite, resulting in a bunch
    of broken tests. I haven't yet fixed this, but I have improved the way
    that tests are skipped when hgsubversion isn't available, resulting in
    both faster execution and avoiding the cwd problems.
  • In Python 3, re.split behaves somewhat differently when there's a
    * character in the regex. This was resulting in SVN path splitting
    creating a list with every single character split instead of properly
    splitting only on slashes. /+ is a more correct regex for this
    anyway.

Ran unit tests on Python 2 and 3.

Summary
Fix up various issues in RBTools tests.
Description From Last Updated

These could just go on the class itself.

chipx86chipx86

This can probably just be: cls._skip_reason = \ 'hgsubverison ...' Avoids the string wrapping.

chipx86chipx86
chipx86
  1. Ship It!
  2. 
      
david
chipx86
  1. 
      
  2. rbtools/clients/tests/test_mercurial.py (Diff revisions 1 - 2)
     
     
     
     

    These could just go on the class itself.

  3. rbtools/clients/tests/test_mercurial.py (Diff revisions 1 - 2)
     
     
     

    This can probably just be:

    cls._skip_reason = \
        'hgsubverison ...'
    

    Avoids the string wrapping.

  4. 
      
david
chipx86
  1. Ship It!
  2. 
      
david
Review request changed

Status: Closed (submitted)

Change Summary:

Pushed to release-2.0.x (1a250f7)
Loading...