public function register(ClassMocker $classMocker) { $classMocker->importFootprints(__DIR__ . '/mage.ref.json'); $classMocker->registerTrait(Mage_Core_Helper_Abstract::class); $classMocker->registerTrait(Mage_Core_Model_Abstract::class); $classMocker->registerTrait(Mage_Core_Model_App::class); $classMocker->registerTrait(Varien_Object::class, 'Varien_Object', 100); $classMocker->registerTrait(Varien_Data_Collection::class, 'Varien_Data_Collection', 100); $classMocker->registerTrait(Varien_Data_Collection_Db::class); $classMocker->registerTrait(MageClass\ModelFactory::class); $classMocker->registerTrait(MageClass\Registry::class); $classMocker->registerBaseClass(MageFacade::class); $classMocker->mock('Mage'); $classMocker->mock('MageClass'); $classMocker->mock('Mage_*'); $classMocker->mock('Varien_Object'); $classMocker->mock('Varien_Data_Collection'); $classMocker->mock('Varien_Data_Collection_Db'); // optional mocking if no lib exists $classMocker->mock('Varien_', true); }
/** * Test footprints imported from json test file * * @return void * @test */ public function testFootprintJsonImport() { $fwMocker = new ClassMocker(); $fwMocker->importFootprints(__DIR__ . '/_data/test.ref.json'); $fwMocker->mock('JSiefer\\ClassMocker\\TestFramework\\*'); $fwMocker->enable(); $test = new ObjectB(); $this->assertEquals('foobar', ObjectA::EVENT, 'Constant was not loaded correctly from test.ref.json'); $this->assertEquals(100, ObjectA::SORT, 'Constant was not loaded correctly from test.ref.json'); $this->assertInstanceOf(ObjectA::class, $test); $this->assertInstanceOf(ObjectB::class, $test); $this->assertInstanceOf(InterfaceB::class, $test); $this->assertInstanceOf(BaseMock::class, $test); }