public void DefineSubclassAndGetDefineString()
{
Machine machine = new Machine();
IMetaClass meta = BaseMetaClass.CreateMetaClass(null, machine);
BaseClass oclass = new BaseClass(meta, "Object", null, machine, string.Empty);
BaseClass bclass = new BaseClass(meta, "Class", oclass, machine, string.Empty);
bclass.DefineInstanceVariable("x");
bclass.DefineInstanceVariable("y");
string definition = bclass.ToDefineString();
Assert.IsNotNull(definition);
Assert.IsTrue(definition.Contains("Object subclass: #Class"));
Assert.IsTrue(definition.Contains("instanceVariableNames: 'x y'"));
Assert.IsTrue(definition.Contains("classVariableNames: ''"));
Assert.IsTrue(definition.Contains("poolDictionaries: ''"));
Assert.IsTrue(definition.Contains("category: ''!"));
}