public function testSubmitFeed()
 {
     resetLog();
     $this->object->setMock(true, 'submitFeed.xml');
     $this->assertFalse($this->object->submitFeed());
     //nothing set yet
     $this->assertFalse($this->object->getResponse());
     //no response yet either
     $this->object->setFeedContent('yes');
     $this->assertFalse($this->object->submitFeed());
     //no feed type set yet
     $this->object->setFeedType('_MOCK_FEED_');
     $ok = $this->object->submitFeed();
     //now it is good
     $this->assertNull($ok);
     $check = parseLog();
     $this->assertEquals('Single Mock File set: submitFeed.xml', $check[1]);
     $this->assertEquals('Feed\'s contents must be set in order to submit it!', $check[2]);
     $this->assertEquals('Feed Type must be set in order to submit a feed!', $check[3]);
     $this->assertEquals('Fetched Mock File: test/mock/submitFeed.xml', $check[4]);
     $this->assertEquals('Successfully submitted feed #1234567890 (_MOCK_FEED_)', $check[5]);
     $o = $this->object->getOptions();
     $this->assertEquals('SubmitFeed', $o['Action']);
     $r = $this->object->getResponse();
     $this->assertInternalType('array', $r);
     $this->assertArrayHasKey('FeedSubmissionId', $r);
     $this->assertEquals('1234567890', $r['FeedSubmissionId']);
     $this->assertArrayHasKey('FeedType', $r);
     $this->assertEquals('_MOCK_FEED_', $r['FeedType']);
     $this->assertArrayHasKey('SubmittedDate', $r);
     $this->assertEquals('2012-12-12T12:12:12+00:00', $r['SubmittedDate']);
     $this->assertArrayHasKey('FeedProcessingStatus', $r);
     $this->assertEquals('_SUBMITTED_', $r['FeedProcessingStatus']);
 }
