def test_writing_csv_unicode_sync(self, mock_connection_settings): self.mock_fetch_query_results.return_value = ( ('a', 'b'), [(1, None), (u'Jenét', 1)], None, ) res = CSVExporter(request=self.request, querylog=QueryLogFactory()).get_output() assert res == 'a,b\r\n1,\r\nJenét,1\r\n'
def test_writing_csv_custom_delimiter_sync(self, mock_connection_settings): self.mock_fetch_query_results.return_value = ( ("?column?", "?column?"), [(1, 2)], None, ) res = CSVExporter(request=self.request, querylog=QueryLogFactory()).get_output(delim="|") assert res == "?column?|?column?\r\n1|2\r\n"
def test_writing_csv_unicode(self, mock_fetch_query_results, mock_connection_settings): # Mock the field names returned by SELECT * FROM ({query}) sq LIMIT 0 self.mock_cursor.description = [(None, 23)] mock_fetch_query_results.return_value = ( ["a", "b"], [[1, None], ["Jen\xe9t", "1"]], None, ) res = CSVExporter(request=self.request, querylog=QueryLogFactory()).get_output() assert res == "a,b\r\n1,\r\nJenét,1\r\n"
def test_writing_csv_custom_delimiter( self, mock_fetch_query_results, mock_connection_settings ): # Mock the field names returned by SELECT * FROM ({query}) sq LIMIT 0 self.mock_cursor.description = [(None, 23)] mock_fetch_query_results.return_value = ( ["?column?", "?column?"], [[1, 2]], None, ) res = CSVExporter(request=self.request, querylog=QueryLogFactory()).get_output(delim="|") assert res == "?column?|?column?\r\n1|2\r\n"
def test_writing_unicode(self): res = QueryResult( SimpleQueryFactory(sql='select 1 as "a", 2 as "b"').sql, connections[settings.EXPLORER_DEFAULT_CONNECTION], 1, 1000, 10000, ) res.execute_query() res.process() res._data = [[1, None], [u"Jenét", '1']] res = CSVExporter(user=None, query=None)._get_output(res).getvalue() assert res == 'a,b\r\n1,\r\nJenét,1\r\n'
def test_custom_delimiter(self): user = UserFactory() q = SimpleQueryFactory(sql='select 1, 2') exporter = CSVExporter(user=user, query=q) res = exporter.get_output(delim='|') assert res == '?column?|?column?\r\n1|2\r\n'