equal
deleted
inserted
replaced
17 # You should have received a copy of the GNU Lesser General Public License along |
17 # You should have received a copy of the GNU Lesser General Public License along |
18 # with CubicWeb. If not, see <http://www.gnu.org/licenses/>. |
18 # with CubicWeb. If not, see <http://www.gnu.org/licenses/>. |
19 """unit tests for i18n messages generator""" |
19 """unit tests for i18n messages generator""" |
20 |
20 |
21 from contextlib import contextmanager |
21 from contextlib import contextmanager |
22 from io import StringIO, BytesIO |
22 from io import StringIO |
23 import os |
23 import os |
24 import os.path as osp |
24 import os.path as osp |
25 import sys |
25 import sys |
26 from subprocess import PIPE, Popen, STDOUT |
26 from subprocess import PIPE, Popen, STDOUT |
27 from unittest import TestCase, main |
27 from unittest import TestCase, main |
28 |
28 |
29 from six import PY2 |
|
30 from mock import patch |
29 from mock import patch |
31 |
30 |
32 from cubicweb.devtools import devctl |
31 from cubicweb.devtools import devctl |
33 from cubicweb.devtools.testlib import BaseTestCase |
32 from cubicweb.devtools.testlib import BaseTestCase |
34 |
33 |
89 blacklist = devctl.I18nCubeMessageExtractor.blacklist | set(['excludeme']) |
88 blacklist = devctl.I18nCubeMessageExtractor.blacklist | set(['excludeme']) |
90 |
89 |
91 |
90 |
92 @contextmanager |
91 @contextmanager |
93 def capture_stdout(): |
92 def capture_stdout(): |
94 stream = BytesIO() if PY2 else StringIO() |
93 stream = StringIO() |
95 sys.stdout = stream |
94 sys.stdout = stream |
96 yield stream |
95 yield stream |
97 stream.seek(0) |
96 stream.seek(0) |
98 sys.stdout = sys.__stdout__ |
97 sys.stdout = sys.__stdout__ |
99 |
98 |