#4363 Revert py2 portion of mr#4214
Merged a month ago by mikem. Opened a month ago by mikem.

file modified
+1 -3
@@ -25,7 +25,6 @@ 

  from __future__ import absolute_import, division

  

  import base64

- import codecs

  import datetime

  import errno

  import hashlib
@@ -2343,8 +2342,7 @@ 

      if six.PY3:

          config.read(cfgs, encoding="utf8")

      else:

-         for cfg in cfgs:

-             config.readfp(codecs.open(cfg, 'r', 'utf8'))

+         config.read(cfgs)

      return config

  

  

file modified
+8 -13
@@ -247,7 +247,6 @@ 

          if six.PY2:

              self.manager.scp_clz = mock.patch("ConfigParser.SafeConfigParser",

                                                spec=True).start()

-             mock.patch('codecs.open').start()

          else:

              self.manager.cp_clz = mock.patch("configparser.ConfigParser",

                                               spec=True).start()
@@ -299,8 +298,7 @@ 

                                         six.moves.configparser.ConfigParser.__class__))

          self.real_parser_clz.assert_called_once()

          if six.PY2:

-             self.real_parser_clz.return_value.read.assert_not_called()

-             self.real_parser_clz.return_value.readfp.assert_called_once()

+             self.real_parser_clz.return_value.read.assert_called_once_with([files])

          else:

              self.real_parser_clz.return_value.read.assert_called_once_with([files], encoding='utf8')

  
@@ -311,10 +309,9 @@ 

  

          self.real_parser_clz.assert_called_once()

          if six.PY2:

-             self.real_parser_clz.return_value.read.assert_not_called()

-             self.real_parser_clz.return_value.readfp.assert_called()

+             self.real_parser_clz.return_value.read.assert_called_once()

          else:

-             self.real_parser_clz.return_value.read.assert_called()

+             self.real_parser_clz.return_value.read.assert_called_once()

  

          # tuple as config_files

          self.reset_mock()
@@ -373,15 +370,13 @@ 

              conf = koji.read_config_files(files)

          listdir_mock.assert_has_calls([call('gooddir'), call('emptydir')])

          self.real_parser_clz.assert_called_once()

+         expected_files = ['test1.conf', 'gooddir/test1-1.conf', 'gooddir/test1-2.conf',

+                           'test2.conf']

          if six.PY2:

-             self.real_parser_clz.return_value.readfp.assert_called()

+             self.real_parser_clz.return_value.read.assert_called_once_with(expected_files)

          else:

-             self.real_parser_clz.return_value.read.assert_called_once_with(

-                 ['test1.conf',

-                 'gooddir/test1-1.conf',

-                 'gooddir/test1-2.conf',

-                 'test2.conf'],

-                 encoding='utf8')

+             self.real_parser_clz.return_value.read.assert_called_once_with(expected_files,

+                                                                            encoding='utf8')

          self.assertEqual(self.manager.isdir.call_count, 5)

          self.assertEqual(self.manager.isfile.call_count, 6)

          self.assertEqual(self.manager.access.call_count, 4)

@@ -75,7 +75,7 @@ 

          else:

              self.CONFIG = copy.deepcopy(config)

  

-     def read(self, path, encoding):

+     def read(self, path, encoding=None):

          return

  

      def sections(self):

This reverts the py2 portion of #4214, which causes the issue observed in #4351

It's unclear if the issue in #4214 manifests under py2. I'm not able to replicate it on rhel7 with the same script that hits it on rhel8.

Fixes https://pagure.io/koji/issue/4351

1 new commit added

  • drop obsolete mock
a month ago
--- a/tests/test_plugins/test_runroot_builder.py
+++ b/tests/test_plugins/test_runroot_builder.py
@@ -75,7 +75,7 @@ class FakeConfigParser(object):
         else:
             self.CONFIG = copy.deepcopy(config)

-    def read(self, path, encoding):
+    def read(self, path, encoding=None):
         return

this can simply fix the PY2 unitest failures in tests/test_plugins/test_runroot_builder.py

1 new commit added

  • fix py2 test failure
a month ago

Metadata Update from @mikem:
- Pull-request tagged with: testing-basic

a month ago

Metadata Update from @mfilip:
- Pull-request tagged with: testing-done

a month ago

rebased onto 91ec3d5

a month ago

Commit b6c9ce7 fixes this pull-request

Pull-Request has been merged by mikem

a month ago