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

Nkiru Pipes Api-Muncher #44

Open
wants to merge 39 commits into
base: master
Choose a base branch
from
Open

Nkiru Pipes Api-Muncher #44

wants to merge 39 commits into from

Conversation

nkiruka
Copy link

@nkiruka nkiruka commented Nov 7, 2017

API Muncher

Congratulations! You're submitting your assignment!

Comprehension Questions

Question Answer
How did you go about exploring the Edamam API, how did you try querying the API? I read the Edamam documentation on the Recipe API and utilized Postman to run queries to see the JSON object.
Describe your API Wrapper. API wrapper requests and delivers data using HTTP. How did you decide on the methods you created? The methods I wrote were based on the requirements of the project; specifically to be able to generate a list of all the recipes for an item (#index) and to show a detailed page for any selected recipe (#show)
Describe an edge case or failure case test you wrote for your API Wrapper. A failure case: Tested that an exception is raised if a bad API Key is passed when requesting for a list of recipes.
Explain how VCR aids in testing an API. It allows tests to record HTTP interactions as cassettes and reply them when necessary. It filter can be added to VCR that will omit sensitive data from cassettes thus, preventing unnecessary calls to the APIs(which will be costly if free subscription has expired)
What is the Heroku URL of your deployed application? https://yummymeals.herokuapp.com/

@PilgrimMemoirs
Copy link

API Muncher

What We're Looking For

Feature Feedback
Core Requirements
Git hygiene Well Done
Comprehension questions Well Done
General
Rails fundamentals (RESTful routing, use of named paths) Some Improvement - show route should still be something like this: '/recipes/:id', with the resource plural and with the unique identifier.
Semantic HTML Some Improvement - need more sectioning tags like header and main
Errors are reported to the user Needs Improvement - When a result does not yield any results, a blank page with 'next' and 'prev' buttons still show. Should display error instead. Remember to continue using flash messages to display success and failure results.
API Wrapper to handle the API requests Some Improvement - what happens if the call fails in the find_recipe method? It's currently not handling any errors.
Controller testing ** NOT COMPLETE** No tests :(
Lib testing Some Improvement - find_recipe needs a negative test case. Also test in the event no recipes were found.
Search Functionality Well Done
List Functionality Needs Improvement - controller needs improvement on what to do if params[:item] doesn't exist or has a result that doesn't return anything. Needs to specify status codes, display flash messages and utilize redirects/renders.
Show individual item functionality (link to original recipe opens in new tab) Needs Improvement controller needs improvement on what to do if params[:item] doesn't exist or has a result that doesn't return anything. Needs to specify status codes, display flash messages and utilize redirects/renders.
Styling
Foundation Styling for responsive layout Mostly Good - Nice responsiveness! Show page should have more complex layout utilizing foundation grid
List View shows 10 items at a time/pagination Well Done
The app is styled to create an attractive user interface Some Improvement - homepage should have title and search form visible without having to scroll down. All pages should have site title that links to homepage.
API Features
The App attributes Edaman Well Done
The VCR cassettes do not contain the API key Well Done
External Resources
Link to deployed app on Heroku Well Done
Overall
Areas for Improvement Use semantic sectioning tags to organize content, use flash hash to display errors, more development in controller methods, and tests, especially controller tests

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

Successfully merging this pull request may close these issues.

2 participants