def test_anon_week(self): """Test JOB dashboard returns anon active week runs.""" TaskRunFactory.create() AnonymousTaskRunFactory.create() active_anon_week() sql = "select * from dashboard_week_anon;" results = db.session.execute(sql).fetchall() assert results[0].n_users == 1, results[0].n_users
def test_format_anon_week(self): """Test format anon week works.""" AnonymousTaskRunFactory.create() active_anon_week() res = format_anon_week() assert len(res['labels']) == 1 day = datetime.utcnow().strftime('%Y-%m-%d') assert res['labels'][0] == day assert len(res['series']) == 1 assert res['series'][0][0] == 1, res['series'][0][0]
def test_format_anon_week_empty(self, db_mock): """Test format anon week empty works.""" db_mock.slave_session.execute.return_value = [] TaskRunFactory.create() active_anon_week() res = format_anon_week() assert len(res['labels']) == 1 day = datetime.utcnow().strftime('%Y-%m-%d') assert res['labels'][0] == day assert len(res['series']) == 1 assert res['series'][0][0] == 0, res['series'][0][0]
def test_materialized_view_created(self, db_mock): """Test JOB dashboard materialized view is created.""" result = MagicMock() result.exists = False results = [result] db_mock.slave_session.execute.return_value = results res = active_anon_week() assert db_mock.session.commit.called assert res == 'Materialized view created'
def test_admin_dashboard_admin_user_data(self): """Test ADMIN dashboard admins can access it with data""" url = '/admin/dashboard/' self.register() self.new_project() self.new_task(1) import pybossa.dashboard.jobs as dashboard dashboard.active_anon_week() dashboard.active_users_week() dashboard.new_users_week() dashboard.new_tasks_week() dashboard.new_task_runs_week() dashboard.new_projects_week() dashboard.update_projects_week() dashboard.returning_users_week() res = self.app.get(url, follow_redirects=True) err_msg = "It should return 200" assert res.status_code == 200, err_msg assert "No data" not in res.data, res.data assert "New Users" in res.data, res.data