[Explore] Save custom url parameters when user save slices (#4578)

* [Explore] Save url parameters when user save slices

* remove print

(cherry picked from commit bd9ecbe)

* add unit test

(cherry picked from commit 0f350ad)

* wrapping all request params into url_params

(cherry picked from commit 17197c1)
This commit is contained in:
Grace Guo
2018-03-08 13:19:41 -08:00
committed by GitHub
parent 42ebcaad40
commit 9edbd64c5d
7 changed files with 59 additions and 6 deletions

View File

@@ -14,7 +14,8 @@ import numpy
from superset.utils import (
base_json_conv, datetime_f, json_int_dttm_ser, json_iso_dttm_ser,
JSONEncodedDict, memoized, merge_extra_filters, parse_human_timedelta,
JSONEncodedDict, memoized, merge_extra_filters, merge_request_params,
parse_human_timedelta,
SupersetException, validate_json, zlib_compress, zlib_decompress_to_string,
)
@@ -216,6 +217,20 @@ class UtilsTestCase(unittest.TestCase):
merge_extra_filters(form_data)
self.assertEquals(form_data, expected)
def test_merge_request_params(self):
form_data = {
'since': '2000',
'until': 'now',
}
url_params = {
'form_data': form_data,
'dashboard_ids': '(1,2,3,4,5)',
}
merge_request_params(form_data, url_params)
self.assertIn('url_params', form_data.keys())
self.assertIn('dashboard_ids', form_data['url_params'])
self.assertNotIn('form_data', form_data.keys())
def test_datetime_f(self):
self.assertEquals(
datetime_f(datetime(1990, 9, 21, 19, 11, 19, 626096)),