objFromFixture(ComponentSetTest\Team::class, 'team1'); $player1_team1 = $this->objFromFixture(ComponentSetTest\Player::class, 'player1_team1'); $player2 = $this->objFromFixture(ComponentSetTest\Player::class, 'player2'); $team1->Players()->setByIdList( [ $player1_team1->ID, $player2->ID ] ); $team1->flushCache(); $this->assertContains( $player2->ID, $team1->Players()->column('ID'), 'Can add new entry' ); $this->assertContains( $player1_team1->ID, $team1->Players()->column('ID'), 'Can retain existing entry' ); $team1->Players()->setByIdList( [ $player1_team1->ID ] ); $team1->flushCache(); $this->assertNotContains( $player2->ID, $team1->Players()->column('ID'), 'Can remove existing entry' ); $this->assertContains( $player1_team1->ID, $team1->Players()->column('ID'), 'Can retain existing entry' ); $team1->Players()->setByIdList([]); $team1->flushCache(); $this->assertEquals( 0, $team1->Players()->Count(), 'Can remove all entries by passing an empty array' ); } }