私はcentos7に新しいpostgresqlサーバをインストールしました。別のcentos7サーバから接続しました。私はこのモジュールをチェックするためにpsycopg2 tests.unittest.mainを実行しました。すべては除き、罰金です:まずpsycopg2は言語のためにtest_module AssertionErrorをテストしますか?
[[email protected] dbatools]$ python3 -c "from psycopg2 import tests; tests.unittest.main(defaultTest='tests.test_suite')"
[...]
======================================================================
FAIL: test_diagnostics_values (psycopg2.tests.test_module.ExceptionsTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/lib64/python3.4/site-packages/psycopg2/tests/test_module.py", line 189, in test_diagnostics_values
self.assertEqual(e.diag.severity, 'ERROR')
AssertionError: 'ERREUR' != 'ERROR'
- ERREUR
? ^^
+ ERROR
? ^
----------------------------------------------------------------------
Ran 641 tests in 27.328s
FAILED (failures=1, skipped=62)
、両方のサーバーは、LANG = fr_FR.UTF-8(Erreur =フランス語でエラー)がありました。
localectl set-locale LANG=en_US.utf8
は、今私が持っている:
例外がここに上げている[[email protected] dbatools]$ localectl
System Locale: LANG=en_US.utf8
VC Keymap: fr
X11 Layout: fr
[[email protected] dbatools]$ locale
LANG=en_US.utf8
LC_CTYPE="en_US.utf8"
LC_NUMERIC="en_US.utf8"
LC_TIME="en_US.utf8"
LC_COLLATE="en_US.utf8"
LC_MONETARY="en_US.utf8"
LC_MESSAGES="en_US.utf8"
LC_PAPER="en_US.utf8"
LC_NAME="en_US.utf8"
LC_ADDRESS="en_US.utf8"
LC_TELEPHONE="en_US.utf8"
LC_MEASUREMENT="en_US.utf8"
LC_IDENTIFICATION="en_US.utf8"
LC_ALL=en_US.utf8
(psycopg2 /テスト/ test_module.py):
def test_diagnostics_values(self):
cur = self.conn.cursor()
try:
cur.execute("select * from nonexist")
except psycopg2.Error as exc:
e = exc
self.assertEqual(e.diag.sqlstate, '42P01')
self.assertEqual(e.diag.severity, 'ERROR')
は、だから私はEN_US.UTF-8にそれを変更しました
私はgithubのソースを見てpsycopg2.Errorの定義を見つけましたが、本当に見つかりませんでした。 python3シェルで
:
>>> import locale
>>> locale.getlocale()
('en_US', 'UTF-8')
>>> locale.getdefaultlocale()
('en_US', 'UTF-8')
>>> from psycopg2 import tests, __version__ as psycopg2_version
>>> print(psycopg2_version)
2.7.1 (dt dec pq3 ext lo64)
>>> tests.unittest.main(defaultTest='tests.test_suite')
#Same error
は、誰かがpsycopg2のテストを実行して、エラーのこの王に遭遇していますか?私はすべてをen_USに変更した後、なぜフランス語を返しますか?