Example #2
0
function addLogToTable()
{
    // Получаем коннект с базой и вставляем данные
    $db = new pgDB();
    if ($db->insertArray(parseLog())) {
        echo 'Данные успешно добавлены в базу данных!';
    }
}
 /**
  * @depends testFetchFeedResult
  */
 public function testSaveFeed($o)
 {
     resetLog();
     $this->assertFalse($this->object->saveFeed('mock/saveFeed.xml'));
     //nothing yet
     $o->saveFeed(__DIR__ . '/../../mock/saveFeed.xml');
     $check = parseLog();
     $this->assertEquals('Successfully saved feed #77 at ' . __DIR__ . '/../../mock/saveFeed.xml', $check[0]);
 }
 /**
  * @depends testFetchReport
  */
 public function testSaveReport($o)
 {
     $path = __DIR__ . '/../../mock/saveReport.xml';
     $path2 = __DIR__ . '/../../mock/fetchReport.xml';
     $o->saveReport($path);
     $check = parseLog();
     $this->assertEquals("Successfully saved report #777 at {$path}", $check[1]);
     $this->assertFileEquals($path2, $path);
     $this->assertFalse($this->object->saveReport('here'));
     //not fetched yet for this object
 }
 /**
  * @covers AmazonCore::setStore
  * @todo   Implement testSetStore().
  */
 public function testSetStore()
 {
     $this->object->setStore('no');
     $check = parseLog();
     $this->assertEquals('Mock Mode set to ON', $check[0]);
     $this->assertEquals('Store no does not exist!', $check[1]);
     resetLog();
     $this->object->setStore('bad');
     $bad = parseLog();
     $this->assertEquals('Merchant ID is missing!', $bad[0]);
     $this->assertEquals('Access Key ID is missing!', $bad[1]);
     $this->assertEquals('Secret Key is missing!', $bad[2]);
 }
 public function testAcknowledgeReports()
 {
     resetLog();
     $this->object->setMock(true, 'acknowledgeReports.xml');
     $this->assertFalse($this->object->acknowledgeReports());
     //no Report ID set yet
     $this->object->setReportIds('123456');
     $this->assertNull($this->object->acknowledgeReports());
     $check = parseLog();
     $this->assertEquals('Single Mock File set: acknowledgeReports.xml', $check[1]);
     $this->assertEquals('Report IDs must be set in order to acknowledge reports!', $check[2]);
     $this->assertEquals('Fetched Mock File: mock/acknowledgeReports.xml', $check[3]);
     return $this->object;
 }
 public function testSearchProducts()
 {
     resetLog();
     $this->object->setMock(true, 'searchProducts.xml');
     $this->assertFalse($this->object->searchProducts());
     //no query yet
     $this->object->setQuery('platinum');
     $this->assertNull($this->object->searchProducts());
     $o = $this->object->getOptions();
     $this->assertEquals('ListMatchingProducts', $o['Action']);
     $check = parseLog();
     $this->assertEquals('Single Mock File set: searchProducts.xml', $check[1]);
     $this->assertEquals('Search Query must be set in order to search for a query!', $check[2]);
     $this->assertEquals('Fetched Mock File: mock/searchProducts.xml', $check[3]);
     return $this->object;
 }
 public function testFetchServiceStatus()
 {
     resetLog();
     $this->object->setMock(true, 'fetchServiceStatus.xml');
     $this->assertFalse($this->object->fetchServiceStatus());
     //no service set yet
     $this->object->setService('Inbound');
     $this->assertNull($this->object->fetchServiceStatus());
     //now it is good
     $o = $this->object->getOptions();
     $this->assertEquals('GetServiceStatus', $o['Action']);
     $check = parseLog();
     $this->assertEquals('Single Mock File set: fetchServiceStatus.xml', $check[1]);
     $this->assertEquals('Service must be set in order to retrieve status', $check[2]);
     $this->assertEquals('Fetched Mock File: mock/fetchServiceStatus.xml', $check[3]);
     return $this->object;
 }
 public function testFetchTrackingDetails()
 {
     resetLog();
     $this->object->setMock(true, 'fetchTrackingDetails.xml');
     $this->assertFalse($this->object->fetchTrackingDetails());
     //no package ID set yet
     $this->object->setPackageNumber('777');
     $ok = $this->object->fetchTrackingDetails();
     //now it is good
     $this->assertNull($ok);
     $o = $this->object->getOptions();
     $this->assertEquals('GetPackageTrackingDetails', $o['Action']);
     $check = parseLog();
     $this->assertEquals('Single Mock File set: fetchTrackingDetails.xml', $check[1]);
     $this->assertEquals('Package Number must be set in order to fetch it!', $check[2]);
     $this->assertEquals('Fetched Mock File: test/mock/fetchTrackingDetails.xml', $check[3]);
     return $this->object;
 }
 public function testFetchOrder()
 {
     resetLog();
     $this->object->setMock(true, 'fetchOrder.xml');
     $this->assertFalse($this->object->fetchOrder());
     //no order ID set yet
     $this->object->setOrderId('058-1233752-8214740');
     $this->assertNull($this->object->fetchOrder());
     //now it is good
     $o = $this->object->getOptions();
     $this->assertEquals('GetOrder', $o['Action']);
     $check = parseLog();
     $this->assertEquals('Single Mock File set: fetchOrder.xml', $check[1]);
     $this->assertEquals('Order ID must be set in order to fetch it!', $check[2]);
     $this->assertEquals('Fetched Mock File: mock/fetchOrder.xml', $check[3]);
     $get = $this->object->getData();
     $this->assertInternalType('array', $get);
     return $this->object;
 }
 public function testManageReportSchedule()
 {
     resetLog();
     $this->object->setMock(true, 'manageReportSchedule.xml');
     $this->assertFalse($this->object->manageReportSchedule());
     //no report type yet
     $this->object->setReportType('_GET_ORDERS_DATA_');
     $this->assertFalse($this->object->manageReportSchedule());
     //no report schedule yet
     $this->object->setSchedule('_30_DAYS_');
     $this->assertNull($this->object->manageReportSchedule());
     $o = $this->object->getOptions();
     $this->assertEquals('ManageReportSchedule', $o['Action']);
     $check = parseLog();
     $this->assertEquals('Single Mock File set: manageReportSchedule.xml', $check[1]);
     $this->assertEquals('Report Type must be set in order to manage a report schedule!', $check[2]);
     $this->assertEquals('Schedule must be set in order to manage a report schedule!', $check[3]);
     $this->assertEquals('Fetched Mock File: mock/manageReportSchedule.xml', $check[4]);
     return $this->object;
 }
 public function testFetchProductList()
 {
     resetLog();
     $this->object->setMock(true, 'fetchProductList.xml');
     $this->assertFalse($this->object->fetchProductList());
     //no IDs yet
     $this->object->setProductIds('789');
     $this->assertFalse($this->object->fetchProductList());
     //no ID type yet
     $this->object->setIdType('ASIN');
     $this->assertNull($this->object->fetchProductList());
     $o = $this->object->getOptions();
     $this->assertEquals('GetMatchingProductForId', $o['Action']);
     $check = parseLog();
     $this->assertEquals('Single Mock File set: fetchProductList.xml', $check[1]);
     $this->assertEquals('Product IDs must be set in order to fetch them!', $check[2]);
     $this->assertEquals('ID Type must be set in order to use the given IDs!', $check[3]);
     $this->assertEquals('Fetched Mock File: mock/fetchProductList.xml', $check[4]);
     return $this->object;
 }
 public function testFetchInventoryListToken2()
 {
     resetLog();
     $this->object->setMock(true, array('fetchInventoryListToken.xml', 'fetchInventoryListToken2.xml'));
     //with using token
     $this->object->setUseToken();
     $this->assertNull($this->object->fetchInventoryList());
     $check = parseLog();
     $this->assertEquals('Mock files array set.', $check[1]);
     $this->assertEquals('Fetched Mock File: mock/fetchInventoryListToken.xml', $check[2]);
     $this->assertEquals('Recursively fetching more Inventory Supplies', $check[3]);
     $this->assertEquals('Fetched Mock File: mock/fetchInventoryListToken2.xml', $check[4]);
     $this->assertFalse($this->object->hasToken());
     $o = $this->object->getOptions();
     $this->assertEquals('ListInventorySupplyByNextToken', $o['Action']);
     $this->assertArrayNotHasKey('QueryStartDateTime', $o);
     $this->assertArrayNotHasKey('ResponseGroup', $o);
     $r = $this->object->getSupply(null);
     $this->assertArrayHasKey(0, $r);
     $this->assertArrayHasKey(1, $r);
     $this->assertEquals('SampleSKU1', $r[0]['SellerSKU']);
     $this->assertEquals('SampleSKU2', $r[1]['SellerSKU']);
     $this->assertEquals(2, count($r));
     $this->assertNotEquals($r[0], $r[1]);
 }
 public function testFetchPreview()
 {
     resetLog();
     $this->object->setMock(true, 'fetchPreview.xml');
     $this->assertFalse($this->object->fetchPreview());
     //no address set yet
     $a = array();
     $a['Name'] = 'Name';
     $a['Line1'] = 'Line1';
     $a['City'] = 'City';
     $a['StateOrProvidenceCode'] = 'StateOrProvidenceCode';
     $a['CountryCode'] = 'CountryCode';
     $a['PostalCode'] = 'PostalCode';
     $this->object->setAddress($a);
     $this->assertFalse($this->object->fetchPreview());
     //no items set yet
     $i = array();
     $i[0]['SellerSKU'] = 'SellerSKU';
     $i[0]['SellerFulfillmentOrderItemId'] = 'SellerFulfillmentOrderItemId';
     $i[0]['Quantity'] = 'Quantity';
     $this->object->setItems($i);
     $this->assertNull($this->object->fetchPreview());
     $check = parseLog();
     $this->assertEquals('Single Mock File set: fetchPreview.xml', $check[1]);
     $this->assertEquals('Address must be set in order to create a preview', $check[2]);
     $this->assertEquals('Items must be set in order to create a preview', $check[3]);
     $this->assertEquals('Fetched Mock File: mock/fetchPreview.xml', $check[4]);
     return $this->object;
 }
 public function testFetchMockResponse()
 {
     resetLog();
     $this->object->setOrderId('777');
     $this->object->setMock(true, array());
     $this->assertFalse($this->object->cancelOrder());
     //no mock response
     $this->object->setMock(true, 'oopsafile.xml');
     $this->assertFalse($this->object->cancelOrder());
     //no strings allowed
     $this->object->setMock(true, array(404, 503, 400, 200));
     $this->assertFalse($this->object->cancelOrder());
     //404
     $this->assertFalse($this->object->cancelOrder());
     //503
     $this->assertFalse($this->object->cancelOrder());
     //400
     $this->assertTrue($this->object->cancelOrder());
     //200
     $this->assertFalse($this->object->cancelOrder());
     //loop back to 404
     $check = parseLog();
     $this->assertEquals('Mock files array set.', $check[1]);
     $this->assertEquals('Attempted to retrieve mock responses, but no mock responses present', $check[2]);
     $this->assertEquals('No Response found', $check[3]);
     $this->assertEquals('Mock Mode set to ON', $check[4]);
     $this->assertEquals('Single Mock File set: oopsafile.xml', $check[5]);
     $this->assertEquals('fetchMockResponse only works with response code numbers', $check[6]);
     $this->assertEquals('No Response found', $check[7]);
     $this->assertEquals('Mock Mode set to ON', $check[8]);
     $this->assertEquals('Mock files array set.', $check[9]);
     $this->assertEquals('Returning Mock Response: 404', $check[10]);
     $this->assertEquals('Bad Response! 404 Not Found: Not Found - Not Found', $check[11]);
     $this->assertEquals('Returning Mock Response: 503', $check[12]);
     $this->assertEquals('Bad Response! 503 Service Unavailable: Service Unavailable - Service Unavailable', $check[13]);
     $this->assertEquals('Returning Mock Response: 400', $check[14]);
     $this->assertEquals('Bad Response! 400 Bad Request: Bad Request - Bad Request', $check[15]);
     $this->assertEquals('Returning Mock Response: 200', $check[16]);
     $this->assertEquals('Successfully deleted Fulfillment Order 777', $check[17]);
     $this->assertEquals('End of Mock List, resetting to 0', $check[18]);
     $this->assertEquals('Mock List index reset to 0', $check[19]);
     $this->assertEquals('Returning Mock Response: 404', $check[20]);
     $this->assertEquals('Bad Response! 404 Not Found: Not Found - Not Found', $check[21]);
 }
 public function testFetchCount()
 {
     resetLog();
     $this->object->setReportTypes('123456');
     $this->object->setMock(true, 'fetchReportScheduleCount.xml');
     $this->assertNull($this->object->fetchCount());
     $o = $this->object->getOptions();
     $this->assertEquals('GetReportScheduleCount', $o['Action']);
     $check = parseLog();
     $this->assertEquals('Single Mock File set: fetchReportScheduleCount.xml', $check[1]);
     $this->assertEquals('Fetched Mock File: mock/fetchReportScheduleCount.xml', $check[2]);
     $this->assertFalse($this->object->hasToken());
     return $this->object;
 }
 public function testFetchCategories()
 {
     resetLog();
     $this->object->setMock(true, 'fetchCategories.xml');
     $this->assertFalse($this->object->fetchCategories());
     //no IDs yet
     $this->object->setSKUs('789');
     $this->assertNull($this->object->fetchCategories());
     $o = $this->object->getOptions();
     $this->assertEquals('GetProductCategoriesForSKU', $o['Action']);
     $check = parseLog();
     $this->assertEquals('Single Mock File set: fetchCategories.xml', $check[1]);
     $this->assertEquals('Product IDs must be set in order to look them up!', $check[2]);
     $this->assertEquals('Fetched Mock File: mock/fetchCategories.xml', $check[3]);
     return $this->object;
 }
 public function testCancelFeeds()
 {
     resetLog();
     $this->object->setMock(true, 'cancelFeeds.xml');
     $this->assertFalse($this->object->getFeedCount());
     //not fetched yet
     $ok = $this->object->cancelFeeds();
     $this->assertNull($ok);
     $check = parseLog();
     $this->assertEquals('Single Mock File set: cancelFeeds.xml', $check[1]);
     $this->assertEquals('Fetched Mock File: mock/cancelFeeds.xml', $check[2]);
     $this->assertEquals('Successfully cancelled 1 report requests.', $check[3]);
     $o = $this->object->getOptions();
     $this->assertEquals('CancelFeedSubmissions', $o['Action']);
     $count = $this->object->getFeedCount();
     $this->assertEquals('1', $count);
 }
 public function testFetchShipmentsToken2()
 {
     resetLog();
     $this->object->setMock(true, ['fetchShipmentsToken.xml', 'fetchShipmentsToken2.xml']);
     //with using token
     $this->object->setUseToken();
     $this->object->setStatusFilter('status');
     $this->assertNull($this->object->fetchShipments());
     $check = parseLog();
     $this->assertEquals('Mock files array set.', $check[1]);
     $this->assertEquals('Fetched Mock File: test/mock/fetchShipmentsToken.xml', $check[2]);
     $this->assertEquals('Recursively fetching more shipments', $check[3]);
     $this->assertEquals('Fetched Mock File: test/mock/fetchShipmentsToken2.xml', $check[4]);
     $this->assertFalse($this->object->hasToken());
     $o = $this->object->getOptions();
     $this->assertEquals('ListInboundShipmentsByNextToken', $o['Action']);
     $r = $this->object->getShipment();
     $this->assertArrayHasKey(0, $r);
     $this->assertArrayHasKey(1, $r);
     $this->assertEquals(2, count($r));
     $this->assertInternalType('array', $r[0]);
     $this->assertInternalType('array', $r[1]);
     $this->assertNotEquals($r[0], $r[1]);
 }
 public function testRequestReport()
 {
     resetLog();
     $this->object->setMock(true, 'requestReport.xml');
     $this->assertFalse($this->object->requestReport());
     $this->object->setReportType('Type');
     $this->assertNull($this->object->requestReport());
     $o = $this->object->getOptions();
     $this->assertEquals('RequestReport', $o['Action']);
     $check = parseLog();
     $this->assertEquals('Single Mock File set: requestReport.xml', $check[1]);
     $this->assertEquals('Report Type must be set in order to request a report!', $check[2]);
     $this->assertEquals('Fetched Mock File: mock/requestReport.xml', $check[3]);
     return $this->object;
 }
 public function testFetchOrderListToken2()
 {
     resetLog();
     $this->object->setMock(true, array('fetchFulfillmentOrderListToken.xml', 'fetchFulfillmentOrderListToken2.xml'));
     //with using token
     $this->object->setUseToken();
     $this->assertNull($this->object->fetchOrderList());
     $check = parseLog();
     $this->assertEquals('Mock files array set.', $check[1]);
     $this->assertEquals('Fetched Mock File: mock/fetchFulfillmentOrderListToken.xml', $check[2]);
     $this->assertEquals('Recursively fetching more Orders', $check[3]);
     $this->assertEquals('Fetched Mock File: mock/fetchFulfillmentOrderListToken2.xml', $check[4]);
     $this->assertFalse($this->object->hasToken());
     $o = $this->object->getOptions();
     $this->assertEquals('ListAllFulfillmentOrdersByNextToken', $o['Action']);
     $r = $this->object->getOrder(null);
     $this->assertArrayHasKey(0, $r);
     $this->assertArrayHasKey(1, $r);
     $this->assertEquals('extern_id_1154539615776', $r[0]['SellerFulfillmentOrderId']);
     $this->assertEquals('external-order-ebaytime1154557376014', $r[1]['SellerFulfillmentOrderId']);
     $this->assertNotEquals($r[0], $r[1]);
 }
 /**
  * @depends testUsePlan
  */
 public function testUpdateShipment($o)
 {
     resetLog();
     $this->object = new AmazonShipment('testStore', true, null, __DIR__ . '/../test-config.php');
     $this->assertFalse($this->object->updateShipment());
     //no ID set
     $this->object->setShipmentId('55');
     $this->assertFalse($this->object->updateShipment());
     //no header set
     $a = [];
     $a['Name'] = 'Name';
     $a['AddressLine1'] = 'AddressLine1';
     $a['City'] = 'City';
     $a['StateOrProvinceCode'] = 'StateOrProvinceCode';
     $a['CountryCode'] = 'CountryCode';
     $a['PostalCode'] = 'PostalCode';
     $this->object->setAddress($a);
     $this->assertFalse($this->object->updateShipment());
     //no items yet
     $o->setMock(true, 'updateShipment.xml');
     $this->assertTrue($o->updateShipment());
     //this one is good
     $op = $o->getOptions();
     $this->assertEquals('UpdateInboundShipment', $op['Action']);
     $check = parseLog();
     $this->assertEquals('Shipment ID must be set in order to update it', $check[1]);
     $this->assertEquals('Header must be set in order to update a shipment', $check[2]);
     $this->assertEquals('Items must be set in order to update a shipment', $check[3]);
     $this->assertEquals('Single Mock File set: updateShipment.xml', $check[5]);
     $this->assertEquals('Fetched Mock File: test/mock/updateShipment.xml', $check[6]);
     $this->assertEquals('Successfully updated Shipment #FBA63J76R', $check[7]);
 }
