public function testVariationFields()
{
$provider = $this->getBaseProvider();
$this->assertEmpty($provider->getVariationFields());
$provider->setVariationFields(array('name', 'price'));
$this->assertTrue($provider->hasVariationFields());
$this->assertTrue($provider->isVariateBy('name'));
$this->assertFalse($provider->isVariateBy('fake'));
$this->assertNotEmpty($provider->getVariationFields());
$this->assertEquals(array('name', 'price'), $provider->getVariationFields());
}