MCPcopy Index your code
hub / github.com/davispuh/MySQL-for-Python-3 / test_truncation

Method test_truncation

tests/capabilities.py:136–178  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

134 self.cursor.execute('drop table %s' % (self.table))
135
136 def test_truncation(self):
137 columndefs = ( 'col1 INT', 'col2 VARCHAR(255)')
138 def generator(row, col):
139 if col == 0: return row
140 else: return ('{:d}'.format(row%10))*(round(255-self.rows/2)+row)
141 self.create_table(columndefs)
142 insert_statement = ('INSERT INTO %s VALUES (%s)' %
143 (self.table,
144 ','.join(['{!s}'] * len(columndefs))))
145
146 try:
147 self.cursor.execute(insert_statement, (0, '0'*256))
148 except self.connection.DataError:
149 pass
150 else:
151 self.fail("Over-long column did not generate warnings/exception with single insert")
152
153 self.connection.rollback()
154
155 try:
156 for i in range(self.rows):
157 data = []
158 for j in range(len(columndefs)):
159 data.append(generator(i,j))
160 self.cursor.execute(insert_statement,tuple(data))
161 except self.connection.DataError:
162 pass
163 else:
164 self.fail("Over-long columns did not generate warnings/exception with execute()")
165
166 self.connection.rollback()
167
168 try:
169 data = [ [ generator(i,j) for j in range(len(columndefs)) ]
170 for i in range(self.rows) ]
171 self.cursor.executemany(insert_statement, data)
172 except self.connection.DataError:
173 pass
174 else:
175 self.fail("Over-long columns did not generate warnings/exception with executemany()")
176
177 self.connection.rollback()
178 self.cursor.execute('drop table %s' % (self.table))
179
180 def test_CHAR(self):
181 # Character data

Callers

nothing calls this directly

Calls 3

create_tableMethod · 0.95
executeMethod · 0.80
executemanyMethod · 0.80

Tested by

no test coverage detected