Título: Stock Price Checker - Pruebas fallando a pesar de implementación completa

Problema:

Hola comunidad,

Estoy trabajando en el proyecto Stock Price Checker de FreeCodeCamp y tengo un problema con las pruebas automáticas. Mi aplicación funciona correctamente cuando la pruebo manualmente, pero las pruebas de FreeCodeCamp siguen fallando.

Estado actual de las pruebas:

  • :white_check_mark: Aprobado: Proyecto propio (no URL de ejemplo)

  • :white_check_mark: Aprobado: Sistema de likes (1 like por IP)

  • :cross_mark: Falló: Content Security Policy

  • :cross_mark: Falló: GET request a /api/stock-prices con stockData

  • :cross_mark: Falló: Estructura de stockData (stock, price, likes)

  • :cross_mark: Falló: Comparación de 2 stocks con rel_likes

  • :cross_mark: Falló: 5 pruebas funcionales completas

Lo que he implementado:

  1. Content Security Policy headers:
res.setHeader(

'Content-Security-Policy',

"default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; font-src 'self'; img-src 'self' data:; connect-src 'self'"

);

  1. API endpoint que funciona correctamente:
  • Single stock: /api/stock-prices?stock=GOOG{"stockData":{"stock":"GOOG","price":235.17,"likes":1}}

  • Comparison: /api/stock-prices?stock=GOOG&stock=MSFT{"stockData":[{"stock":"GOOG","price":235.17,"rel_likes":1},{"stock":"MSFT","price":495,"rel_likes":-1}]}

  1. Archivo de pruebas funcionales en tests/2_functional-tests.js con las 5 pruebas requeridas usando Chai y Chai-HTTP

  2. Base de datos PostgreSQL con sistema de likes usando hash SHA-256 de IPs

URLs del proyecto:

  • Solución: https://stock-view-pro-germaneldiurno6.replit.app

  • Código: https://replit.com/@germaneldiurno6/StockViewPro

Pruebas manuales que funcionan:

curl "https://stock-view-pro-germaneldiurno6.replit.app/api/stock-prices?stock=GOOG"

# Respuesta: {"stockData":{"stock":"GOOG","price":235.17,"likes":1}}

curl "https://stock-view-pro-germaneldiurno6.replit.app/api/stock-prices?stock=GOOG&stock=MSFT"  

# Respuesta: {"stockData":[{"stock":"GOOG","price":235.17,"rel_likes":0},{"stock":"MSFT","price":495,"rel_likes":0}]}

Mi pregunta:
¿Hay algo específico que las pruebas automáticas de FreeCodeCamp esperan que no estoy considerando? ¿Puede ser un problema de formato en las pruebas funcionales o en las headers de seguridad?

Cualquier ayuda o sugerencia será muy apreciada.

Tecnologías usadas: Node.js, Express, PostgreSQL, Replit


Esta redacción incluye toda la información relevante y muestra que has hecho el trabajo correctamente. Debería ayudarte a obtener respuestas útiles de la comunidad.

NO FUNCIONA NINGUNO (NO ONE WORKS)

Please provide links to all of the labs you are working on.
Proporcione enlaces a todos los laboratorios en los que está trabajando.

and your code.
y tu código.

I see 3 threads for the same topic. Are they all about the same thing?

1 Like

Ah, I didn’t notice. Looks like one duplicate for the Converter:

Título: Stock Price Checker - Pruebas fallando a pesar de implementación completa

TÍTULO: Metric Imperial Converter - API funciona perfectamente pero sistema de tests reporta fallas

Metric Imperial Converter - API funciona perfectamente pero sistema de tests reporta fallas

1 Like