/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to breezy/tests/test_osutils_encodings.py

  • Committer: Breezy landing bot
  • Author(s): Colin Watson
  • Date: 2020-11-16 21:47:08 UTC
  • mfrom: (7521.1.1 remove-lp-workaround)
  • Revision ID: breezy.the.bot@gmail.com-20201116214708-jos209mgxi41oy15
Remove breezy.git workaround for bazaar.launchpad.net.

Merged from https://code.launchpad.net/~cjwatson/brz/remove-lp-workaround/+merge/393710

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# Copyright (C) 2006-2011 Canonical Ltd
 
1
# Copyright (C) 2006-2012, 2016 Canonical Ltd
2
2
#
3
3
# This program is free software; you can redistribute it and/or modify
4
4
# it under the terms of the GNU General Public License as published by
20
20
import locale
21
21
import sys
22
22
 
23
 
from bzrlib import (
 
23
from .. import (
24
24
    osutils,
25
25
    )
26
 
from bzrlib.tests import (
27
 
        StringIOWrapper,
28
 
        TestCase,
29
 
        )
 
26
from . import (
 
27
    TestCase,
 
28
    )
 
29
from .ui_testing import (
 
30
    BytesIOWithEncoding,
 
31
    StringIOWithEncoding,
 
32
    )
30
33
 
31
34
 
32
35
class FakeCodec(object):
84
87
                             stdin_encoding,
85
88
                             user_encoding='user_encoding',
86
89
                             enable_fake_encodings=True):
87
 
        sys.stdout = StringIOWrapper()
 
90
        sys.stdout = StringIOWithEncoding()
88
91
        sys.stdout.encoding = stdout_encoding
89
 
        sys.stderr = StringIOWrapper()
 
92
        sys.stderr = StringIOWithEncoding()
90
93
        sys.stderr.encoding = stderr_encoding
91
 
        sys.stdin = StringIOWrapper()
 
94
        sys.stdin = StringIOWithEncoding()
92
95
        sys.stdin.encoding = stdin_encoding
93
96
        osutils._cached_user_encoding = user_encoding
94
97
        if enable_fake_encodings:
144
147
        self.assertEqual('latin-1', osutils.get_terminal_encoding())
145
148
 
146
149
        # check stderr
147
 
        self.assertEquals('', sys.stderr.getvalue())
 
150
        self.assertEqual('', sys.stderr.getvalue())
148
151
 
149
152
    def test_terminal_cp_unknown(self):
150
153
        # test against really unknown encoding
158
161
        self.assertEqual('latin-1', osutils.get_terminal_encoding())
159
162
 
160
163
        # check stderr
161
 
        self.assertEquals('bzr: warning: unknown terminal encoding cp-unknown.\n'
162
 
                          '  Using encoding latin-1 instead.\n',
163
 
                          sys.stderr.getvalue())
 
164
        self.assertEqual('brz: warning: unknown terminal encoding cp-unknown.\n'
 
165
                         '  Using encoding latin-1 instead.\n',
 
166
                         sys.stderr.getvalue())
164
167
 
165
168
 
166
169
class TestUserEncoding(TestCase):
171
174
        self.overrideAttr(osutils, '_cached_user_encoding', None)
172
175
        self.overrideAttr(locale, 'getpreferredencoding', self.get_encoding)
173
176
        self.overrideAttr(locale, 'CODESET', None)
174
 
        self.overrideAttr(sys, 'stderr', StringIOWrapper())
 
177
        self.overrideAttr(sys, 'stderr', StringIOWithEncoding())
175
178
 
176
179
    def get_encoding(self, do_setlocale=True):
177
180
        return self._encoding
179
182
    def test_get_user_encoding(self):
180
183
        self._encoding = 'user_encoding'
181
184
        fake_codec.add('user_encoding')
182
 
        self.assertEquals('iso8859-1', # fake_codec maps to latin-1
183
 
                          osutils.get_user_encoding())
184
 
        self.assertEquals('', sys.stderr.getvalue())
 
185
        self.assertEqual('iso8859-1',  # fake_codec maps to latin-1
 
186
                         osutils.get_user_encoding())
 
187
        self.assertEqual('', sys.stderr.getvalue())
185
188
 
186
189
    def test_user_cp0(self):
187
190
        self._encoding = 'cp0'
188
 
        self.assertEquals('ascii', osutils.get_user_encoding())
189
 
        self.assertEquals('', sys.stderr.getvalue())
 
191
        self.assertEqual('ascii', osutils.get_user_encoding())
 
192
        self.assertEqual('', sys.stderr.getvalue())
190
193
 
191
194
    def test_user_cp_unknown(self):
192
195
        self._encoding = 'cp-unknown'
193
 
        self.assertEquals('ascii', osutils.get_user_encoding())
194
 
        self.assertEquals('bzr: warning: unknown encoding cp-unknown.'
195
 
                          ' Continuing with ascii encoding.\n',
196
 
                          sys.stderr.getvalue())
 
196
        self.assertEqual('ascii', osutils.get_user_encoding())
 
197
        self.assertEqual('brz: warning: unknown encoding cp-unknown.'
 
198
                         ' Continuing with ascii encoding.\n',
 
199
                         sys.stderr.getvalue())
197
200
 
198
201
    def test_user_empty(self):
199
202
        """Running bzr from a vim script gives '' for a preferred locale"""
200
203
        self._encoding = ''
201
 
        self.assertEquals('ascii', osutils.get_user_encoding())
202
 
        self.assertEquals('', sys.stderr.getvalue())
 
204
        self.assertEqual('ascii', osutils.get_user_encoding())
 
205
        self.assertEqual('', sys.stderr.getvalue())