Пример #1
0
    def test_writing_json_datetimes_async(
        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, date.today()]], None)

        res = JSONExporter(request=self.request, querylog=QueryLogFactory()).get_output()
        assert res == json.dumps([{"a": 1, "b": date.today()}], cls=DjangoJSONEncoder)
Пример #2
0
    def test_writing_json_unicode_async(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 = JSONExporter(request=self.request, querylog=QueryLogFactory()).get_output()
        assert res == json.dumps([{"a": 1, "b": None}, {"a": "Jenét", "b": "1"}])
Пример #3
0
    def test_writing_json_datetimes_sync(self, mock_connection_settings):
        self.mock_fetch_query_results.return_value = (
            ('a', 'b'),
            [(1, date.today())],
            None,
        )

        res = JSONExporter(
            request=self.request, querylog=QueryLogFactory()
        ).get_output()
        assert res == json.dumps([{'a': 1, 'b': date.today()}], cls=DjangoJSONEncoder)
Пример #4
0
    def test_writing_json_unicode_sync(self, mock_connection_settings):
        self.mock_fetch_query_results.return_value = (
            ('a', 'b'),
            [(1, None), (u'Jenét', '1')],
            None,
        )

        res = JSONExporter(
            request=self.request, querylog=QueryLogFactory()
        ).get_output()
        assert res == json.dumps([{'a': 1, 'b': None}, {'a': 'Jenét', 'b': '1'}])
Пример #5
0
    def test_writing_datetimes(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, date.today()]]

        res = JSONExporter(user=None, query=None)._get_output(res).getvalue()
        expected = [{'a': 1, 'b': date.today()}]
        assert res == json.dumps(expected, cls=DjangoJSONEncoder)
Пример #6
0
    def test_writing_json(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 = JSONExporter(user=None, query=None)._get_output(res).getvalue()
        expected = [{'a': 1, 'b': None}, {'a': 'Jenét', 'b': '1'}]
        assert res == json.dumps(expected)
Пример #7
0
    def test_writing_json_unicode_sync(self, mock_connection_settings):
        self.mock_fetch_query_results.return_value = (
            ("a", "b"),
            [(1, None), ("Jenét", "1")],
            None,
        )

        res = JSONExporter(request=self.request,
                           querylog=QueryLogFactory()).get_output()
        assert res == json.dumps([{
            "a": 1,
            "b": None
        }, {
            "a": "Jenét",
            "b": "1"
        }])