/** * testSaveWithCounterCacheScope method * * @return void */ public function testSaveWithCounterCacheScope() { $this->loadFixtures('Syfile', 'Item', 'Image', 'ItemsPortfolio', 'Portfolio'); $TestModel = new Syfile(); $TestModel2 = new Item(); $TestModel2->belongsTo['Syfile']['counterCache'] = true; $TestModel2->belongsTo['Syfile']['counterScope'] = array('published' => true); $result = $TestModel->findById(1); $this->assertSame($result['Syfile']['item_count'], null); $TestModel2->save(array('name' => 'Item 7', 'syfile_id' => 1, 'published' => true)); $result = $TestModel->findById(1); $this->assertEquals(1, $result['Syfile']['item_count']); $TestModel2->id = 1; $TestModel2->saveField('published', true); $result = $TestModel->findById(1); $this->assertEquals(2, $result['Syfile']['item_count']); $TestModel2->save(array('id' => 1, 'syfile_id' => 1, 'published' => false)); $result = $TestModel->findById(1); $this->assertEquals(1, $result['Syfile']['item_count']); }