Ejemplo n.º 1
0
 def render_with_sql(self, request, query, run_query=True):
     rows = url_get_rows(request)
     page = url_get_page(request)
     fullscreen = url_get_fullscreen(request)
     template = 'fullscreen' if fullscreen else 'play'
     form = QueryForm(request.POST if len(request.POST) else None, instance=query)
     return self.render_template(
         'explorer/%s.html' % template,
         query_viewmodel(
             request.user,
             query,
             title="Playground",
             run_query=run_query and form.is_valid(),
             rows=rows,
             page=page,
             form=form,
         ),
     )
Ejemplo n.º 2
0
 def test_form_is_valid_with_valid_sql(self):
     q = SimpleQueryFactory(sql="select 1;", created_by_user_id=None)
     form = QueryForm(model_to_dict(q))
     self.assertTrue(form.is_valid())
Ejemplo n.º 3
0
 def test_form_is_invalid_with_non_select_statement(self):
     q = SimpleQueryFactory(sql="delete $$a$$;", created_by_user_id=None)
     q.params = {}
     form = QueryForm(model_to_dict(q))
     self.assertFalse(form.is_valid())
Ejemplo n.º 4
0
 def test_form_fails_blacklist(self):
     q = SimpleQueryFactory(sql="delete $$a$$;", created_by_user_id=None)
     q.params = {}
     form = QueryForm(model_to_dict(q))
     self.assertFalse(form.is_valid())
Ejemplo n.º 5
0
 def test_form_is_valid_with_valid_sql(self):
     q = SimpleQueryFactory(sql="select 1;")
     form = QueryForm(model_to_dict(q))
     self.assertTrue(form.is_valid())
Ejemplo n.º 6
0
 def test_form_is_always_valid_with_params(self):
     q = SimpleQueryFactory(sql="select $$a$$;")
     q.params = {}
     form = QueryForm(model_to_dict(q))
     self.assertTrue(form.is_valid())
Ejemplo n.º 7
0
 def test_form_fails_blacklist_even_with_params(self):
     q = SimpleQueryFactory(sql="delete $$a$$;", created_by_user_id=None)
     q.params = {}
     form = QueryForm(model_to_dict(q))
     self.assertFalse(form.is_valid())
Ejemplo n.º 8
0
 def test_form_is_not_valid_with_invalid_sql(self):
     q = SimpleQueryFactory(sql="select a;", created_by_user_id=None)
     form = QueryForm(model_to_dict(q))
     self.assertFalse(form.is_valid())
Ejemplo n.º 9
0
 def test_form_is_always_valid_with_params(self):
     q = SimpleQueryFactory(sql="select $$a$$;")
     q.params = {}
     form = QueryForm(model_to_dict(q))
     self.assertTrue(form.is_valid())
Ejemplo n.º 10
0
 def test_form_is_not_valid_with_invalid_sql(self):
     q = SimpleQueryFactory(sql="select a;")
     form = QueryForm(model_to_dict(q))
     self.assertFalse(form.is_valid())