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

Laura Robertson -- Carets #38

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

Conversation

LauraAddams
Copy link

Hotel

Congratulations! You're submitting your assignment!

Comprehension Questions

Question Answer
Describe a design decision you had to make when working on this project. What options were you considering? What helped you make your final decision? I read Chapter 2 of Metz before I began my project. I tried to follow her thought process of creating classes with only one purpose. This worked best in the cases of creating a reservation and block reservation so I chose to go forward with them as separate files.
Describe a concept that you gained more clarity on as you worked on this assignment. I gained a better understanding of inheritance. I also fully solidified my understanding of the testing setup (rake, require relatives, spec helper).
Describe a nominal test that you wrote for this assignment. I tested that Hotel::California.new creating my instances of 20 rooms.
Describe an edge case test that you wrote for this assignment. I tested that the block method could not create a reservation if there weren't enough rooms available.
How do you feel you did in writing pseudocode first, then writing the tests and then the code? Writing the pseudocode was very easy and helpful; I've improved on writing tests first but when I don't know how I'm going to write my method I struggle with writing tests first.

@CheezItMan
Copy link

Hotel

What We're Looking For

Feature Feedback
Baseline
Used git regularly You don't have many commits, and the messages talk about the project, but not much about the functionality implemented.
Answer comprehension questions Check
Design
Each class is responsible for a single piece of the program Yes
Classes are loosely coupled You've got some tight coupling in your classes here specifically the California and Room classes
Wave 1
List rooms Check
Reserve a room for a given date range Check
List reservations for a given date Check, but note how hard it is when you store the reservations in the room. Normally in the hotel when you want to book a room you look up and find rooms that are free by date, not look for dates by room.
Calculate reservation price Check
Invalid date range produces an error Yes, but you should have checks for invalid dates in the Reservation class, that way you could reuse the class
Wave 2
View available rooms for a given date range Check
Reserving a room that is not available produces an error Check
Wave 3
Create a block of rooms Check
Check if a block has rooms I don't see a way to do this.
Reserve a room from a block This seems to reserve the 1st room from any block with available rooms. Not quite what we'd want.
Test coverage 100% Nice!
Additional Feedback Overall nicely done. I would look over the comments in the code because you've got some examples of tight coupling. You've also got some code you could DRY up. Also your testing needs more checks for edge cases.

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