/**
  * Initialize the DOM Document with a root node and message header.
  */
 public function testStartDocument()
 {
     $headerTemplate = '<MessageHeader></MessageHeader>';
     $mediaUrl = '';
     $feedXml = sprintf(EbayEnterprise_Catalog_Model_Pim::XML_TEMPLATE, $this->_feedTypeConfig[self::KEY_ROOT_NODE], EbayEnterprise_Catalog_Model_Pim::XMLNS, $this->_feedTypeConfig[self::KEY_SCHEMA_LOCATION], $headerTemplate, $mediaUrl);
     $this->_docMock->expects($this->once())->method('loadXML')->with($this->identicalTo($feedXml))->will($this->returnSelf());
     $helper = $this->getHelperMockBuilder('ebayenterprise_catalog/data')->disableOriginalConstructor()->setMethods(array('generateMessageHeader'))->getMock();
     $helper->expects($this->once())->method('generateMessageHeader')->with($this->identicalTo($this->_feedTypeConfig[self::KEY_EVENT_TYPE]))->will($this->returnValue($headerTemplate));
     $this->replaceByMock('helper', 'ebayenterprise_catalog', $helper);
     $coreHelperMock = $this->getHelperMockBuilder('eb2ccore/data')->disableOriginalConstructor()->setMethods(array('getBaseUrl'))->getMock();
     $coreHelperMock->expects($this->once())->method('getBaseUrl')->with($this->identicalTo(Mage_Core_Model_Store::URL_TYPE_MEDIA))->will($this->returnValue($mediaUrl));
     $this->replaceByMock('helper', 'eb2ccore', $coreHelperMock);
     $pim = $this->getModelMockBuilder('ebayenterprise_catalog/pim')->setMethods(array('_getFeedConfig'))->getMock();
     $pim->expects($this->once())->method('_getFeedConfig')->will($this->returnValue($this->_feedTypeConfig));
     EcomDev_Utils_Reflection::setRestrictedPropertyValue($pim, '_doc', $this->_docMock);
     $this->assertSame($pim, EcomDev_Utils_Reflection::invokeRestrictedMethod($pim, '_startDocument', array()));
 }