Plots2: Ajouter plus de tests fonctionnels pour chaque méthode dans l'API de recherche

Créé le 22 janv. 2018  ·  3Commentaires  ·  Source: publiclab/plots2

Bonjour, il s'agit d'un problème réservé aux débutants. Cela signifie que nous avons travaillé pour le rendre plus lisible pour les personnes qui n'ont jamais contribué à notre base de code auparavant ou même pour celles qui n'ont jamais contribué à l'open source auparavant.

Si tel est votre cas, nous souhaitons vous aider à faire le premier pas et pouvons répondre à vos questions et vous aider comme vous le faites. Notez que nous sommes particulièrement intéressés par les contributions de personnes issues de groupes sous-représentés dans les logiciels libres et open source !

Si vous avez déjà contribué, envisagez de laisser celui-ci à quelqu'un de nouveau et de consulter nos problèmes généraux d'aide. Merci!

Le problème

Les tests nous aident à nous assurer que le site se comporte comme nous l'attendons -- et qu'à mesure que de nouvelles fonctionnalités sont ajoutées, elles ne cassent pas les fonctions existantes. Nous nous efforçons d'atteindre une "couverture" proche de 100 %, ce qui signifie que tout notre code est couvert par des tests.
Nous avons de bons tests écrits pour l'API typeahead, ici : https://github.com/publiclab/plots2/blob/master/test/functional/typeahead_api_test.rb

Cela teste chaque méthode dans : https://github.com/publiclab/plots2/blob/master/app/api/srch/typeahead.rb

Mais nous devrions en avoir des similaires pour l'API de recherche, pour chacune des méthodes dans : https://github.com/publiclab/plots2/blob/master/app/api/srch/search.rb

(Notez que ceux-ci s'appuient fortement sur ce fichier, à leur tour - au cas où vous voudriez savoir comment ils sont générés : https://github.com/publiclab/plots2/blob/master/app/services/search_service.rb)

Solution

En #1409, un contributeur débutant a récemment créé un nouveau fichier de test, et un seul test, que vous pouvez trouver sur test/functional/search_api_test.rb :

test 'fonctionnalité de recherche de notes' faire
obtenir '/api/srch/notes?srchString=Blog'
affirmer last_response.ok ?
# plus de choses après ça
Il s'agit d'un test de base indiquant que la réponse est « ok », puis il teste ce qu'il y a dans la réponse. Voyez comment il utilise une URL pour accéder à la méthode notes sur cette ligne :

Alors, copiez-le et suivez les exemples d'URL fournis dans search.rb pour créer un nouveau test pour une méthode différente. Par exemple, les profils : https://github.com/publiclab/plots2/blob/master/app/api/srch/search.rb#L30

Commencez par affirmer simplement last_response.ok ? comme ci-dessus ; nous pouvons ajouter des tests plus substantiels plus tard.

Vous pouvez essayer de l'exécuter avec rake test ou (juste pour exécuter les tests fonctionnels uniquement) rake test TEST=test/functional/search_api_test.rb -- j'espère que cela passera !

Mais vous pouvez aussi simplement ouvrir une pull request (voir ci-dessous) et notre système de test automatisé l'exécutera, et vous pourrez y voir la sortie.

Si vous pouvez nous aider, veuillez ouvrir une demande d'extraction avec ce test ajouté, et voyons comment cela se passe - même si cela ne réussit pas, nous pouvons vous aider avec les prochaines étapes.

Étapes à corriger

revendiquez ce problème avec un commentaire ici, ci-dessous, et posez toutes les questions de clarification dont vous avez besoin
configurez un référentiel localement en suivant les instructions README et assurez-vous que tous les tests réussissent
essayez de résoudre le problème en suivant les étapes ci-dessus, mais avant même d'avoir terminé, vous pouvez :
validez vos modifications et lancez une pull request (voir contribution au logiciel Public Lab) mais marquez-la comme "en cours" si vous avez des questions ou si vous n'avez pas terminé
alerter quelqu'un via la liste des développeurs (voir ci-dessous) pour fusionner votre pull request. Cela peut prendre quelques étapes supplémentaires selon le moment où vous le faites, mais nous vous aiderons !
Veuillez envoyer un e-mail à la liste des développeurs (voir https://publiclab.org/wiki/developers) ou rendez-vous sur la salle de discussion si vous avez des questions, et jetez un œil à notre page de destination pour les débutants pour plus d'informations !

Ruby first-timers-only help wanted testing

Tous les 3 commentaires

Ça s'annonce bien,

Puis-je réclamer cela?

Oui ce serait super.

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

noi5e picture noi5e  ·  3Commentaires

first-timers[bot] picture first-timers[bot]  ·  3Commentaires

grvsachdeva picture grvsachdeva  ·  3Commentaires

grvsachdeva picture grvsachdeva  ·  3Commentaires

grvsachdeva picture grvsachdeva  ·  3Commentaires