GildedRose-Refactoring-Kata/csharp/ReadMe.md
Emmanuel 02d7c78e63 Update
- Added a Readme.md file
- Separated Unit Tests from main project
- Checked to ensure
2021-04-28 00:28:22 +02:00

32 lines
1.9 KiB
Markdown

# Gilded Rose Refactoring Kata
Introduction:
I will try as much as I can to write my thought processes here as it's one of the requirements.
I will just write the relevant parts and not my whole thoughts. That would be weird since I was thinking of lunch just before I started. :D
SIDE COMMENTS:
- I can't exactly do a full TDD since the application is already written. TDD requires tests before development but this is a refactoring.
- One of the things I would ideally change if it was not explicitly said to not to is the fact that it uses strings to check. that can be really erroneous.
If I had my way, I would include IDs of some sort.
1:
One of the first things I want to do is just get the program to run. so am not fixing anything except what will make the program run.
- The program seems to run fine. except I could not see the results so added a little line to see what was printed. over than that. it looks good.
Makes sense why they kept using it. It works! :/
2:
After this I want to include some Unit tests to ensure all parts are working as they should. This may require some fixing. Not sure.
- First thing I did was separate the tests from the main application. I do not want to have the possibility of a memory leak or bulky apps
- Original unit tests were written in NUnit and I chose to use MSTest. Why? no reason! Just a choice.
- First Unit Test returned 3 errors.
Test Duration Traits Error Message
UpdateQualityTestForAgedBrie_SellDateIsLessThan5_IncreaseQualityByThree Failed 1 sec Assert.AreEqual failed. Expected:<3>. Actual:<1>.
UpdateQualityTestForAgedBrie_SellDateIsLessThan10ButGreaterThan5_IncreaseQualityByTwo Failed 2 sec Assert.AreEqual failed. Expected:<2>. Actual:<1>.
UpdateQualityTestForAgedBrie_AfterConcert_DropToZero Failed 12.7 sec Assert.AreEqual failed. Expected:<0>. Actual:<12>.
At least we now know what to work on :facepalm
3:
Then when all tests are good. I can start working with an aim of not breaking any tests.