From 38a82e903514c242810e677f12f5eebdb775ef0b Mon Sep 17 00:00:00 2001
From: Hiroshi Miura <miurahr@nttdata.co.jp>
Date: Fri, 17 Jul 2015 16:16:07 +0900
Subject: [PATCH] flake8 ignores same hacks as swift

- blacklisted flake8 hacking
- fix against E122 continuation line missing
  indentation or outdented

Closes-bug: #1475516

Change-Id: I708d0a3466a1f85c84e478873e142821ce0774cb
Signed-off-by: Hiroshi Miura <miurahr@nttdata.co.jp>
---
 swiftclient/shell.py           |  8 ++---
 tests/unit/test_shell.py       | 60 +++++++++++++++++-----------------
 tests/unit/test_swiftclient.py |  4 +--
 tox.ini                        | 26 +++++++++------
 4 files changed, 52 insertions(+), 46 deletions(-)

diff --git a/swiftclient/shell.py b/swiftclient/shell.py
index f2388fcf..f0b0fdd5 100755
--- a/swiftclient/shell.py
+++ b/swiftclient/shell.py
@@ -112,8 +112,8 @@ def st_delete(parser, args, output_manager):
                 if '/' in container:
                     output_manager.error(
                         'WARNING: / in container name; you '
-                        "might have meant '%s' instead of '%s'." % (
-                        container.replace('/', ' ', 1), container)
+                        "might have meant '%s' instead of '%s'." %
+                        (container.replace('/', ' ', 1), container)
                     )
                     return
                 objects = args[1:]
@@ -279,8 +279,8 @@ def st_download(parser, args, output_manager):
                 if '/' in container:
                     output_manager.error(
                         'WARNING: / in container name; you '
-                        "might have meant '%s' instead of '%s'." % (
-                        container.replace('/', ' ', 1), container)
+                        "might have meant '%s' instead of '%s'." %
+                        (container.replace('/', ' ', 1), container)
                     )
                     return
                 objects = args[1:]
diff --git a/tests/unit/test_shell.py b/tests/unit/test_shell.py
index 4ac2f5bb..46b1f31b 100644
--- a/tests/unit/test_shell.py
+++ b/tests/unit/test_shell.py
@@ -139,10 +139,10 @@ class TestShell(unittest.TestCase):
             swiftclient.shell.main(argv)
 
             self.assertEqual(output.out,
-                              '   Account: AUTH_account\n'
-                              'Containers: 1\n'
-                              '   Objects: 2\n'
-                              '     Bytes: 3\n')
+                             '   Account: AUTH_account\n'
+                             'Containers: 1\n'
+                             '   Objects: 2\n'
+                             '     Bytes: 3\n')
 
     @mock.patch('swiftclient.service.Connection')
     def test_stat_container(self, connection):
@@ -161,14 +161,14 @@ class TestShell(unittest.TestCase):
             swiftclient.shell.main(argv)
 
             self.assertEqual(output.out,
-                              '  Account: AUTH_account\n'
-                              'Container: container\n'
-                              '  Objects: 1\n'
-                              '    Bytes: 2\n'
-                              ' Read ACL: test2:tester2\n'
-                              'Write ACL: test3:tester3\n'
-                              '  Sync To: other\n'
-                              ' Sync Key: secret\n')
+                             '  Account: AUTH_account\n'
+                             'Container: container\n'
+                             '  Objects: 1\n'
+                             '    Bytes: 2\n'
+                             ' Read ACL: test2:tester2\n'
+                             'Write ACL: test3:tester3\n'
+                             '  Sync To: other\n'
+                             ' Sync Key: secret\n')
 
     @mock.patch('swiftclient.service.Connection')
     def test_stat_object(self, connection):
@@ -187,14 +187,14 @@ class TestShell(unittest.TestCase):
             swiftclient.shell.main(argv)
 
             self.assertEqual(output.out,
-                              '       Account: AUTH_account\n'
-                              '     Container: container\n'
-                              '        Object: object\n'
-                              '  Content Type: text/plain\n'
-                              'Content Length: 42\n'
-                              ' Last Modified: yesterday\n'
-                              '          ETag: md5\n'
-                              '      Manifest: manifest\n')
+                             '       Account: AUTH_account\n'
+                             '     Container: container\n'
+                             '        Object: object\n'
+                             '  Content Type: text/plain\n'
+                             'Content Length: 42\n'
+                             ' Last Modified: yesterday\n'
+                             '          ETag: md5\n'
+                             '      Manifest: manifest\n')
 
     @mock.patch('swiftclient.service.Connection')
     def test_list_account(self, connection):
@@ -230,8 +230,8 @@ class TestShell(unittest.TestCase):
             connection.return_value.get_account.assert_has_calls(calls)
 
             self.assertEqual(output.out,
-                              '    0    0 1970-01-01 00:00:01 container\n'
-                              '    0    0\n')
+                             '    0    0 1970-01-01 00:00:01 container\n'
+                             '    0    0\n')
 
         # Now test again, this time without returning metadata
         connection.return_value.head_container.return_value = {}