Example #23
0
            if ($urls && $installer->update($urls)) {
                foreach ($apps as $app) {
                    $installer_apps->installWebAsystApp($app);
                    if (!empty($plugins[$app])) {
                        foreach ($plugins[$app] as $plugin) {
                            $installer_apps->updateAppPluginsConfig($app, $plugin);
                        }
                    }
                }
            } else {
                $state = $installer->getState();
                if (isset($state['stage_status']) && $state['stage_status'] == waInstaller::STATE_ERROR) {
                    throw new Exception($state['error']);
                }
            }
            $log = parseLog($installer->getFullState('raw'), $t);
            $next_step = $step + 1;
            $next = $steps[$step]['next'];
            $content = <<<HTML
<h1>{$t->_('Files')}&nbsp;<i class="icon16 yes"></i></h1>
<div class="i-log">{$log}</div>
<p class="i-success">{$t->_('All files successfully extracted. Click "Continue" button below.')}&nbsp;<i class="icon16 yes"></i></p>
HTML;
        } catch (Exception $e) {
            $content = <<<HTML
<h1>{$t->_('Files')}&nbsp;<i class="icon16 no"></i></h1>
<p class="i-error">{$t->_('An error occurred during the installation')}</p>
<p>{$e->getMessage()}</p>
HTML;
        }
        break;
 public function testFetchCount()
 {
     resetLog();
     $this->object->setRequestIds('123456');
     $this->object->setMaxCount(77);
     $this->object->setMock(true, 'fetchReportRequestCount.xml');
     $this->assertNull($this->object->fetchCount());
     $o = $this->object->getOptions();
     $this->assertEquals('GetReportRequestCount', $o['Action']);
     $this->assertArrayNotHasKey('ReportRequestIdList.Id.1', $o);
     $this->assertArrayNotHasKey('MaxCount', $o);
     $check = parseLog();
     $this->assertEquals('Single Mock File set: fetchReportRequestCount.xml', $check[1]);
     $this->assertEquals('Fetched Mock File: test/mock/fetchReportRequestCount.xml', $check[2]);
     $this->assertFalse($this->object->hasToken());
     return $this->object;
 }
