rem: Eater.prototype.__init__ = function (foodFactory) { this.food = foodFactory(); }; 
add: Eater.methods( function __init__(self, foodFactory) { self.food = foodFactory(); },  function doEat(self) { return self.food + 1; }); 
context: function testClass() {    var Eater = Divmod.Class.subclass();    Eater.prototype.__init__ = function (foodFactory) {        this.food = foodFactory();    };    Eater.classCounter = 0;    Eater.classIncr = function() {        this.classCounter += 1;    };    Eater.prototype.doEat = function() {        return this.food + 1;    };    var BetterEater = Eater.subclass();    BetterEater.prototype.__init__ = function(foodFactory) {        BetterEater.upcall(this, "__init__", foodFactory);        this.food += 10;    };    var makeFood = function() {        return 100;    }    var be = new BetterEater(makeFood);    Eater.classIncr();    Eater.classIncr();    Eater.classIncr();    BetterEater.classIncr();    BetterEater.classIncr();    assert(be.doEat() == 111, "explode");    assert(Eater.classCounter == 3, 'classmethod fuckup');    assert(BetterEater.classCounter == 2, 'classmethod fuckup');}
meta: 1565	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/1565/f0728a2fda06afa35e19f889d078ab04458c095f/test_object.js/buggy/nevow/test/test_object.js