public void DefineClassAndGetItsOutputString()
{
Loader loader = new Loader(@"DefineRectangleWithNewAndInitialize.st", new VmCompiler());
Machine machine = new Machine();
loader.LoadAndExecute(machine);
BaseClass rectangle = (BaseClass)machine.GetGlobalObject("Rectangle");
string output = rectangle.ToOutputString();
Assert.IsNotNull(output);
Assert.IsTrue(output.Contains("nil subclass:"));
Assert.IsTrue(output.Contains("category: ''!"));
Assert.IsTrue(output.Contains("!Rectangle class methods!"));
Assert.IsTrue(output.Contains("!Rectangle methods!"));
Assert.IsTrue(output.Contains("! !"));
Assert.IsTrue(output.Contains("^x"));
Assert.IsTrue(output.Contains("^y"));
Assert.IsTrue(output.Contains("x := 10"));
Assert.IsTrue(output.Contains("y := 20"));
}