Skip to content

saturdaymp-examples/a-refactoring-tale

Repository files navigation

Something's Rotten at the Gilded Rose: A Refactoring Tale

Our tale begins at the Gilded Rose, a small inn with a prime location in a prominent city run by a friendly innkeeper named Allison. This quant inn sells a limited range of high-quality goods such as Aged Brie, Sulfuras, and concert tickets. Our unassuming hero developer has been hired to update the inn’s inventory system so Allison can sell conjured items. A simple task, or so it seems. Little does our hero know the perils and smells that await them in the rotten inventory source code.

Learn when and how to refactor in this hands-on presentation as we follow our hero through their refactoring journey of the famous Gilded Rose Kata. You can find a video of the presentation at:

https://youtu.be/0bTbXpXUhmk

Gilded Rose starting position in C# NUnit

First off, read the requirements. Then build the project and run it along with the tests. Finally start refactoring! Open an issue if you have trouble getting the project running.

Build the project

Use your normal build tools to build the projects in Debug mode. For example, you can use the dotnet command line tool:

dotnet build GildedRose.sln -c Debug

Run the Gilded Rose Command-Line program

For e.g. 10 days:

GildedRose/bin/Debug/net8.0/GildedRose 10

Run all the unit tests

dotnet test

This repo contains the C# version of the kata. Find the kata in other languages here.

Questions or Feedback?

If you have any questions or constructive feedback please let me know by opening an issue or reaching out to me via my contact information at Saturday Morning Producitons.

GitHub Sponsors

Acknowledgements

Thank you to Edmonton .NET User Group (EDMUG) for allowing me to present. Also thank you Terry Hughes for creating the Gilded Rose Kata and Emily Bache for maintaining and expanding it.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

No packages published

Languages