@@ -250,8 +250,8 @@ class TestShell(unittest.TestCase):
             connection.return_value.get_account.assert_has_calls(calls)
 
             self.assertEqual(output.out,
-                              '    0    0 ????-??-?? ??:??:?? container\n'
-                              '    0    0\n')
+                             '    0    0 ????-??-?? ??:??:?? container\n'
+                             '    0    0\n')
 
     def test_list_account_totals_error(self):
         # No --lh provided: expect info message about incorrect --totals use
@@ -312,8 +312,8 @@ class TestShell(unittest.TestCase):
             connection.return_value.get_container.assert_has_calls(calls)
 
             self.assertEqual(output.out,
-                              '           0        123      456 object_a\n'
-                              '           0\n')
+                             '           0        123      456 object_a\n'
+                             '           0\n')
 
     @mock.patch('swiftclient.service.makedirs')
     @mock.patch('swiftclient.service.Connection')
@@ -1626,7 +1626,7 @@ class TestAuth(MockHttpTest):
         export OS_AUTH_TOKEN=AUTH_tk5b6b12
         """
         self.assertEqual(textwrap.dedent(expected).lstrip(),
-                          stdout.getvalue())
+                         stdout.getvalue())
 
     def test_auth_verbose(self):
         with mock.patch('swiftclient.client.http_connection') as mock_conn:
@@ -1647,7 +1647,7 @@ class TestAuth(MockHttpTest):
         export ST_KEY='te$tin&'
         """
         self.assertEqual(textwrap.dedent(expected).lstrip(),
-                          stdout.getvalue())
+                         stdout.getvalue())
         self.assertEqual([], mock_conn.mock_calls)
 
     def test_auth_v2(self):
@@ -1670,7 +1670,7 @@ class TestAuth(MockHttpTest):
         export OS_AUTH_TOKEN=token
         """
         self.assertEqual(textwrap.dedent(expected).lstrip(),
-                          stdout.getvalue())
+                         stdout.getvalue())
 
     def test_auth_verbose_v2(self):
         with mock.patch('swiftclient.client.get_auth_keystone') \
@@ -1696,7 +1696,7 @@ class TestAuth(MockHttpTest):
         export OS_USERNAME=demo
         """
         self.assertEqual(textwrap.dedent(expected).lstrip(),
-                          stdout.getvalue())
+                         stdout.getvalue())
         self.assertEqual([], mock_keystone.mock_calls)
 
 
diff --git a/tests/unit/test_swiftclient.py b/tests/unit/test_swiftclient.py
index cefae089..c84d7d71 100644
--- a/tests/unit/test_swiftclient.py
+++ b/tests/unit/test_swiftclient.py
@@ -1486,8 +1486,8 @@ class TestConnection(MockHttpTest):
             mock_get_auth.return_value = (
                 "https://storage.url/v1/AUTH_storage_acct", "AUTH_token"
             )
-            conn = c.Connection("https://auth.url/auth/v2.0", "user", "passkey",
-                                tenant_name="tenant")
+            conn = c.Connection("https://auth.url/auth/v2.0",
+                                "user", "passkey", tenant_name="tenant")
             conn.get_auth()
         self.assertEqual("https://storage.url/v1/AUTH_storage_acct", conn.url)
         self.assertEqual("AUTH_token", conn.token)
diff --git a/tox.ini b/tox.ini
index 7aaec00d..207d3c33 100644
--- a/tox.ini
+++ b/tox.ini
@@ -41,15 +41,21 @@ commands=
     python setup.py build_sphinx
 
 [flake8]
-# it's not a bug that we aren't using all of hacking
-# H102 -> apache2 license exists
-# H103 -> license is apache
-# H201 -> no bare excepts
-# H234 -> assertEquals is deprecated, use assertEqual
-# H238 -> old style classes are deprecated and not available in python3
-# H501 -> don't use locals() for str formatting
-# H903 -> \n not \r\n
-ignore = H
-select = H102, H103, H201, H234, H238, H501, H903
+# it's not a bug that we aren't using all of hacking, ignore:
+# H101: Use TODO(NAME)
+# H202: assertRaises Exception too broad
+# H232: Python 3.x incompatible octal 000001234 should be written as 0o1234
+# H233: Python 3.x incompatible use of print operator
+# H235: assert_ is deprecated, use assertTrue
+# H301: one import per line
+# H306: imports not in alphabetical order (time, os)
+# H401: docstring should not start with a space
+# H403: multi line docstrings should end on a new line
+# H404: multi line docstring should start without a leading new line
+# H405: multi line docstring summary not separated with an empty line
+# H501: Do not use self.__dict__ for string formatting
+# H702: Formatting operation should be outside of localization method call
+# H703: Multiple positional placeholders
+ignore = H101,H202,H232,H233,H235,H301,H306,H401,H403,H404,H405,H501,H702,H703
 show-source = True
 exclude = .venv,.tox,dist,doc,*egg