Open hartmannjean opened 9 months ago
Atualizado de bug
para feature
porque o recurso que estava faltando já está criado, o que está faltando é o recurso de atualização de tarefa.
name:
type: string
details: Guarda o nome da tarefa
description:
type: string
details: Guarda a descrição da tarefa
date:
type: string
pattern: YYYY-MM-DD HH:MM
details: Guarda data e hora da tarefa
checked:
type: boolean
tag:
type: string
options:
- application
- account
- exercise
- beauty
- literature
priority:
type: string
options:
- low
- medium
- high
- urgent
category:
type: string
options:
- personal
- study
- finance
- career
- health
Path: /tasks
Method: POST
Headers:
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
Body:
name: required
description: required
date: required
tag: required
priority: required
category: required
{
"message": "Tarefa criada com sucesso!"
}
Path: /tasks
Method: GET
Headers:
Authorization: Bearer ACCESS_TOKEN
QueryParams:
month: required
year: required
Exemplo de url:
/tasks?month=1&year=2024
{
"count": 7,
"tasks": [
{
"id": 8,
"name": "Nome desta tarefa",
"description": "Descrição da tarefa",
"date": "2024-03-12T13:00:00.000Z",
"tag": "exercise",
"category": "study",
"priority": "urgent",
"checked": false
},
{
"id": 3,
"name": "Nome desta tarefa",
"description": "Descrição da tarefa",
"date": "2024-03-12T13:00:00.000Z",
"tag": "exercise",
"category": "study",
"priority": "medium",
"checked": false
},
...,
]
}
Path: /tasks/:id
Method: GET
Headers:
Authorization: Bearer ACCESS_TOKEN
UrlParam:
id: required
Exemplo de url:
/tasks/33
{
"task": {
"id": 2,
"name": "Nome desta tarefa",
"description": "Descrição da tarefa",
"date": "2024-03-12T18:42:00.000Z",
"tag": "exercise",
"priority": "medium",
"category": "study",
"checked": false
}
}
É obrigatório editar ao menos um campo!
Path: /tasks
Method: PATCH
Headers:
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
Body:
id: required
name: optional
description: optional
date: optional
tag: optional
priority: optional
category: optional
checked: optional
{
"updated": true
}
Path: /tasks/:id
Method: DELETE
Headers:
Authorization: Bearer ACCESS_TOKEN
UrlParam:
id: required
Exemplo de url:
/tasks/33
{
"deleted": true
}
@RoutinelyOrganization/quality-assurance
Todas as rotas de tarefas foram atualizadas para aceitar as novas mudanças:
GMT-0300
usado no Brasil:\
Horário enviado: 2024-01-21 13:40
\
Horário retornado: 2024-01-21T16:40:00.000Z
Antes de continuar:
Todas as rotas foram alteradas.
# criar uma tarefa
# todos os campos são obrigatórios
POST /tasks
Authorization: Bearer accessToken
Content-Type: application/json
Body {
"name": "Uma atividade normal",
"description": "Descrição personalizada da atividade",
"date": "2024-04-01 04:20",
"priority": "low",
"tag": "application",
"category": "personal",
}
# buscar uma tarefa
GET /tasks/:id
Authorization: Bearer accessToken
# buscar muitas tarefas
GET /tasks?month=3&year=2024
Authorization: Bearer accessToken
# alterar uma tarefa
# todas as propriedades exceto o ID são opcionais
PATCH /tasks
Authorization: Bearer accessToken
Content-Type: application/json
Body {
"id": 1,
"name": "Uma atividade normal",
"description": "Descrição personalizada da atividade",
"date": "2024-04-01 04:20",
"priority": "low",
"tag": "application",
"category": "personal",
"checked": false
}
# excluir uma tarefa
DELETE /tasks/:id
Authorization: Bearer accessToken
@viniciuscosmome, tudo bem?
Essa task está em um ambiente que eu ou a @lilianekassab conseguimos testar?
Tentamos chamar o POST para criar a task e retornou um 400 informando que o campo hour é obrigatório
cURL
curl --location 'https://routinely-api-dev.onrender.com/tasks' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer 2a21855988562f9b453b42659f892cdf37a16677' \ --data '{ "name": "Primeiro Teste", "date": "2024-09-02", "description": "Primeiro Teste via api", "priority": "medium", "tag": "literature", "category": "personal" }'
Evidencia:
@ellensilva , essa task não foi homologada. Ela está na branch develop
Evidências de testes
Criando uma tarefa:
Buscar tarefa:
Excluir tarefa:
Testes finalizados! Cenários testados: Obter tarefas [NO] Campo Nome maior que 50 caracteres [Yes] Campo Descrição menor que 1000 caracteres [NO] Campo Descrição maior que 1000 caracteres [NO] Data inferior que atual [NO] Data invalida [NO] Obter detalhe da tarefa inexistente [YES] Obter detalhe da tarefa existente [NO] Obter detalhe da tarefa que não é sua [YES] Obter tarefas passando Mês e ano [NO] Obter tarefas passando Mês inexistente Alterar campos nome e descrição Adicionar caracteres especiais Adiciona tag Passar somente o Id Alterar sem passar o Id [NO] Deletar task nao sua [NO] Alterar tarefas nao sua [YES] Deletar task existente Deletar task inexistente
Alterar a tarefa para permitir a edição parcial dos campos.