public function testMissingFieldsAreNull() { if (!$this->checkToken()) { return; } $parts = "id,brandingSettings"; $opts = array("mine" => true); $channels = $this->youtube->channels->listChannels($parts, $opts); $newChannel = new Google_Service_YouTube_Channel(); $newChannel->setId($channels[0]->getId()); $newChannel->setBrandingSettings($channels[0]->getBrandingSettings()); $simpleOriginal = $channels[0]->toSimpleObject(); $simpleNew = $newChannel->toSimpleObject(); $this->assertObjectHasAttribute('etag', $simpleOriginal); $this->assertObjectNotHasAttribute('etag', $simpleNew); $owner_details = new Google_Service_YouTube_ChannelContentOwnerDetails(); $owner_details->setTimeLinked("123456789"); $o_channel = new Google_Service_YouTube_Channel(); $o_channel->setContentOwnerDetails($owner_details); $simpleManual = $o_channel->toSimpleObject(); $this->assertObjectHasAttribute('timeLinked', $simpleManual->contentOwnerDetails); $this->assertObjectNotHasAttribute('contentOwner', $simpleManual->contentOwnerDetails); $owner_details = new Google_Service_YouTube_ChannelContentOwnerDetails(); $owner_details->timeLinked = "123456789"; $o_channel = new Google_Service_YouTube_Channel(); $o_channel->setContentOwnerDetails($owner_details); $simpleManual = $o_channel->toSimpleObject(); $this->assertObjectHasAttribute('timeLinked', $simpleManual->contentOwnerDetails); $this->assertObjectNotHasAttribute('contentOwner', $simpleManual->contentOwnerDetails); $owner_details = new Google_Service_YouTube_ChannelContentOwnerDetails(); $owner_details['timeLinked'] = "123456789"; $o_channel = new Google_Service_YouTube_Channel(); $o_channel->setContentOwnerDetails($owner_details); $simpleManual = $o_channel->toSimpleObject(); $this->assertObjectHasAttribute('timeLinked', $simpleManual->contentOwnerDetails); $this->assertObjectNotHasAttribute('contentOwner', $simpleManual->contentOwnerDetails); $ping = new Google_Service_YouTube_ChannelConversionPing(); $ping->setContext("hello"); $pings = new Google_Service_YouTube_ChannelConversionPings(); $pings->setPings(array($ping)); $simplePings = $pings->toSimpleObject(); $this->assertObjectHasAttribute('context', $simplePings->pings[0]); $this->assertObjectNotHasAttribute('conversionUrl', $simplePings->pings[0]); }