def test_update_common_task_offices(c): task = Task.get_first_common() unchecked_office = task.offices[0] checked_office = task.offices[1] unchecked_office_tickets_numbers = [ ticket.number for ticket in Serial.all_clean().filter_by( task_id=task.id, office_id=unchecked_office.id) ] old_name = task.name new_name = f'{uuid4()}'.replace('-', '') c.post(f'/task/{task.id}', data={ 'name': new_name, f'check{checked_office.id}': True }, follow_redirects=True) updated_task = Task.query.filter_by(name=new_name).first() assert Task.query.filter_by(name=old_name).first() is None assert updated_task is not None assert len(task.offices) >= len(updated_task.offices) assert checked_office.id in ids(updated_task.offices) assert unchecked_office.id not in ids(updated_task.offices) # Test unchecked office tickets were migrated for number in unchecked_office_tickets_numbers: ticket = Serial.query.filter_by(number=number).first() assert ticket is not None assert ticket.office_id != unchecked_office.id
def main(): tickets = Serial.all_clean() number_of_tickets = tickets.count() if number_of_tickets: tickets.delete() db.session.commit() self.log(f'DeleteTickets(Task): {number_of_tickets} deleted.')
def test_delete_all_tickets(c): auth_token = AuthTokens.get() response = c.delete(f'{BASE}', follow_redirects=True, headers={'Authorization': auth_token.token}) assert response.status == '204 NO CONTENT' assert response.data == b'' assert Serial.all_clean().count() == 0
def test_delete_ticket(c): ticket = Serial.all_clean().first() auth_token = AuthTokens.get() response = c.delete(f'{BASE}/{ticket.id}', follow_redirects=True, headers={'Authorization': auth_token.token}) assert response.status == '204 NO CONTENT' assert response.data == b'' assert Serial.get(ticket.id) is None
def test_get_ticket(c): ticket = Serial.all_clean().first() auth_token = AuthTokens.get() response = c.get(f'{BASE}/{ticket.id}', follow_redirects=True, headers={'Authorization': auth_token.token}) assert response.status == '200 OK' assert Serial.get(response.json.get('id')).id == ticket.id assert all(p in response.json for p in get_module_columns(Serial)) is True
def get(self): ''' Get list of tickets. ''' chunk = request.args.get('chunk', 1, type=int) processed = request.args.get('processed', False, type=bool) tickets = Serial.all_clean() if processed: tickets = tickets.filter_by(p=True) return tickets.paginate(chunk, per_page=LIMIT_PER_CHUNK, error_out=False).items, HTTPStatus.OK
def test_update_ticket(c): ticket = Serial.all_clean().first() new_name = 'new testing name' auth_token = AuthTokens.get() response = c.put(f'{BASE}/{ticket.id}', follow_redirects=True, headers={'Authorization': auth_token.token}, json={'name': new_name}) assert response.status == '200 OK' assert Serial.get(response.json.get('id')).name == new_name assert all(p in response.json for p in get_module_columns(Serial)) is True
def test_background_tasks_delete_tickets(c, get_bg_task): task_enabled = True task_every = 'second' task_time = None response = c.post('/background_tasks', data={ 'cache_tts_enabled': False, 'cache_tts_every': 'second', 'delete_tickets_enabled': task_enabled, 'delete_tickets_every': task_every, 'delete_tickets_time': task_time }, follow_redirects=True) task = get_bg_task('DeleteTickets') assert response.status == '200 OK' assert task.settings.enabled == task_enabled assert task.settings.every == task_every assert task.settings.time is None assert Serial.all_clean().count() == 0
def delete(self): ''' Delete all tickets. ''' Serial.all_clean().delete() db.session.commit() return '', HTTPStatus.NO_CONTENT