PicPay / picpay-desafio-backend

Desafio técnico - Backend

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Mock está fora do ar

cedraz opened this issue · comments

Sim, aconteceu comigo enquanto fazia o desafio. Criei esse novo com base no vídeo da @Fernanda-Kipper

https://run.mocky.io/v3/5794d450-d2e2-4412-8131-73d0293ac1cc

Retorno: { "message": "Autorizado" }

Código HTTP: 200

Eu vi esse mesmo vídeo kkkkkkkkkkkkkkk, muito obrigado cara, o mock ele só precisa retornar { "message": "Autorizado" }? ou ele precisa retornar um status diferente de 200 alguma hora? fiquei com essa dúvida na hora de criar o mock

Também fiquei com essa dúvida kk. Acredito que o retorno seja somente este, pois não encontrei nada no site do mocky relacionado a múltiplas respostas para uma mesma rota.

Uma saída interessante seria criar outra rota dessas, mas dessa vez com o status code 401. E aí, na hora que enviar a requisição, utilizar algum algoritmo para decidir pra qual rota enviar.

Por exemplo:

const URL = "https://run.mocky.io/v3/";

function chooseRoute(){
 const authorizedResponseId = "5794d450-d2e2-4412-8131-73d0293ac1cc";
 const unauthorizedResponseId = "a84e5088-1740-4da6-a932-254e985f8419";

 let x = Math.floor((Math.random() * 10) + 1);
 
 if(x != 10) return authorizedResponseId;
 
 return unauthorizedResponseId; 
}

async function authorizeTransaction(){
  const routeId = chooseRoute();
  const response = await fetch(`${URL}${routeId}`);
  return response.status === 200; 
}

É um algoritmo bem tosco, ele só seleciona um número de 1 a 10 e, caso for 10, dá não autorizado. Mas a ideia é mais ou menos essa.

Cara eu tinha feito praticamente isso tbm soq verificava se o numero era par ou impar kkkkkkkkkkkkkkkk, a parada é q eu tava achando que pelo proprio mock dava pra definir um status aleatorio mas gastei um bom tempo pra nada ;-;, mas vlw mano bom demais troca essa ideia

Pois é! O mock está fora do ar mesmo, eu tinha pego ele diretamente do desafio aqui no repositório...

Eu criei um novo para utilizarmos no video: https://run.mocky.io/v3/9b89b419-a2f7-4885-aa86-5ddcea24d520

Seguindo o mesmo retorno de antes, e igual ao criado pelo @iamthepoe!
Vou colocar lá na descrição do vídeo também

Porém, acho legal brincar com os mocks e fazer retornos diferentes baseados no parâmetro passado, pra simular cenários de erro também como o @iamthepoe sugeriu 💜

Resolvido na #40