Merge pull request #1387 from ilvalle/appveyor_py35
enabled py35 unittests on win
This commit is contained in:
@@ -4,6 +4,11 @@ environment:
|
|||||||
matrix:
|
matrix:
|
||||||
- PYTHON: "C:/Python27"
|
- PYTHON: "C:/Python27"
|
||||||
COVERAGE_PROCESS_START: gluon/tests/coverage.ini
|
COVERAGE_PROCESS_START: gluon/tests/coverage.ini
|
||||||
|
PYTHON_ARCH: "64"
|
||||||
|
|
||||||
|
- PYTHON: "C:/Python35"
|
||||||
|
COVERAGE_PROCESS_START: gluon/tests/coverage.ini
|
||||||
|
PYTHON_ARCH: "64"
|
||||||
|
|
||||||
clone_depth: 50
|
clone_depth: 50
|
||||||
|
|
||||||
@@ -16,6 +21,10 @@ install:
|
|||||||
- python get-pip.py
|
- python get-pip.py
|
||||||
- pip install codecov
|
- pip install codecov
|
||||||
- git submodule update --init --recursive
|
- git submodule update --init --recursive
|
||||||
|
- pip install pycrypto
|
||||||
|
# Check that we have the expected version and architecture for Python
|
||||||
|
- "python --version"
|
||||||
|
- "python -c \"import struct; print(struct.calcsize('P') * 8)\""
|
||||||
|
|
||||||
test_script:
|
test_script:
|
||||||
- python web2py.py --run_system_tests --with_coverage
|
- python web2py.py --run_system_tests --with_coverage
|
||||||
|
|||||||
@@ -45,11 +45,6 @@ if PY2:
|
|||||||
unichr = unichr
|
unichr = unichr
|
||||||
unicodeT = unicode
|
unicodeT = unicode
|
||||||
|
|
||||||
def implements_iterator(cls):
|
|
||||||
cls.next = cls.__next__
|
|
||||||
del cls.__next__
|
|
||||||
return cls
|
|
||||||
|
|
||||||
def implements_bool(cls):
|
def implements_bool(cls):
|
||||||
cls.__nonzero__ = cls.__bool__
|
cls.__nonzero__ = cls.__bool__
|
||||||
del cls.__bool__
|
del cls.__bool__
|
||||||
|
|||||||
+4
-4
@@ -40,7 +40,7 @@ try:
|
|||||||
except ImportError:
|
except ImportError:
|
||||||
have_settings = False
|
have_settings = False
|
||||||
|
|
||||||
from gluon._compat import pickle, thread
|
from gluon._compat import pickle, thread, to_bytes, to_native, hashlib_md5
|
||||||
|
|
||||||
try:
|
try:
|
||||||
import psutil
|
import psutil
|
||||||
@@ -304,13 +304,13 @@ class CacheOnDisk(CacheAbstract):
|
|||||||
Windows doesn't allow \ / : * ? "< > | in filenames.
|
Windows doesn't allow \ / : * ? "< > | in filenames.
|
||||||
To go around this encode the keys with base32.
|
To go around this encode the keys with base32.
|
||||||
"""
|
"""
|
||||||
return base64.b32encode(key)
|
return to_native(base64.b32encode(to_bytes(key)))
|
||||||
|
|
||||||
def key_filter_out_windows(key):
|
def key_filter_out_windows(key):
|
||||||
"""
|
"""
|
||||||
We need to decode the keys so regex based removal works.
|
We need to decode the keys so regex based removal works.
|
||||||
"""
|
"""
|
||||||
return base64.b32decode(key)
|
return to_native(base64.b32decode(to_bytes(key)))
|
||||||
|
|
||||||
self.key_filter_in = key_filter_in_windows
|
self.key_filter_in = key_filter_in_windows
|
||||||
self.key_filter_out = key_filter_out_windows
|
self.key_filter_out = key_filter_out_windows
|
||||||
@@ -624,7 +624,7 @@ class Cache(object):
|
|||||||
cache_key.append(current.request.env.query_string)
|
cache_key.append(current.request.env.query_string)
|
||||||
if lang_:
|
if lang_:
|
||||||
cache_key.append(current.T.accepted_language)
|
cache_key.append(current.T.accepted_language)
|
||||||
cache_key = hashlib.md5('__'.join(cache_key)).hexdigest()
|
cache_key = hashlib_md5('__'.join(cache_key)).hexdigest()
|
||||||
if prefix:
|
if prefix:
|
||||||
cache_key = prefix + cache_key
|
cache_key = prefix + cache_key
|
||||||
try:
|
try:
|
||||||
|
|||||||
+2
-4
@@ -21,7 +21,7 @@ import base64
|
|||||||
from gluon import sanitizer, decoder
|
from gluon import sanitizer, decoder
|
||||||
import itertools
|
import itertools
|
||||||
from gluon._compat import reduce, pickle, copyreg, HTMLParser, name2codepoint, iteritems, unichr, unicodeT, urllib_quote, to_bytes, \
|
from gluon._compat import reduce, pickle, copyreg, HTMLParser, name2codepoint, iteritems, unichr, unicodeT, urllib_quote, to_bytes, \
|
||||||
to_native, to_unicode, _local_html_escape, basestring, urlencode
|
to_native, to_unicode, _local_html_escape, basestring, urlencode, implements_bool
|
||||||
import marshal
|
import marshal
|
||||||
|
|
||||||
from gluon.storage import Storage
|
from gluon.storage import Storage
|
||||||
@@ -671,7 +671,7 @@ def XML_pickle(data):
|
|||||||
return XML_unpickle, (marshal.dumps(str(data)),)
|
return XML_unpickle, (marshal.dumps(str(data)),)
|
||||||
copyreg.pickle(XML, XML_pickle, XML_unpickle)
|
copyreg.pickle(XML, XML_pickle, XML_unpickle)
|
||||||
|
|
||||||
|
@implements_bool
|
||||||
class DIV(XmlComponent):
|
class DIV(XmlComponent):
|
||||||
"""
|
"""
|
||||||
HTML helper, for easy generating and manipulating a DOM structure.
|
HTML helper, for easy generating and manipulating a DOM structure.
|
||||||
@@ -824,8 +824,6 @@ class DIV(XmlComponent):
|
|||||||
"""
|
"""
|
||||||
return True
|
return True
|
||||||
|
|
||||||
__nonzero__ = __bool__
|
|
||||||
|
|
||||||
def _fixup(self):
|
def _fixup(self):
|
||||||
"""
|
"""
|
||||||
Handling of provided components.
|
Handling of provided components.
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ import os
|
|||||||
import sys
|
import sys
|
||||||
import platform
|
import platform
|
||||||
from gluon.storage import Storage
|
from gluon.storage import Storage
|
||||||
|
from gluon._compat import PY2
|
||||||
|
|
||||||
global_settings = Storage()
|
global_settings = Storage()
|
||||||
settings = global_settings # legacy compatibility
|
settings = global_settings # legacy compatibility
|
||||||
@@ -40,3 +41,5 @@ global_settings.is_jython = \
|
|||||||
|
|
||||||
global_settings.is_source = os.path.exists(os.path.join(
|
global_settings.is_source = os.path.exists(os.path.join(
|
||||||
global_settings.gluon_parent, 'web2py.py'))
|
global_settings.gluon_parent, 'web2py.py'))
|
||||||
|
|
||||||
|
global_settings.is_py2 = PY2
|
||||||
|
|||||||
Reference in New Issue
Block a user