Created a new project for the 3rd kata: Get Raw Material from Factories.
Removed MS Unit Test framework.
Used NUnit.
Renamed the test class name to be GetRawMaterialFromFactoriesTest.
Renamed the first test to be TestOrderQfStyleGreenOnionAndPorkBun().
Checked the step description of the bun in the first test TestOrderQfStyleGreenOnionAndPorkBun() should be correct.
In the first test TestOrderQfStyleGreenOnionAndPorkBun(), the bun should be got from the method OrderQfStyleBun() of BunStore class.
In the first test TestOrderQfStyleGreenOnionAndPorkBun, the bun store should be instantiated.
Created class BunStore and moved it to another file.
Created class Bun and moved it to another file.
Added method BunStore.OrderQfStyleBun() and directly returned a QfStyleGreenOnionAndPorkBun instance.
Created class QfStyleGreenOnionAndPorkBun and moved to another file.
Added method Bun.GetStepDesc() to make the first test green.
Wrote assertion for the 2nd test TestOrderGblStylePorkBun().
In the test TestOrderGblStylePorkBun(), the bun should be returned from the method BunStore.OrderGblStyleBun().
In the test TestOrderGblStylePorkBun, the bun store should be instantiated.
Implemented method BunStore.OrderGblStyleBun() and returned a GblStylePorkBun instance.
Created class GblStylePorkBun and moved it to another file.
Made class Bun to be abstract and the method GetStepDesc() to be abstract as well. Will ask the subclasses of Bun to return specific step description.
Made method GetStepDesc() of class GblStylePorkBun to return its specific step description.