Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Parcial Práctico 2 Tercio v2.0.0 #13

Open
juusechec opened this issue May 4, 2024 · 0 comments
Open

Parcial Práctico 2 Tercio v2.0.0 #13

juusechec opened this issue May 4, 2024 · 0 comments

Comments

@juusechec
Copy link
Contributor

juusechec commented May 4, 2024

image

Descripción Historia de Usuario:


Cómo: Profesor del curso de CVDS
Deseo: qué se realicé una API de vehículos
Para: poder realizar consultas a los vehículos alojados en la base de datos a través de Postman

Criterios de Aceptación Funcionales


El vehículo debe tener los siguientes campos:

Vehicle
ID (INT)
CLASS (ENUM/SMALLINT)
MANUFACTURER (VARCHAR)
MODEL (VARCHAR)
YEAR (SMALLINT)
TYPE (VARCHAR)
PRICE_CENTS (INT)
COLOR (VARCHAR)
  • El campo CLASS contiene 8 elementos: MOTORCYCLE, PASSAGER_CAR, FOUR_TIRE, BUSES, TWO_AXLE, THREE_AXLE, FOUR_AXLE_OR_MORE, MULTI_TRAILER
  • El campo YEAR es un número de 4 dígitos

El diseño de la api debe corresponder a los siguientes recursos:

  • GET /api/vehicles : Retorna todos los vehículos existentes en la base de datos
  • GET /api/vehicle/:id : Retorna el vehículo identificado con el id de valor ":id"
  • POST /api/vehicle : Recibe una entrada JSON con los campos necesarios para crear un nuevo vehículo, retorna una salida JSON correspondiente al vehículo creado
  • PUT /api/vehicle : Recibe una entrada JSON con los campos necesarios para actualizar todos los campos un vehículo existente, retorna una salida JSON correspondiente al vehículo actualizado
  • DELETE /api/vehicle/:id : Recibe un ":id" que corresponde a un vehículo existente y lo elimina de la base de datos
  • PATCH /api/vehicle/:id : Recibe un ":id" de un vehículo existente y en el request body recibe un objeto JSON qué puede tener uno o todos los atributos de un vehículo, sobre los atributos que se envíen, se deberá hacer una actualización parcial
    Ejemplo PATCH:
  • Vehículo existente:
{
  "id": 1,
  "class": "MOTORCYCLE",
  "manufacturer": "BMW",
  "model": "G 310 GS",
  "year": 2010,
  "type": "TRAIL",
  "price_cents": 3000000000,
  "color": "VARIOCOLOR"
}
  • Request method: PATCH
  • Request Resource: /api/vehicle/1
  • Request body: application/json
{
  "manufacturer": "HONDA",
  "model": "ECO DELUXE"
}
  • Response body: application/json
{
  "id": 1,
  "class": "MOTORCYCLE",
  "manufacturer": "HONDA",
  "model": "ECO DELUXE",
  "year": 2010,
  "type": "TRAIL",
  "price_cents": 3000000000,
  "color": "VARIOCOLOR"
}

Criterios de Aceptación No Funcionales


  • El código debe estar basado en el backend del laboratorio 7 (El código final que tu hiciste en equipo, aunque si desean pueden usar el que se toma como base del laboratorio 7)
  • Se debe crear un nuevo repositorio en GitHub, NO SE DEBE MODIFICAR EL REPOSITORIO DEL LABORATORIO 7
  • En la rama main/master debe estar el código del laboratorio 7, qué es el código base sobre el que se va a comenzar a trabajar
  • Se debe crear una nueva rama llamada "feature/parcial2" a partir de main/master en dónde se subirán los cambios que se necesitan para solucionar esta historia de usuario
  • Se debe crear un Pull Request desde la rama "feature/parcial2" hacia la rama main/master
  • Se tendrá 1 hora para realizar esta historia de usuario, pasado ese tiempo no se aceptarán commits

Calificación

Al finalizar la hora, se pasará por cada puesto para verificar usando la siguiente rúbrica:

  1. El API Funciona según los criterios de aceptación Funcionales: 80%
  2. El PR (Pull Request) Fue creado usando los criterios de aceptación No Funcionales: 20%
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant