def test_edit_list__normal_use(ahj_obj, generate_client_with_webpage_credentials): client = generate_client_with_webpage_credentials(Username='******') user = User.objects.get(Username='******') Edit.objects.create(EditID=1, AHJPK=ahj_obj, ChangedBy=user, EditType='A', SourceTable='AHJ', SourceColumn='BuildingCode', SourceRow='2118', DateRequested=timezone.now()) Edit.objects.create(EditID=2, AHJPK=ahj_obj, ChangedBy=user, EditType='A', SourceTable='AHJ', SourceColumn='BuildingCode', SourceRow='2118', DateRequested=timezone.now()) url = reverse('edit-list') response = client.get(url, {'AHJPK': '1'}) assert response.status_code == 200 assert len(response.data) == 2
def test_edit_review__authenticated_normal_use( user_type, generate_client_with_webpage_credentials, ahj_obj): client = generate_client_with_webpage_credentials(Username='******') user = User.objects.get(Username='******') if user_type == 'Admin': user.is_superuser = True user.save() elif user_type == 'AHJOfficial': AHJUserMaintains.objects.create(UserID=user, AHJPK=ahj_obj, MaintainerStatus=True) edit_dict = { 'ChangedBy': user, 'ApprovedBy': None, 'SourceTable': 'AHJ', 'SourceRow': ahj_obj.pk, 'SourceColumn': 'AHJName', 'OldValue': 'oldname', 'NewValue': 'newname', 'DateRequested': timezone.now(), 'DateEffective': None, 'ReviewStatus': 'P', 'EditType': 'U', 'AHJPK': ahj_obj } edit = Edit.objects.create(**edit_dict) url = reverse('edit-review') response = client.post(url, {'EditID': edit.EditID, 'Status': 'A'}) assert response.status_code == 200 edit = Edit.objects.get(EditID=edit.EditID) assert edit.ReviewStatus == 'A' assert edit.ApprovedBy == user tomorrow = timezone.now() + datetime.timedelta(days=1) assert edit.DateEffective.date() == tomorrow.date()
def test_edit_update__normal_use(ahj_obj, generate_client_with_webpage_credentials): client = generate_client_with_webpage_credentials(Username='******') user = User.objects.get(Username='******') inspection = AHJInspection.objects.create(AHJPK=ahj_obj, AHJInspectionName='Inspection1', TechnicianRequired=1, InspectionStatus=True) url = reverse('edit-update') input = [{ 'AHJPK': ahj_obj.AHJPK, 'SourceTable': 'AHJInspection', 'SourceRow': inspection.pk, 'SourceColumn': 'AHJInspectionName', 'NewValue': 'NewName' }] response = client.post(url, input, format='json') assert response.status_code == 200 edit = Edit.objects.get( AHJPK=ahj_obj.AHJPK ) # Got newly created edit object and set it as approved edit.ReviewStatus = 'A' edit.DateEffective = timezone.now() edit.ApprovedBy = user edit.save() views_edits.apply_edits( ) # Now that it's approved, apply edits will apply it. Inspection = AHJInspection.objects.get(AHJPK=ahj_obj) assert Inspection.AHJInspectionName == 'NewName'
def test_edit_addition__normal_use(ahj_obj, generate_client_with_webpage_credentials): client = generate_client_with_webpage_credentials(Username='******') user = User.objects.get(Username='******') AHJInspection.objects.create(AHJPK=ahj_obj, AHJInspectionName='Inspection1', TechnicianRequired=1, InspectionStatus=True) url = reverse('edit-addition') response = client.post(url, { 'SourceTable': 'AHJInspection', 'AHJPK': ahj_obj.AHJPK, 'ParentTable': 'AHJ', 'ParentID': ahj_obj.AHJPK, 'Value': [{ 'AHJInspectionName': 'NewName' }] }, format='json') assert response.status_code == 200 assert response.data[0]['AHJInspectionName'][ 'Value'] == 'NewName' # confirm returned AHJInspection was updated edit = Edit.objects.get(AHJPK=ahj_obj.AHJPK) assert edit.EditType == 'A' assert edit.NewValue == 'True' assert edit.SourceRow == response.data[0]['InspectionID']['Value']
def test_edit_review__no_auth_normal_use( generate_client_with_webpage_credentials, ahj_obj): client = generate_client_with_webpage_credentials(Username='******') user = User.objects.get(Username='******') edit_dict = { 'ChangedBy': user, 'ApprovedBy': None, 'SourceTable': 'AHJ', 'SourceRow': ahj_obj.pk, 'SourceColumn': 'AHJName', 'OldValue': 'oldname', 'NewValue': 'newname', 'DateRequested': timezone.now(), 'DateEffective': None, 'ReviewStatus': 'P', 'EditType': 'U', 'AHJPK': ahj_obj } edit = Edit.objects.create(**edit_dict) url = reverse('edit-review') response = client.post(url, {'EditID': edit.EditID, 'Status': 'A'}) assert response.status_code == 403
def test_edit_list__missing_param(generate_client_with_webpage_credentials): client = generate_client_with_webpage_credentials(Username='******') url = reverse('edit-list') response = client.get(url) assert response.status_code == 200 assert len(response.data) == 0
def test_edit_update__missing_param(params, generate_client_with_webpage_credentials): client = generate_client_with_webpage_credentials(Username='******') url = reverse('edit-deletion') response = client.post(url, params) assert response.status_code == 400
def test_edit_review__edit_does_not_exist( generate_client_with_webpage_credentials): client = generate_client_with_webpage_credentials(Username='******') url = reverse('edit-review') response = client.post(url, {'EditID': 0, 'Status': 'A'}) assert response.status_code == 400