Python sqlalchemy.util.text_type() Examples
The following are 30
code examples of sqlalchemy.util.text_type().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
sqlalchemy.util
, or try the search function
.
Example #1
Source File: test_sqlite.py From sqlalchemy with MIT License | 6 votes |
def test_no_convert_unicode(self): """test no utf-8 encoding occurs""" dialect = sqlite.dialect() for t in ( String(), sqltypes.CHAR(), sqltypes.Unicode(), sqltypes.UnicodeText(), String(), sqltypes.CHAR(), sqltypes.Unicode(), sqltypes.UnicodeText(), ): bindproc = t.dialect_impl(dialect).bind_processor(dialect) assert not bindproc or isinstance( bindproc(util.u("some string")), util.text_type )
Example #2
Source File: test_types.py From sqlalchemy with MIT License | 6 votes |
def test_reflect_unicode_no_nvarchar(self): metadata = self.metadata Table("tnv", metadata, Column("data", sqltypes.Unicode(255))) metadata.create_all() m2 = MetaData(testing.db) t2 = Table("tnv", m2, autoload=True) assert isinstance(t2.c.data.type, sqltypes.VARCHAR) if testing.against("oracle+cx_oracle"): assert isinstance( t2.c.data.type.dialect_impl(testing.db.dialect), cx_oracle._OracleString, ) data = u("m’a réveillé.") t2.insert().execute(data=data) res = t2.select().execute().first()["data"] eq_(res, data) assert isinstance(res, util.text_type)
Example #3
Source File: test_query.py From sqlalchemy with MIT License | 6 votes |
def test_convert_unicode(self, connection): meta = self.metadata t1 = Table( "unitest_table", meta, Column("id", Integer, primary_key=True), Column("descr", mssql.MSText()), ) meta.create_all(connection) connection.execute( ue("insert into unitest_table values ('abc \xc3\xa9 def')").encode( "UTF-8" ) ) r = connection.execute(t1.select()).first() assert isinstance(r[1], util.text_type), ( "%s is %s instead of unicode, working on %s" % (r[1], type(r[1]), meta.bind) ) eq_(r[1], util.ue("abc \xc3\xa9 def"))
Example #4
Source File: test_types.py From sqlalchemy with MIT License | 6 votes |
def test_processing(self, connection): users = self.tables.users self._data_fixture() result = connection.execute( users.select().order_by(users.c.user_id) ).fetchall() for assertstr, assertint, assertint2, row in zip( [ "BIND_INjackBIND_OUT", "BIND_INlalaBIND_OUT", "BIND_INfredBIND_OUT", ], [1200, 1500, 900], [1800, 2250, 1350], result, ): for col in list(row)[1:5]: eq_(col, assertstr) eq_(row[5], assertint) eq_(row[6], assertint2) for col in row[3], row[4]: assert isinstance(col, util.text_type)
Example #5
Source File: test_types.py From sqlalchemy with MIT License | 6 votes |
def test_charset_collate_table(self): t = Table( "foo", self.metadata, Column("id", Integer), Column("data", UnicodeText), mysql_default_charset="utf8", mysql_collate="utf8_bin", ) t.create() m2 = MetaData(testing.db) t2 = Table("foo", m2, autoload=True) eq_(t2.kwargs["mysql_collate"], "utf8_bin") eq_(t2.kwargs["mysql_default charset"], "utf8") # test [ticket:2906] # in order to test the condition here, need to use # MySQLdb 1.2.3 and also need to pass either use_unicode=1 # or charset=utf8 to the URL. t.insert().execute(id=1, data=u("some text")) assert isinstance( testing.db.scalar(select([t.c.data])), util.text_type )
Example #6
Source File: test_types.py From sqlalchemy with MIT License | 5 votes |
def test_python_type(self): eq_(types.Integer().python_type, int) eq_(types.Numeric().python_type, decimal.Decimal) eq_(types.Numeric(asdecimal=False).python_type, float) eq_(types.LargeBinary().python_type, util.binary_type) eq_(types.Float().python_type, float) eq_(types.Interval().python_type, datetime.timedelta) eq_(types.Date().python_type, datetime.date) eq_(types.DateTime().python_type, datetime.datetime) eq_(types.String().python_type, str) eq_(types.Unicode().python_type, util.text_type) eq_(types.Enum("one", "two", "three").python_type, str) assert_raises( NotImplementedError, lambda: types.TypeEngine().python_type )
Example #7
Source File: base.py From jbox with MIT License | 5 votes |
def _bindparam_requires_quotes(self, value): """Return True if the given identifier requires quoting.""" lc_value = value.lower() return (lc_value in self.reserved_words or value[0] in self.illegal_initial_characters or not self.legal_characters.match(util.text_type(value)) )
Example #8
Source File: test_execute.py From sqlalchemy with MIT License | 5 votes |
def _engine_fixture(self): buf = util.StringIO() def dump(sql, *multiparams, **params): buf.write(util.text_type(sql.compile(dialect=engine.dialect))) engine = create_mock_engine("postgresql://", executor=dump) return engine, buf
Example #9
Source File: test_types.py From sqlalchemy with MIT License | 5 votes |
def test_coerce_to_unicode(self, connection): engine = testing_engine(options=dict(coerce_to_unicode=False)) with engine.connect() as conn_no_coerce: value = exec_sql( conn_no_coerce, "SELECT 'hello' FROM DUAL" ).scalar() assert isinstance(value, util.binary_type) value = exec_sql(connection, "SELECT 'hello' FROM DUAL").scalar() assert isinstance(value, util.text_type)
Example #10
Source File: test_types.py From sqlalchemy with MIT License | 5 votes |
def test_reflect_nvarchar(self): metadata = self.metadata Table( "tnv", metadata, Column("nv_data", sqltypes.NVARCHAR(255)), Column("c_data", sqltypes.NCHAR(20)), ) metadata.create_all() m2 = MetaData(testing.db) t2 = Table("tnv", m2, autoload=True) assert isinstance(t2.c.nv_data.type, sqltypes.NVARCHAR) assert isinstance(t2.c.c_data.type, sqltypes.NCHAR) if testing.against("oracle+cx_oracle"): assert isinstance( t2.c.nv_data.type.dialect_impl(testing.db.dialect), cx_oracle._OracleUnicodeStringNCHAR, ) assert isinstance( t2.c.c_data.type.dialect_impl(testing.db.dialect), cx_oracle._OracleNChar, ) data = u("m’a réveillé.") with testing.db.connect() as conn: conn.execute(t2.insert(), dict(nv_data=data, c_data=data)) nv_data, c_data = conn.execute(t2.select()).first() eq_(nv_data, data) eq_(c_data, data + (" " * 7)) # char is space padded assert isinstance(nv_data, util.text_type) assert isinstance(c_data, util.text_type)
Example #11
Source File: test_types.py From sqlalchemy with MIT License | 5 votes |
def test_query_returned_as_text(self, connection): engine = testing.db self._fixture_data(engine) data_table = self.tables.data_table result = connection.execute( select([data_table.c.data["k1"].astext]) ).first() if engine.dialect.returns_unicode_strings: assert isinstance(result[0], util.text_type) else: assert isinstance(result[0], util.string_types)
Example #12
Source File: test_reflection.py From sqlalchemy with MIT License | 5 votes |
def test_info_unicode_coercion(self): dialect = mssql.dialect() value = CoerceUnicode().bind_processor(dialect)("a string") assert isinstance(value, util.text_type)
Example #13
Source File: assertions.py From stdm with GNU General Public License v2.0 | 5 votes |
def assert_raises_message(except_cls, msg, callable_, *args, **kwargs): try: callable_(*args, **kwargs) assert False, "Callable did not raise an exception" except except_cls as e: assert re.search( msg, util.text_type(e), re.UNICODE), "%r !~ %s" % (msg, e) print(util.text_type(e).encode('utf-8'))
Example #14
Source File: base.py From jarvis with GNU General Public License v2.0 | 5 votes |
def _bindparam_requires_quotes(self, value): """Return True if the given identifier requires quoting.""" lc_value = value.lower() return (lc_value in self.reserved_words or value[0] in self.illegal_initial_characters or not self.legal_characters.match(util.text_type(value)) )
Example #15
Source File: assertions.py From jarvis with GNU General Public License v2.0 | 5 votes |
def assert_raises_message(except_cls, msg, callable_, *args, **kwargs): try: callable_(*args, **kwargs) assert False, "Callable did not raise an exception" except except_cls as e: assert re.search( msg, util.text_type(e), re.UNICODE), "%r !~ %s" % (msg, e) print(util.text_type(e).encode('utf-8'))
Example #16
Source File: base.py From moviegrabber with GNU General Public License v3.0 | 5 votes |
def _bindparam_requires_quotes(self, value): """Return True if the given identifier requires quoting.""" lc_value = value.lower() return (lc_value in self.reserved_words or value[0] in self.illegal_initial_characters or not self.legal_characters.match(util.text_type(value)) )
Example #17
Source File: cx_oracle.py From moviegrabber with GNU General Public License v3.0 | 5 votes |
def __init__(self, *arg, **kw): OracleExecutionContext_cx_oracle.__init__(self, *arg, **kw) self.statement = util.text_type(self.statement)
Example #18
Source File: cx_oracle.py From moviegrabber with GNU General Public License v3.0 | 5 votes |
def _execute_scalar(self, stmt): return super(OracleExecutionContext_cx_oracle_with_unicode, self).\ _execute_scalar(util.text_type(stmt))
Example #19
Source File: cx_oracle.py From moviegrabber with GNU General Public License v3.0 | 5 votes |
def on_connect(self): if self.cx_oracle_ver < (5,): # no output type handlers before version 5 return cx_Oracle = self.dbapi def output_type_handler(cursor, name, defaultType, size, precision, scale): # convert all NUMBER with precision + positive scale to Decimal # this almost allows "native decimal" mode. if self.supports_native_decimal and \ defaultType == cx_Oracle.NUMBER and \ precision and scale > 0: return cursor.var( cx_Oracle.STRING, 255, outconverter=self._to_decimal, arraysize=cursor.arraysize) # if NUMBER with zero precision and 0 or neg scale, this appears # to indicate "ambiguous". Use a slower converter that will # make a decision based on each value received - the type # may change from row to row (!). This kills # off "native decimal" mode, handlers still needed. elif self.supports_native_decimal and \ defaultType == cx_Oracle.NUMBER \ and not precision and scale <= 0: return cursor.var( cx_Oracle.STRING, 255, outconverter=self._detect_decimal, arraysize=cursor.arraysize) # allow all strings to come back natively as Unicode elif self.coerce_to_unicode and \ defaultType in (cx_Oracle.STRING, cx_Oracle.FIXED_CHAR): return cursor.var(util.text_type, size, cursor.arraysize) def on_connect(conn): conn.outputtypehandler = output_type_handler return on_connect
Example #20
Source File: assertions.py From moviegrabber with GNU General Public License v3.0 | 5 votes |
def assert_raises_message(except_cls, msg, callable_, *args, **kwargs): try: callable_(*args, **kwargs) assert False, "Callable did not raise an exception" except except_cls as e: assert re.search(msg, util.text_type(e), re.UNICODE), "%r !~ %s" % (msg, e) print(util.text_type(e).encode('utf-8'))
Example #21
Source File: base.py From android_universal with MIT License | 5 votes |
def _bindparam_requires_quotes(self, value): """Return True if the given identifier requires quoting.""" lc_value = value.lower() return (lc_value in self.reserved_words or value[0] in self.illegal_initial_characters or not self.legal_characters.match(util.text_type(value)) )
Example #22
Source File: assertions.py From android_universal with MIT License | 5 votes |
def assert_raises_message(except_cls, msg, callable_, *args, **kwargs): try: callable_(*args, **kwargs) assert False, "Callable did not raise an exception" except except_cls as e: assert re.search( msg, util.text_type(e), re.UNICODE), "%r !~ %s" % (msg, e) print(util.text_type(e).encode('utf-8'))
Example #23
Source File: assertions.py From Fluid-Designer with GNU General Public License v3.0 | 5 votes |
def assert_raises_message(except_cls, msg, callable_, *args, **kwargs): try: callable_(*args, **kwargs) assert False, "Callable did not raise an exception" except except_cls as e: assert re.search( msg, util.text_type(e), re.UNICODE), "%r !~ %s" % (msg, e) print(util.text_type(e).encode('utf-8'))
Example #24
Source File: cx_oracle.py From jbox with MIT License | 5 votes |
def __init__(self, *arg, **kw): OracleExecutionContext_cx_oracle.__init__(self, *arg, **kw) self.statement = util.text_type(self.statement)
Example #25
Source File: cx_oracle.py From jbox with MIT License | 5 votes |
def _execute_scalar(self, stmt): return super(OracleExecutionContext_cx_oracle_with_unicode, self).\ _execute_scalar(util.text_type(stmt))
Example #26
Source File: cx_oracle.py From jbox with MIT License | 5 votes |
def on_connect(self): if self.cx_oracle_ver < (5,): # no output type handlers before version 5 return cx_Oracle = self.dbapi def output_type_handler(cursor, name, defaultType, size, precision, scale): # convert all NUMBER with precision + positive scale to Decimal # this almost allows "native decimal" mode. if self.supports_native_decimal and \ defaultType == cx_Oracle.NUMBER and \ precision and scale > 0: return cursor.var( cx_Oracle.STRING, 255, outconverter=self._to_decimal, arraysize=cursor.arraysize) # if NUMBER with zero precision and 0 or neg scale, this appears # to indicate "ambiguous". Use a slower converter that will # make a decision based on each value received - the type # may change from row to row (!). This kills # off "native decimal" mode, handlers still needed. elif self.supports_native_decimal and \ defaultType == cx_Oracle.NUMBER \ and not precision and scale <= 0: return cursor.var( cx_Oracle.STRING, 255, outconverter=self._detect_decimal, arraysize=cursor.arraysize) # allow all strings to come back natively as Unicode elif self.coerce_to_unicode and \ defaultType in (cx_Oracle.STRING, cx_Oracle.FIXED_CHAR): return cursor.var(util.text_type, size, cursor.arraysize) def on_connect(conn): conn.outputtypehandler = output_type_handler return on_connect
Example #27
Source File: assertions.py From jbox with MIT License | 5 votes |
def assert_raises_message(except_cls, msg, callable_, *args, **kwargs): try: callable_(*args, **kwargs) assert False, "Callable did not raise an exception" except except_cls as e: assert re.search( msg, util.text_type(e), re.UNICODE), "%r !~ %s" % (msg, e) print(util.text_type(e).encode('utf-8'))
Example #28
Source File: assertions.py From alembic with MIT License | 5 votes |
def assert_raises_message(except_cls, msg, callable_, *args, **kwargs): try: callable_(*args, **kwargs) assert False, "Callable did not raise an exception" except except_cls as e: assert re.search(msg, util.text_type(e), re.UNICODE), "%r !~ %s" % ( msg, e, ) print(util.text_type(e).encode("utf-8"))
Example #29
Source File: base.py From Fluid-Designer with GNU General Public License v3.0 | 5 votes |
def _bindparam_requires_quotes(self, value): """Return True if the given identifier requires quoting.""" lc_value = value.lower() return (lc_value in self.reserved_words or value[0] in self.illegal_initial_characters or not self.legal_characters.match(util.text_type(value)) )
Example #30
Source File: cx_oracle.py From Fluid-Designer with GNU General Public License v3.0 | 5 votes |
def __init__(self, *arg, **kw): OracleExecutionContext_cx_oracle.__init__(self, *arg, **kw) self.statement = util.text_type(self.statement)