Skip to content

Commit ff0bfdc

Browse files
author
Dan Roberts
authored
Merge pull request #20 from AdaGold/dpr/things-to-check-v2
Review checklist
2 parents d9b6a42 + 0d2d505 commit ff0bfdc

File tree

1 file changed

+60
-37
lines changed

1 file changed

+60
-37
lines changed

feedback.md

Lines changed: 60 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,67 @@
11
# bEtsy
22
## What We're Looking For
33

4-
Feature | Feedback
5-
:------------- | :-------------
6-
**Baseline** |
7-
Appropriate Git Usage with all members contributing |
8-
Answered comprehension questions |
9-
Trello board is created and utilized in project management |
10-
Heroku instance is online |
11-
**General** |
12-
Nested routes follow RESTful conventions |
13-
oAuth used for User authentication |
14-
Functionality restricted based on user roles |
15-
Products can be added and removed from cart |
16-
Users can look up past orders by ID |
17-
Merchants can add, edit and view their products |
18-
Errors are reported to the user |
19-
**Order Functionality** |
20-
Reduces products' inventory |
21-
Cannot order products that are out of stock |
22-
Changes order state |
23-
Clears current cart |
24-
**Database** |
25-
ERD includes all necessary tables and relationships |
26-
Table relationships |
27-
**Models** |
28-
Validation rules for Models |
29-
Business logic is in the models |
4+
<!-- Reviewer instructions: no in-line comments on this one! Give it a quick review, and fill out the table, that's it. The goal is no more than 30 (closer to 20) minutes per submission. Note that canned positive feedback is included at the bottom - adjust this as appropriate to the submission. -->
5+
6+
### Manual testing
7+
8+
Workflow | yes / no
9+
--- | ---
10+
Deployed to Heroku |
11+
**Before logging in** |
12+
Browse all products, by category, by merchant |
13+
Leave a review |
14+
Verify unable to create a new product |
15+
**After logging in** | |
16+
Create a category |
17+
Create a product in that category with stock 10 |
18+
Add the product you created to your cart |
19+
Add it again (should update quantity) |
20+
Verify unable to increase quantity beyond stock |
21+
Add another merchant's product |
22+
Check out |
23+
Check that stock was reduced |
24+
Change order-item's status on dashboard |
25+
Verify unable to leave a review for your own product |
26+
Verify unable to edit another merchant's product by manually editing URL |
27+
Verify unable to see another merchant's dashboard by manually editing URL |
28+
29+
### Code Review
30+
31+
Area | yes / no
32+
--- | ---
33+
**Routes** |
34+
No un-needed routes generated (check `reviews`) |
35+
Routes not overly-nested (check products and merchants) |
36+
Merchant dashboard and cart page use a non-parameterized routes (should pull merchant or cart ID from session) |
3037
**Controllers** |
31-
Controller Filters used to DRY up controller code |
32-
**Testing** |
33-
Model Testing |
34-
Controller Testing |
35-
Session Testing |
36-
SimpleCov at 90% for controller and model tests |
37-
**Front-end** |
38-
The app is styled to create an attractive user interface |
39-
Content is organized with HTML5 semantic tags |
40-
CSS is DRY |
41-
**Overall** |
38+
Controller-filter to require login by default |
39+
Helper methods or filters to find logged-in user, cart, product, etc |
40+
No excessive business logic |
41+
**Business logic that ought to live in the model** |
42+
Add / remove / update product on order |
43+
Checkout -> decrease inventory |
44+
Merchant's total revenue |
45+
Find all orders for this merchant (instance method on `Merchant`) |
46+
**Selected Model Tests** |
47+
Add item to cart:<br> - Can add a good product<br> - Can't add a product w/o enough stock<br> - Can't add a retired product<br> - Can't add to an order that's not in cart mode<br> - Logic specific to this implementation |
48+
Get orders for this merchant:<br> - Includes all orders from this merchant<br> - Doesn't include orders from another merchant<br> - Orders are not included more than once<br> - Does something reasonable when there are no orders for this merchant |
49+
**Selected Controller Tests** |
50+
Add item to cart:<br> - Empty cart (should be created)<br> - Cart already exists (should add to same order)<br> - Product already in cart (should update quantity)<br> - Bad product ID, product is retired, quantity too high, or something like that (error) |
51+
Leave a review:<br> - Works when not logged in<br> - Works when logged in as someone other than the product's merchant<br> - Doesn't work if logged in as this product's merchant<br> - Doesn't work if validations fail |
52+
53+
<!-- A note on checking tests: usually just reading test names is enough, unless something is obviously wrong. You don't need to go in and evaluate the test code. Nor do you need to write much text in the evaluation, just "yes", "no", or "missing some". -->
54+
55+
## Overall Feedback
56+
57+
Great work overall! You've built a fully functional web store from top to bottom. This represents a huge amount of work, and you should be proud of yourselves!.
58+
59+
I am particularly impressed by the way that you...
60+
61+
I do see some room for improvement around...
62+
63+
<!-- Common topics include authorization, route organization, moving business logic to the model, testing for any of the above -->
4264

65+
bEtsy is a huge project on a very short timeline, and this feedback should not at all diminish the magnitude of what you've accomplished. Keep up the hard work!
4366

4467
# Only the person who submitted the PR will get an email about this feedback. Please let the rest of your team know about it.

0 commit comments

Comments
 (0)