Changeset View
Changeset View
Standalone View
Standalone View
cypress/integration/origin-save.spec.js
Show First 20 Lines • Show All 48 Lines • ▼ Show 20 Lines | cy.route({ | ||||
status: responseStatus, | status: responseStatus, | ||||
url: requestUrl, | url: requestUrl, | ||||
response: response | response: response | ||||
}).as('saveRequest'); | }).as('saveRequest'); | ||||
} | } | ||||
// Mocks API response : /save/(:object_type)/(:origin_url) | // Mocks API response : /save/(:object_type)/(:origin_url) | ||||
// object_type : {'git', 'hg', 'svn'} | // object_type : {'git', 'hg', 'svn'} | ||||
function genOriginSaveResponse(objectType, saveRequestStatus, originUrl, saveRequestDate, saveTaskStatus) { | function genOriginSaveResponse(objectType, saveRequestStatus, originUrl, saveRequestDate, saveTaskStatus, visitDate = Date().toString()) { | ||||
return { | return { | ||||
'visit_type': objectType, | 'visit_type': objectType, | ||||
'save_request_status': saveRequestStatus, | 'save_request_status': saveRequestStatus, | ||||
'origin_url': originUrl, | 'origin_url': originUrl, | ||||
'id': 1, | 'id': 1, | ||||
'save_request_date': saveRequestDate, | 'save_request_date': saveRequestDate, | ||||
'save_task_status': saveTaskStatus, | 'save_task_status': saveTaskStatus, | ||||
'visit_date': null | 'visit_date': visitDate | ||||
}; | }; | ||||
}; | }; | ||||
describe('Origin Save Tests', function() { | describe('Origin Save Tests', function() { | ||||
before(function() { | before(function() { | ||||
url = this.Urls.origin_save(); | url = this.Urls.origin_save(); | ||||
origin = this.origin[0]; | origin = this.origin[0]; | ||||
this.originSaveUrl = this.Urls.origin_save_request(origin.type, origin.url); | this.originSaveUrl = this.Urls.origin_save_request(origin.type, origin.url); | ||||
▲ Show 20 Lines • Show All 110 Lines • ▼ Show 20 Lines | cy.get('tbody tr').then(rows => { | ||||
assert.equal($(cells[2]).html(), html); | assert.equal($(cells[2]).html(), html); | ||||
assert.equal($(cells[3]).text(), this.originSaveJSON.data[i].save_request_status); | assert.equal($(cells[3]).text(), this.originSaveJSON.data[i].save_request_status); | ||||
assert.equal($(cells[4]).text(), saveStatus); | assert.equal($(cells[4]).text(), saveStatus); | ||||
++i; | ++i; | ||||
} | } | ||||
}); | }); | ||||
}); | }); | ||||
it('should not add timestamp to the browse origin URL is no visit date has been found', function() { | |||||
const originUrl = 'https://git.example.org/example.git'; | |||||
const saveRequestData = genOriginSaveResponse('git', 'accepted', originUrl, Date().toString(), 'succeed', null); | |||||
const saveRequestsListData = { | |||||
'recordsTotal': 1, | |||||
'draw': 2, | |||||
'recordsFiltered': 1, | |||||
'data': [saveRequestData] | |||||
}; | |||||
cy.route('GET', '/save/requests/list/**', saveRequestsListData); | |||||
cy.get('#swh-origin-save-requests-list-tab').click(); | |||||
cy.get('tbody tr').then(rows => { | |||||
const firstRowCells = rows[0].cells; | |||||
const browseOriginUrl = `${this.Urls.browse_origin()}?origin_url=${originUrl}`; | |||||
const browseOriginLink = `<a href="${browseOriginUrl}">${originUrl}</a>`; | |||||
expect($(firstRowCells[2]).html()).to.have.string(browseOriginLink); | |||||
}); | |||||
}); | |||||
it('should display/close task info popover when clicking on the info button', function() { | it('should display/close task info popover when clicking on the info button', function() { | ||||
cy.route('GET', '/save/requests/list/**', '@originSaveJSON'); | cy.route('GET', '/save/requests/list/**', '@originSaveJSON'); | ||||
cy.route('GET', '/save/task/info/**', '@saveTaskInfoJSON'); | cy.route('GET', '/save/task/info/**', '@saveTaskInfoJSON'); | ||||
cy.get('#swh-origin-save-requests-list-tab').click(); | cy.get('#swh-origin-save-requests-list-tab').click(); | ||||
cy.get('.swh-save-request-info') | cy.get('.swh-save-request-info') | ||||
.eq(0) | .eq(0) | ||||
.click(); | .click(); | ||||
▲ Show 20 Lines • Show All 76 Lines • Show Last 20 Lines |