public void CompilePharoCoreKernelObjectsForNodeJs()
{
ChunkReader chunkReader = new ChunkReader(@"PharoCoreKernelObjects.st");
CodeReader reader = new CodeReader(chunkReader);
CodeModel model = new CodeModel();
reader.Process(model);
this.compiler.Visit(model);
this.writer.Close();
string output = this.writer.ToString();
// TODO more tests
Assert.IsTrue(ContainsLine(output, "function Object()"));
Assert.IsTrue(ContainsLine(output, "ObjectClass.__super = ProtoObjectClass;"));
Assert.IsTrue(ContainsLine(output, "Object.__super = ProtoObject;"));
Assert.IsTrue(ContainsLine(output, "ObjectClass.prototype.__proto__ = ProtoObjectClass.prototype;"));
Assert.IsTrue(ContainsLine(output, "Object.prototype.__proto__ = ProtoObject.prototype;"));
Assert.IsTrue(ContainsLine(output, "BooleanClass.prototype.__proto__ = ObjectClass.prototype;"));
Assert.IsTrue(ContainsLine(output, "Boolean.prototype.__proto__ = Object.prototype;"));
Assert.IsTrue(ContainsLine(output, "function Boolean()"));
Assert.IsTrue(ContainsLine(output, "exports.Object = Object;"));
Assert.IsTrue(ContainsLine(output, "exports.Boolean = Boolean;"));
Assert.IsTrue(ContainsLine(output, "exports.ProtoObject = ProtoObject;"));
}