tests: move visualization creation to fixture (#30854)

This commit is contained in:
Valentin Deniaud 2019-12-18 12:09:09 +01:00
parent 621cfa9250
commit b371cff33e
1 changed files with 21 additions and 34 deletions

View File

@ -14,6 +14,8 @@
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import pytest
from django.core.urlresolvers import reverse
from bijoe.visualization.models import Visualization
@ -21,6 +23,20 @@ from bijoe.visualization.models import Visualization
from utils import login
@pytest.fixture
def visualization():
return Visualization.objects.create(
name='test',
parameters={
'cube': 'facts1',
'warehouse': 'schema1',
'measure': 'simple_count',
'representation': 'table',
'loop': '',
'filters': {},
'drilldown_x': 'date__yearmonth'})
def test_simple_user_403(app, john_doe):
login(app, john_doe)
app.get('/', status=403)
@ -46,19 +62,7 @@ def test_visualizations_json_api(schema1, app, admin):
assert set([x['slug'] for x in resp.json]) == set(['test', 'test-2', 'test-3', 'test-4'])
def test_visualization_json_api(schema1, app, admin):
visualization = Visualization(
name='test',
parameters={
'cube': 'facts1',
'warehouse': 'schema1',
'measure': 'simple_count',
'representation': 'table',
'loop': '',
'filters': {},
'drilldown_x': 'date__yearmonth'})
visualization.save()
def test_visualization_json_api(schema1, app, admin, visualization):
login(app, admin)
resp = app.get(reverse('visualization-json', kwargs={'pk': visualization.id}))
# values from test_schem1/test_yearmonth_drilldown
@ -71,17 +75,8 @@ def test_visualization_json_api(schema1, app, admin):
}
def test_visualization_json_api_duration(schema1, app, admin):
visualization = Visualization(
name='test',
parameters={
'cube': 'facts1',
'warehouse': 'schema1',
'measure': 'duration',
'representation': 'table',
'loop': '',
'filters': {},
'drilldown_x': 'date__yearmonth'})
def test_visualization_json_api_duration(schema1, app, admin, visualization):
visualization.parameters['measure'] = 'duration'
visualization.save()
login(app, admin)
@ -96,16 +91,8 @@ def test_visualization_json_api_duration(schema1, app, admin):
}
def test_missing_data(schema1, app, admin):
visualization = Visualization(
name='test',
parameters={
'cube': 'missing_cube',
'warehouse': 'schema1',
'measure': 'duration',
'representation': 'table',
'loop': '',
'filters': {}})
def test_missing_data(schema1, app, admin, visualization):
visualization.parameters['cube'] = 'missing_cube'
visualization.save()
login(app, admin)