Мое приложение для сокращения URL-адресов поддерживает короткие ссылки, которые ссылаются на другие короткие ссылки. Другими словами, у меня есть существующая короткая ссылка http://localhost: 8080 /dispods, которая указывает на эту ссылку amazon.
Когда я создаю короткую ссылку, указывающую на http://localhost: 8080 /dispods, браузер переходит к последняя ссылка на амазонку просто отлично. Однако тест кипариса просто зависает, несмотря на то, что я установил followRedirect: true. Как я могу заставить тест фиксировать поведение моего приложения и перестать зависать?
Пример приложения:
введите описание изображения здесь
Код теста:
it('Creates a Redirect from a Redirect', function () {
// Cypress does not allow redirect to a redirect
const dishpodsShortUrl = 'http://localhost:8080/f/dishpods'
const originalAmazonLink = "https://www.amazon.com/gp/product/B07CTQ8THP/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1";
cy.visit("/api/v1/create_short_url") // To do - aria tags to identify
cy.get('input[name="longUrl"]').type(dishpodsShortUrl)
cy.get('form').submit()
cy.get('body').length > 0
cy.location().should((loc) => {
expect(loc.host).to.eq('localhost:8080')
expect(loc.href).to.eq('http://localhost:8080/api/v1/create_short_url')
})
cy.get('body')
.invoke('text').then((urlToFollow) => {
cy.request({
url: '/f/' + urlToFollow,
followRedirect: true
}).then((resp) => {
expect(resp.status).to.eq(200)
expect(resp.body).to.eq(dishpodsShortUrl)
})
})
});