scieloorg / kernel

É o componente central da nova arquitetura de sistemas de informação da Metodologia SciELO, ainda em fase de desenvolvimento.
https://docs.google.com/document/d/14YBl7--4ouaWBQhxzUYWRuhmegwnSYrDgupsED6rhvM/edit?usp=sharing
BSD 2-Clause "Simplified" License
6 stars 11 forks source link

Criação dos Endpoint RESTful para adicionar documentos aos bundles #166

Closed cesarbruschetta closed 5 years ago

cesarbruschetta commented 5 years ago

O que esse PR faz?

Este PR tem o propósito de implementar o endpoint exigido pela issue #154. Foi implementada a atualização em lote da lista de documentos de um document-bundle.

Onde a revisão poderia começar?

Os arquivos mais sensíveis para a implementação soa:

Testes

Como este poderia ser testado manualmente?

  1. Criar um issue;
    curl -X PUT -H 'Accept: application/json' -H 'Content-Type: application/json' http://0.0.0.0:6543/bundles/example  -d  '{"title": "issue-example"}'
  2. Enviar um PUT com uma lista de docs;
    curl -X PUT -H 'Accept: application/json' -H 'Content-Type: application/json' http://0.0.0.0:6543/bundles/example/documents -d '["jligwbsvcfakvoapacjvfec", "ndqbgyrmopjtdkiruviwadk"]' -v
  3. Verificar que o código de status é 204;
  4. Verificar que os documentos realmente foram atualizados no registro da issue;
    curl -X GET -H 'Accept: application/json' -H 'Content-Type: application/json' http://0.0.0.0:6543/bundles/example
  5. Enviar uma PUT para zerar a lista de documents e verificar que o código de status é 204
    curl -X PUT -H 'Accept: application/json' -H 'Content-Type: application/json' http://0.0.0.0:6543/bundles/example/documents -d '[]' -v
  6. Enviar um PUT com itens duplicados
    curl -X PUT -H 'Accept: application/json' -H 'Content-Type: application/json' http://0.0.0.0:6543/bundles/example/documents -d '["a", "a"]' -v

Algum cenário de contexto que queira dar?

N/A

Quais são tickets relevantes?

154

Referências

163