def test_disable_hooks(self): """ Tests the old (deprecated) names. These deprecated aliases should be removed by version 1.0 """ example_PY2_check = False standard_library.enable_hooks() # deprecated name old_meta_path = copy.copy(sys.meta_path) standard_library.disable_hooks() standard_library.scrub_future_sys_modules() if utils.PY2: self.assertTrue(len(old_meta_path) == len(sys.meta_path) + 1) else: self.assertTrue(len(old_meta_path) == len(sys.meta_path)) # An example of fragile import code that we don't want to break: try: import builtins except ImportError: example_PY2_check = True if utils.PY2: self.assertTrue(example_PY2_check) else: self.assertFalse(example_PY2_check) standard_library.install_hooks() # Imports should succeed again now: import builtins import html if utils.PY2: self.assertTrue(standard_library.detect_hooks()) self.assertTrue(len(old_meta_path) == len(sys.meta_path))
def test_remove_hooks2(self): """ As above, but with the new names """ example_PY2_check = False standard_library.install_hooks() old_meta_path = copy.copy(sys.meta_path) standard_library.remove_hooks() standard_library.scrub_future_sys_modules() if utils.PY2: self.assertTrue(len(old_meta_path) == len(sys.meta_path) + 1) else: self.assertTrue(len(old_meta_path) == len(sys.meta_path)) # An example of fragile import code that we don't want to break: try: import builtins except ImportError: example_PY2_check = True if utils.PY2: self.assertTrue(example_PY2_check) else: self.assertFalse(example_PY2_check) standard_library.install_hooks() # The import should succeed again now: import builtins self.assertTrue(len(old_meta_path) == len(sys.meta_path))
def test_urllib_imports_install_hooks(self): standard_library.remove_hooks() standard_library.install_hooks() import urllib import urllib.parse import urllib.request import urllib.robotparser import urllib.error import urllib.response self.assertTrue(True)
def test_remove_hooks2(self): """ This verifies that modules like http.client are no longer accessible after disabling import hooks, even if they have been previously imported. The reason for this test is that Python caches imported modules in sys.modules. """ standard_library.remove_hooks() try: from . import verify_remove_hooks_affects_imported_modules except RuntimeError as e: self.fail(e.message) finally: standard_library.install_hooks()
def test_detect_hooks(self): """ Tests whether the future.standard_library.detect_hooks is doing its job. """ standard_library.install_hooks() if utils.PY2: self.assertTrue(standard_library.detect_hooks()) meta_path = copy.copy(sys.meta_path) standard_library.remove_hooks() if utils.PY2: self.assertEqual(len(meta_path), len(sys.meta_path) + 1) self.assertFalse(standard_library.detect_hooks())
def test_remove_hooks(self): example_PY2_check = False standard_library.install_hooks() old_meta_path = copy.copy(sys.meta_path) import builtins standard_library.remove_hooks() self.assertTrue(len(old_meta_path) == len(sys.meta_path) + 1) # An example of fragile import code that we don't want to break: try: import builtins except ImportError: example_PY2_check = True if utils.PY2: self.assertTrue(example_PY2_check) else: self.assertFalse(example_PY2_check) standard_library.install_hooks() # The import should succeed again now: import builtins self.assertTrue(len(old_meta_path) == len(sys.meta_path))
from __future__ import unicode_literals from __future__ import print_function from __future__ import division from __future__ import absolute_import from future import standard_library standard_library.install_hooks() # -*- coding: utf-8 -*- from south.utils import datetime_utils as datetime from south.db import db from south.v2 import SchemaMigration from django.db import models class Migration(SchemaMigration): def forwards(self, orm): db.rename_column('ScenarioCreator_controlmasterplan', 'destrucion_reason_order', 'destruction_reason_order') def backwards(self, orm): raise RuntimeError("Cannot reverse this migration. ") models = { 'ScenarioCreator.airbornespreadmodel': { 'Meta': {'object_name': 'AirborneSpreadModel'}, '_disease': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['ScenarioCreator.Disease']"}), '_spread_method_code': ('django.db.models.fields.CharField', [], {'default': "'other'", 'max_length': '255'}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), 'max_distance': ('django.db.models.fields.FloatField', [], {'null': 'True', 'blank': 'True'}), 'name': ('django.db.models.fields.CharField', [], {'null': 'True', 'blank': 'True', 'max_length': '255'}), 'spread_1km_probability': ('django_extras.db.models.fields.PercentField', [], {'null': 'True', 'blank': 'True'}), 'transport_delay': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['ScenarioCreator.ProbabilityFunction']"}),
# distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. """CalendarClient extends the GDataService to streamline Google Calendar operations. CalendarService: Provides methods to query feeds and manipulate items. Extends GDataService. DictionaryToParamList: Function which converts a dictionary into a list of URL arguments (represented as strings). This is a utility function used in CRUD operations. """ from __future__ import unicode_literals from future import standard_library standard_library.install_hooks() __author__ = 'alainv (Alain Vongsouvanh)' import urllib.request, urllib.parse, urllib.error import gdata.client import gdata.calendar.data import atom.data import atom.http_core import gdata.gauth DEFAULT_BATCH_URL = ('https://www.google.com/calendar/feeds/default/private' '/full/batch') class CalendarClient(gdata.client.GDClient):
def setUp(self): self.interpreter = sys.executable standard_library.install_hooks() super(TestStandardLibraryRenames, self).setUp()
def setUp(self): self.interpreter = 'python' standard_library.install_hooks() super(TestStandardLibraryRenames, self).setUp()