$arrCampaignOwnerSharingRule = parseLog("/home/dpeter/sf/lists/CampaignOwnerSharingRule.log");
$arrCampaignSharingRules = parseLog("/home/dpeter/sf/lists/CampaignSharingRules.log");
$arrCaseCriteriaBasedSharingRule = parseLog("/home/dpeter/sf/lists/CaseCriteriaBasedSharingRule.log");
$arrCaseOwnerSharingRule = parseLog("/home/dpeter/sf/lists/CaseOwnerSharingRule.log");
$arrCaseSharingRules = parseLog("/home/dpeter/sf/lists/CaseSharingRules.log");
$arrContactCriteriaBasedSharingRule = parseLog("/home/dpeter/sf/lists/ContactCriteriaBasedSharingRule.log");
$arrContactOwnerSharingRule = parseLog("/home/dpeter/sf/lists/ContactOwnerSharingRule.log");
$arrContactSharingRules = parseLog("/home/dpeter/sf/lists/ContactSharingRules.log");
$arrCustomObjectCriteriaBasedSharingRule = parseLog("/home/dpeter/sf/lists/CustomObjectCriteriaBasedSharingRule.log");
$arrCustomObjectSharingRules = parseLog("/home/dpeter/sf/lists/CustomObjectSharingRules.log");
$arrLeadCriteriaBasedSharingRule = parseLog("/home/dpeter/sf/lists/LeadCriteriaBasedSharingRule.log");
$arrLeadOwnerSharingRule = parseLog("/home/dpeter/sf/lists/LeadOwnerSharingRule.log");
$arrLeadSharingRules = parseLog("/home/dpeter/sf/lists/LeadSharingRules.log");
$arrOpportunityCriteriaBasedSharingRule = parseLog("/home/dpeter/sf/lists/OpportunityCriteriaBasedSharingRule.log");
$arrOpportunityOwnerSharingRule = parseLog("/home/dpeter/sf/lists/OpportunityOwnerSharingRule.log");
$arrOpportunitySharingRules = parseLog("/home/dpeter/sf/lists/OpportunitySharingRules.log");
$remainingXML = "";
$remainingXML .= generateXMLTypeBlock($arrLetterhead, "Letterhead");
$remainingXML .= generateXMLTypeBlock($arrAccountCriteriaBasedSharingRule, "AccountCriteriaBasedSharingRule");
$remainingXML .= generateXMLTypeBlock($arrAccountOwnerSharingRule, "AccountOwnerSharingRule");
$remainingXML .= generateXMLTypeBlock($arrAccountSharingRules, "AccountSharingRules");
$remainingXML .= generateXMLTypeBlock($arrCampaignCriteriaBasedSharingRule, "CampaignCriteriaBasedSharingRule");
$remainingXML .= generateXMLTypeBlock($arrCampaignOwnerSharingRule, "CampaignOwnerSharingRule");
$remainingXML .= generateXMLTypeBlock($arrCampaignSharingRules, "CampaignSharingRules");
$remainingXML .= generateXMLTypeBlock($arrCaseCriteriaBasedSharingRule, "CaseCriteriaBasedSharingRule");
$remainingXML .= generateXMLTypeBlock($arrCaseOwnerSharingRule, "CaseOwnerSharingRule");
$remainingXML .= generateXMLTypeBlock($arrCaseSharingRules, "CaseSharingRules");
$remainingXML .= generateXMLTypeBlock($arrContactCriteriaBasedSharingRule, "ContactCriteriaBasedSharingRule");
$remainingXML .= generateXMLTypeBlock($arrContactOwnerSharingRule, "ContactOwnerSharingRule");
$remainingXML .= generateXMLTypeBlock($arrContactSharingRules, "ContactSharingRules");
$remainingXML .= generateXMLTypeBlock($arrCustomObjectCriteriaBasedSharingRule, "CustomObjectCriteriaBasedSharingRule");
 public function testFetchPlan()
 {
     resetLog();
     $this->object->setMock(true, 'fetchPlan.xml');
     $this->assertFalse($this->object->fetchPlan());
     //no address set yet
     $a = array();
     $a['Name'] = 'Name';
     $a['AddressLine1'] = 'AddressLine1';
     $a['City'] = 'City';
     $a['StateOrProvinceCode'] = 'StateOrProvinceCode';
     $a['CountryCode'] = 'CountryCode';
     $a['PostalCode'] = 'PostalCode';
     $this->object->setAddress($a);
     $this->assertFalse($this->object->fetchPlan());
     //no items set yet
     $i = array();
     $i[0]['SellerSKU'] = 'NewSellerSKU';
     $i[0]['Quantity'] = 'NewQuantity';
     $this->object->setItems($i);
     $this->assertNull($this->object->fetchPlan());
     //now it is good
     $o = $this->object->getOptions();
     $this->assertEquals('CreateInboundShipmentPlan', $o['Action']);
     $check = parseLog();
     $this->assertEquals('Single Mock File set: fetchPlan.xml', $check[1]);
     $this->assertEquals('Address must be set in order to make a plan', $check[2]);
     $this->assertEquals('Items must be set in order to make a plan', $check[3]);
     $this->assertEquals('Fetched Mock File: mock/fetchPlan.xml', $check[4]);
     return $this->object;
 }
 public function testFetchOrdersToken2()
 {
     resetLog();
     $this->object->setMock(true, array('fetchOrderListToken.xml', 'fetchOrderListToken2.xml'));
     //with using token
     $this->object->setUseToken();
     $this->assertNull($this->object->fetchOrders());
     $check = parseLog();
     $this->assertEquals('Mock files array set.', $check[1]);
     $this->assertEquals('Fetched Mock File: mock/fetchOrderListToken.xml', $check[2]);
     $this->assertEquals('Mock Mode set to ON', $check[3]);
     $this->assertEquals('Mock files array set.', $check[4]);
     $this->assertEquals('Mock Mode set to ON', $check[5]);
     $this->assertEquals('Mock files array set.', $check[6]);
     $this->assertEquals('Recursively fetching more orders', $check[7]);
     $this->assertEquals('Fetched Mock File: mock/fetchOrderListToken2.xml', $check[8]);
     $this->assertEquals('Mock Mode set to ON', $check[9]);
     $this->assertEquals('Mock files array set.', $check[10]);
     $this->assertFalse($this->object->hasToken());
     $o = $this->object->getOptions();
     $this->assertEquals('ListOrdersByNextToken', $o['Action']);
     $this->assertArrayNotHasKey('CreatedAfter', $o);
     $r = $this->object->getList();
     $this->assertArrayHasKey(0, $r);
     $this->assertArrayHasKey(1, $r);
     $this->assertArrayHasKey(2, $r);
     $this->assertInternalType('object', $r[0]);
     $this->assertInternalType('object', $r[1]);
     $this->assertInternalType('object', $r[2]);
     $this->assertEquals(3, count($r));
     $this->assertNotEquals($r[0], $r[1]);
 }
 public function testFetchParticipationListToken2()
 {
     resetLog();
     $this->object->setMock(true, array('fetchParticipationListToken.xml', 'fetchParticipationListToken2.xml'));
     //with using token
     $this->object->setUseToken();
     $this->assertNull($this->object->fetchParticipationList());
     $check = parseLog();
     $this->assertEquals('Mock files array set.', $check[1]);
     $this->assertEquals('Fetched Mock File: mock/fetchParticipationListToken.xml', $check[2]);
     $this->assertEquals('Recursively fetching more Participationseses', $check[3]);
     $this->assertEquals('Fetched Mock File: mock/fetchParticipationListToken2.xml', $check[4]);
     $this->assertFalse($this->object->hasToken());
     $o = $this->object->getOptions();
     $this->assertEquals('ListMarketplaceParticipationsByNextToken', $o['Action']);
     $this->assertArrayNotHasKey('NextToken', $o);
     $p = $this->object->getParticipationList();
     $this->assertEquals(2, count($p));
     $this->assertEquals('A135KKEKJAIBJ56', $p[0]['SellerId']);
     $this->assertEquals('A135KKEKWF1JAI6', $p[1]['SellerId']);
     $this->assertNotEquals($p[0], $p[1]);
 }
 public function testCreateOrder()
 {
     resetLog();
     $this->object->setMock(true, array(503, 200));
     $this->assertFalse($this->object->createOrder());
     //no Seller Fulfillment Order ID set yet
     $this->object->setFulfillmentOrderId('123ABC');
     $this->assertFalse($this->object->createOrder());
     //no Displayable Order ID set yet
     $this->object->setDisplayableOrderId('ABC123');
     $this->assertFalse($this->object->createOrder());
     //no Date set yet
     $this->object->setDate('-1 min');
     $this->assertFalse($this->object->createOrder());
     //no Displayable Order Comment set yet
     $this->object->setComment('A comment.');
     $this->assertFalse($this->object->createOrder());
     //no Shipping Speed Category set yet
     $this->object->setShippingSpeed('Standard');
     $this->assertFalse($this->object->createOrder());
     //no Destination Address set yet
     $a = array();
     $a['Name'] = 'Name';
     $a['Line1'] = 'Line1';
     $a['City'] = 'City';
     $a['StateOrProvidenceCode'] = 'StateOrProvidenceCode';
     $a['CountryCode'] = 'CountryCode';
     $a['PostalCode'] = 'PostalCode';
     $this->object->setAddress($a);
     $this->assertFalse($this->object->createOrder());
     //no Items set yet
     $i = array();
     $i[0]['SellerSKU'] = 'NewSellerSKU';
     $i[0]['SellerFulfillmentOrderItemId'] = 'NewSellerFulfillmentOrderItemId';
     $i[0]['Quantity'] = 'NewQuantity';
     $this->object->setItems($i);
     $this->object->createOrder();
     //attempt 1: oops, bad response
     $this->object->createOrder();
     //attempt 2: success
     $check = parseLog();
     $this->assertEquals('Mock files array set.', $check[1]);
     $this->assertEquals('Seller Fulfillment OrderID must be set in order to create an order', $check[2]);
     $this->assertEquals('Displayable Order ID must be set in order to create an order', $check[3]);
     $this->assertEquals('Date must be set in order to create an order', $check[4]);
     $this->assertEquals('Comment must be set in order to create an order', $check[5]);
     $this->assertEquals('Shipping Speed must be set in order to create an order', $check[6]);
     $this->assertEquals('Address must be set in order to create an order', $check[7]);
     $this->assertEquals('Items must be set in order to create an order', $check[8]);
     $this->assertEquals('Returning Mock Response: 503', $check[9]);
     $this->assertEquals('Bad Response! 503 Service Unavailable: Service Unavailable - Service Unavailable', $check[10]);
     $this->assertEquals('Returning Mock Response: 200', $check[11]);
     $this->assertEquals('Successfully created Fulfillment Order 123ABC / ABC123', $check[12]);
 }
 public function testFetchOrderItemsToken2()
 {
     resetLog();
     $this->object->setMock(true, ['fetchOrderItemsToken.xml', 'fetchOrderItemsToken2.xml']);
     $this->object->setOrderId('058-1233752-8214740');
     //with using token
     $this->object->setUseToken();
     $this->assertNull($this->object->fetchItems());
     $check = parseLog();
     $this->assertEquals('Mock files array set.', $check[1]);
     $this->assertEquals('Fetched Mock File: test/mock/fetchOrderItemsToken.xml', $check[2]);
     $this->assertEquals('Recursively fetching more items', $check[3]);
     $this->assertEquals('Fetched Mock File: test/mock/fetchOrderItemsToken2.xml', $check[4]);
     $this->assertFalse($this->object->hasToken());
     $o = $this->object->getOptions();
     $this->assertEquals('ListOrderItemsByNextToken', $o['Action']);
     $this->assertArrayNotHasKey('AmazonOrderId', $o);
     $r = $this->object->getItems();
     $this->assertArrayHasKey(0, $r);
     $this->assertArrayHasKey(1, $r);
     $this->assertEquals('CBA_OTF_1', $r[0]['SellerSKU']);
     $this->assertEquals('CBA_OTF_5', $r[1]['SellerSKU']);
     $this->assertEquals(2, count($r));
     $this->assertNotEquals($r[0], $r[1]);
 }