SDiamante13 / greeting-service-kata

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Greeting Service Kata

A Code Kata intended to practice TDD Outside-In.

Welcome!

Hello developer! 👋 At the HELLO WORLD! Inc. company we are excited to develop and release a new idea into the market! We want to build a new service to send customized greeting messages to our users.

Here you'll find few requirements

  • The service have to expose an HTTP API which can be called from other HTTP clients.
  • The service can also be used from a command line or an interactive shell.

Try to complete each feature before proceeding to the next one. We like to work iteratively.

Feature One

Just a Greeting

When a greeting message is requested
Then the system will reply with "Hello my friend!"

Feature Two

Greeting a User with a customized message!

When a User with the name Joe request a greeting message
Then the system will reply with a customized message that says:
"Hello Joe!"

Feature Three

Greeting a User by choosing a random greeting message from a set of messages

When a User with the name Joe request a greeting message
Then the system will reply with a customized message that says:
"Hey Joe, nice to see you here!"

List of predefined messages

  • Hello {User}!
  • Hey {User}, nice to see you here!
  • {User} welcome back!
  • Have a splendid day {User}.

Retrospective

  • How difficult it was to boostrap your project and setup your first test?
  • Do you think the requirements were clear enough?
  • Which was the most difficult step? Why?

Feature Four

Greeting a User by choosing a greeting message from a predefined set of messages, based on the time of the day.

Requesting a greeting message early in the morning

When a User with the name Joe request a greeting message
And the time is early in the morning
Then the system will reply with a customized message that says:
"Good morning, Joe! The sun is high and shining!"

List of predefined messages based on the time

  • Morning (from 7 AM to 11 AM) ☀️
    • Good morning, {User}! The sun is high and shining!
    • Hey {User}, nice to see you here!
    • {User} welcome back!
    • Have a splendid day {User}.
  • The rest of the day (from 12 PM to 8 PM) 🕒
    • Hello {User}!
    • You are great {User}
  • Night (from 9 PM to 6 AM) 💤
    • Have a good night, {User}
    • Wish you sweet dreams {User} ...
    • It was a great day! {User} it's time to relax!

Retrospective

  • Do you think your design is simple enough?
  • What are the parts of your code you believe are most likely to change?
    • Do you think your code can be easily extended?

Credits

https://github.com/joebew42/greeting-service-kata

About


Languages

Language:Java 94.4%Language:Gherkin 5.6%