@@ -134,107 +138,113 @@
[{oxmultilang ident="d3tbclordermanager_items_overview_desc"}]
-
-
-
-
- [{oxmultilang ident="D3_ORDERMANAGER_OVERVIEW_STAT"}]
-
-
-
-
- [{oxmultilang ident="D3_ORDERMANAGER_STAT_FINISHED"}] [{oxinputhelp ident="D3_ORDERMANAGER_STAT_FINISHED_DESC"}]
-
-
- [{assign var="mFinishedCount" value=$oView->getFinishedCount()}]
- [{$mFinishedCount}]
- [{if $oView->getDataOnDemand()}]
-
- [{if false == $oView->hasRequestedData('finishedCount', 'getFinishedCount')}]
-
-
-
-
- [{oxmultilang ident="D3_ORDERMANAGER_STAT_REQUESTDATA"}]
-
+ [{if false === is_array($Errors.default) || count($Errors.default) === 0}]
+
+
+
+
+ [{oxmultilang ident="D3_ORDERMANAGER_OVERVIEW_STAT"}]
+
+
+
+
+ [{oxmultilang ident="D3_ORDERMANAGER_STAT_FINISHED"}] [{oxinputhelp ident="D3_ORDERMANAGER_STAT_FINISHED_DESC"}]
+
+
+ [{assign var="mFinishedCount" value=$oView->getFinishedCount()}]
+ [{$mFinishedCount}]
+ [{if $oView->getDataOnDemand()}]
+
+ [{if false == $oView->hasRequestedData('finishedCount', 'getFinishedCount')}]
+
+
+
+
+ [{oxmultilang ident="D3_ORDERMANAGER_STAT_REQUESTDATA"}]
+
+
-
+ [{/if}]
[{/if}]
- [{/if}]
-
-
-
-
-
- [{oxmultilang ident="D3_ORDERMANAGER_STAT_FINISHEDMONTH"}] [{oxinputhelp ident="D3_ORDERMANAGER_STAT_FINISHEDMONTH_DESC"}]
-
-
- [{assign var="mFinishedMonthCount" value=$oView->getFinishedMonthCount()}]
- [{$mFinishedMonthCount}]
- [{if $oView->getDataOnDemand()}]
-
- [{if false == $oView->hasRequestedData('finishedMonthCount', 'getFinishedMonthCount')}]
-
-
-
-
- [{oxmultilang ident="D3_ORDERMANAGER_STAT_REQUESTDATA"}]
-
+
+
+
+
+
+ [{oxmultilang ident="D3_ORDERMANAGER_STAT_FINISHEDMONTH"}] [{oxinputhelp ident="D3_ORDERMANAGER_STAT_FINISHEDMONTH_DESC"}]
+
+
+ [{assign var="mFinishedMonthCount" value=$oView->getFinishedMonthCount()}]
+ [{$mFinishedMonthCount}]
+ [{if $oView->getDataOnDemand()}]
+
+ [{if false == $oView->hasRequestedData('finishedMonthCount', 'getFinishedMonthCount')}]
+
+
+
+
+ [{oxmultilang ident="D3_ORDERMANAGER_STAT_REQUESTDATA"}]
+
+
-
+ [{/if}]
[{/if}]
- [{/if}]
-
-
-
-
-
- [{oxmultilang ident="D3_ORDERMANAGER_STAT_TOFINISHED"}] [{oxinputhelp ident="D3_ORDERMANAGER_STAT_TOFINISHED_DESC"}]
-
-
- [{assign var="mToFinishedCount" value=$oView->getToFinishedCount()}]
- [{$mToFinishedCount}]
- [{if $oView->getDataOnDemand()}]
-
- [{if false == $oView->hasRequestedData('toFinishedCount', 'getToFinishedCount')}]
-
-
-
-
- [{oxmultilang ident="D3_ORDERMANAGER_STAT_REQUESTDATA"}]
-
+
+
+
+
+
+ [{oxmultilang ident="D3_ORDERMANAGER_STAT_TOFINISHED"}] [{oxinputhelp ident="D3_ORDERMANAGER_STAT_TOFINISHED_DESC"}]
+
+
+ [{assign var="mToFinishedCount" value=$oView->getToFinishedCount()}]
+ [{$mToFinishedCount}]
+ [{if $oView->getDataOnDemand()}]
+
+ [{if false == $oView->hasRequestedData('toFinishedCount', 'getToFinishedCount')}]
+
+
+
+
+ [{oxmultilang ident="D3_ORDERMANAGER_STAT_REQUESTDATA"}]
+
+
-
+ [{/if}]
[{/if}]
- [{/if}]
-
-
-
-
-
- [{oxmultilang ident="D3_ORDERMANAGER_STAT_NOTFINISHED"}] [{oxinputhelp ident="D3_ORDERMANAGER_STAT_NOTFINISHED_DESC"}]
-
-
- [{assign var="mNotFinishedCount" value=$oView->getNotFinishedCount()}]
- [{$mNotFinishedCount}]
- [{if $oView->getDataOnDemand()}]
-
- [{if false == $oView->hasRequestedData('notFinishedCount', 'getNotFinishedCount')}]
-
-
-
-
- [{oxmultilang ident="D3_ORDERMANAGER_STAT_REQUESTDATA"}]
-
+
+
+
+
+
+ [{oxmultilang ident="D3_ORDERMANAGER_STAT_NOTFINISHED"}] [{oxinputhelp ident="D3_ORDERMANAGER_STAT_NOTFINISHED_DESC"}]
+
+
+ [{assign var="mNotFinishedCount" value=$oView->getNotFinishedCount()}]
+ [{$mNotFinishedCount}]
+ [{if $oView->getDataOnDemand()}]
+
+ [{if false == $oView->hasRequestedData('notFinishedCount', 'getNotFinishedCount')}]
+
+
+
+
+ [{oxmultilang ident="D3_ORDERMANAGER_STAT_REQUESTDATA"}]
+
+
-
+ [{/if}]
[{/if}]
- [{/if}]
-
-
-
+
+
+
+
-
+ [{else}]
+
+ [{oxmultilang ident="D3_ORDERMANAGER_OVERVIEW_STAT_FIXSETTINGS"}]
+
+ [{/if}]
@@ -299,4 +309,4 @@
[{/if}]
-[{include file="d3_cfg_mod_inc.tpl"}]
\ No newline at end of file
+[{include file="d3_cfg_mod_inc.tpl"}]
diff --git a/src/Application/views/admin/tpl/d3_cfg_ordermanageritem_trigger.tpl b/src/Application/views/admin/tpl/d3_cfg_ordermanageritem_trigger.tpl
index bff5cd5c..08100a40 100644
--- a/src/Application/views/admin/tpl/d3_cfg_ordermanageritem_trigger.tpl
+++ b/src/Application/views/admin/tpl/d3_cfg_ordermanageritem_trigger.tpl
@@ -211,6 +211,39 @@
+
+
+
+ [{oxmultilang ident="D3_ORDERMANAGER_MAIN_MARKORDER"}]
+
+
+
+ getFieldData('D3_OM_MARKORDER')}]checked[{/if}] [{$readonly}]>
+ [{oxinputhelp ident="D3_ORDERMANAGER_MAIN_MARKORDER_DESC"}]
+
+
+
+
+
+
+
+
+ [{oxmultilang ident="D3_ORDERMANAGER_MAIN_UNMARKEDEXECDELAY"}]
+
+
+
+ [{oxmultilang ident="D3_ORDERMANAGER_MAIN_UNMARKEDORDERUNIT"}]
+
+ getValue('sUnmarkExecDelayTimeUnit') == 'days'}]selected[{/if}]>[{oxmultilang ident="D3_ORDERMANAGER_MAIN_UNMARKEDEXECDELAY_DAY"}]
+ getValue('sUnmarkExecDelayTimeUnit') == 'hours'}]selected[{/if}]>[{oxmultilang ident="D3_ORDERMANAGER_MAIN_UNMARKEDEXECDELAY_HOUR"}]
+ getValue('sUnmarkExecDelayTimeUnit') == 'minutes'}]selected[{/if}]>[{oxmultilang ident="D3_ORDERMANAGER_MAIN_UNMARKEDEXECDELAY_MINUTE"}]
+
+ [{oxinputhelp ident="D3_ORDERMANAGER_MAIN_UNMARKEDEXECDELAY_DESC"}]
+
+
+
+
+
diff --git a/src/Application/views/admin/tpl/d3_cfg_ordermanagerset_main.tpl b/src/Application/views/admin/tpl/d3_cfg_ordermanagerset_main.tpl
index 52f4ecaf..baadde1d 100644
--- a/src/Application/views/admin/tpl/d3_cfg_ordermanagerset_main.tpl
+++ b/src/Application/views/admin/tpl/d3_cfg_ordermanagerset_main.tpl
@@ -242,16 +242,6 @@ function showFormatSettings(sElemId, visible, blUseOldElem)
-
-
- [{oxmultilang ident="D3_ORDERMANAGER_SET_CRON_CRONLINK"}]
-
-
- [{$oView->getCronLink(false, $aCronJobIds.id)}]
- [{oxinputhelp ident="D3_ORDERMANAGER_SET_CRON_CRONLINK_DESC"}]
-
-
-
[{oxmultilang ident="D3_ORDERMANAGER_SET_CRON_LASTEXEC"}]
diff --git a/src/Config/modcfg.yaml b/src/Config/modcfg.yaml
index 117cbd42..4b5268e2 100644
--- a/src/Config/modcfg.yaml
+++ b/src/Config/modcfg.yaml
@@ -34,3 +34,11 @@ services:
factory:
- 'D3\ModCfg\Application\Model\d3database'
- 'getInstance'
+
+ # d3filesystem
+ d3ox.ordermanager.D3\ModCfg\Application\Model\d3filesystem:
+ class: D3\ModCfg\Application\Model\d3filesystem
+ factory: 'oxNew'
+ shared: false
+ arguments:
+ - D3\ModCfg\Application\Model\d3filesystem
diff --git a/src/Config/ordermanager.yaml b/src/Config/ordermanager.yaml
index 41f8c9b8..9d677896 100644
--- a/src/Config/ordermanager.yaml
+++ b/src/Config/ordermanager.yaml
@@ -13,10 +13,11 @@
parameters:
D3\Ordermanager\Application\Model\d3ordermanagerlist.args.objectname:
+ D3\Ordermanager\Application\Model\d3ordermanager_configurationcheck.args.checktypes:
D3\Ordermanager\Application\Model\d3ordermanager_export.args.filename:
D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_cronUnavailableException.args.message:
D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_cronUnavailableException.args.code:
- D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException.args.message:
+ D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_smartyException.args.message:
services:
# ordermanager
@@ -35,6 +36,28 @@ services:
arguments:
- D3\Ordermanager\Application\Model\d3ordermanager_conf
+ # ordermanager_configurationcheck
+ D3\Ordermanager\Application\Model\d3ordermanager_configurationcheck:
+ class: D3\Ordermanager\Application\Model\d3ordermanager_configurationcheck
+ factory: 'oxNew'
+ shared: false
+ arguments:
+ - D3\Ordermanager\Application\Model\d3ordermanager_configurationcheck
+ - '@D3\Ordermanager\Application\Model\d3ordermanager_configurationcheck.args.ordermanager'
+ - '%D3\Ordermanager\Application\Model\d3ordermanager_configurationcheck.args.checktypes%'
+ D3\Ordermanager\Application\Model\d3ordermanager_configurationcheck.args.ordermanager:
+ synthetic: true
+ shared: false
+ public: false
+
+ # d3ordermanager_debugoutput
+ D3\Ordermanager\Application\Model\Output\d3ordermanager_debugoutput:
+ class: D3\Ordermanager\Application\Model\Output\d3ordermanager_debugoutput
+ factory: 'oxNew'
+ shared: false
+ arguments:
+ - D3\Ordermanager\Application\Model\Output\d3ordermanager_debugoutput
+
# ordermanagerlist
D3\Ordermanager\Application\Model\d3ordermanagerlist:
class: D3\Ordermanager\Application\Model\d3ordermanagerlist
@@ -133,7 +156,7 @@ services:
D3\Ordermanager\Application\Model\d3ordermanager_remark:
class: D3\Ordermanager\Application\Model\d3ordermanager_remark
factory: 'oxNew'
- shared: false
+ shared: true
arguments:
- D3\Ordermanager\Application\Model\d3ordermanager_remark
- @D3\Ordermanager\Application\Model\d3ordermanager_remark.args.ordermanager
@@ -243,6 +266,29 @@ services:
# shared: false
# public: false
+ # d3ordermanager_actionException
+ D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_actionException:
+ class: D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_actionException
+ factory: 'oxNew'
+ shared: false
+ arguments:
+ - D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_actionException
+ - '@D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_actionException.args.actionobject'
+ # arg #2 action object
+ D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_actionException.args.actionobject:
+ synthetic: true
+ shared: false
+ public: false
+
+ # d3ordermanager_smartyException
+ D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_smartyException:
+ class: D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_smartyException
+ factory: 'oxNew'
+ shared: false
+ arguments:
+ - D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_smartyException
+ - '%D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_smartyException.args.message%'
+
# d3ordermanager_requirementException
D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException:
class: D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException
@@ -250,8 +296,7 @@ services:
shared: false
arguments:
- D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException
- - '%D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException.args.message%'
- - @D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException.args.requirementobject
+ - '@D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException.args.requirementobject'
# arg #2 requirement object
D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException.args.requirementobject:
synthetic: true
@@ -272,6 +317,14 @@ services:
shared: false
public: false
+ # d3ordermanager_renderererrorhandler
+ D3\Ordermanager\Application\Model\d3ordermanager_renderererrorhandler:
+ class: D3\Ordermanager\Application\Model\d3ordermanager_renderererrorhandler
+ factory: 'oxNew'
+ shared: false
+ arguments:
+ - D3\Ordermanager\Application\Model\d3ordermanager_renderererrorhandler
+
D3\Ordermanager\tests\additional:
class: D3\Ordermanager\tests\additional
factory: 'oxNew'
@@ -361,4 +414,11 @@ services:
factory: 'oxNew'
shared: false
arguments:
- - D3\Ordermanager\Application\Controller\Admin\d3_cfg_ordermanageritem
\ No newline at end of file
+ - D3\Ordermanager\Application\Controller\Admin\d3_cfg_ordermanageritem
+
+ D3\Ordermanager\publicDir\d3_ordermanager_cron:
+ class: D3\Ordermanager\publicDir\d3_ordermanager_cron
+ factory: 'oxNew'
+ shared: true
+ arguments:
+ - D3\Ordermanager\publicDir\d3_ordermanager_cron
diff --git a/src/Config/ordermanager_actions.yaml b/src/Config/ordermanager_actions.yaml
index 70919326..95661629 100644
--- a/src/Config/ordermanager_actions.yaml
+++ b/src/Config/ordermanager_actions.yaml
@@ -145,6 +145,25 @@ services:
shared: false
public: false
+ D3\Ordermanager\Application\Model\Actions\d3ordermanager_action_getpdfdocuments:
+ class: D3\Ordermanager\Application\Model\Actions\d3ordermanager_action_getpdfdocuments
+ factory: 'oxNew'
+ shared: false
+ arguments:
+ - D3\Ordermanager\Application\Model\Actions\d3ordermanager_action_getpdfdocuments
+ - @D3\Ordermanager\Application\Model\Actions\d3ordermanager_action_getpdfdocuments.args.ordermanager
+ - @D3\Ordermanager\Application\Model\Actions\d3ordermanager_action_getpdfdocuments.args.order
+ # arg #1 ordermanager
+ D3\Ordermanager\Application\Model\Actions\d3ordermanager_action_getpdfdocuments.args.ordermanager:
+ synthetic: true
+ shared: false
+ public: false
+ # arg #1 ordermanager
+ D3\Ordermanager\Application\Model\Actions\d3ordermanager_action_getpdfdocuments.args.order:
+ synthetic: true
+ shared: false
+ public: false
+
D3\Ordermanager\Application\Model\Actions\d3ordermanager_action_exportlist:
class: D3\Ordermanager\Application\Model\Actions\d3ordermanager_action_exportlist
factory: 'oxNew'
diff --git a/src/Config/oxid.yaml b/src/Config/oxid.yaml
index 8262ccfc..fc6a2066 100644
--- a/src/Config/oxid.yaml
+++ b/src/Config/oxid.yaml
@@ -45,6 +45,14 @@ services:
- 'getSession'
shared: true
+ # lang
+ d3ox.ordermanager.OxidEsales\Eshop\Core\Language:
+ class: 'OxidEsales\Eshop\Core\Session'
+ factory:
+ - 'OxidEsales\Eshop\Core\Registry'
+ - 'getLang'
+ shared: true
+
# ViewConfig
d3ox.ordermanager.OxidEsales\Eshop\Core\ViewConfig:
class: 'OxidEsales\Eshop\Core\ViewConfig'
@@ -325,14 +333,6 @@ services:
- 'OxidEsales\Eshop\Application\Model\Remark'
shared: false
- # Language
- d3ox.ordermanager.OxidEsales\Eshop\Core\Language:
- class: 'OxidEsales\Eshop\Core\Language'
- factory: 'oxNew'
- arguments:
- - 'OxidEsales\Eshop\Core\Language'
- shared: false
-
# Field
d3ox.ordermanager.OxidEsales\Eshop\Core\Field:
class: 'OxidEsales\Eshop\Core\Field'
diff --git a/src/Config/packages.yaml b/src/Config/packages.yaml
index d24e9fff..d79b578e 100644
--- a/src/Config/packages.yaml
+++ b/src/Config/packages.yaml
@@ -44,4 +44,14 @@ services:
class: Html2Text\Html2Text
shared: false
arguments:
- - '%Html2Text\Html2Text.args.html%'
\ No newline at end of file
+ - '%Html2Text\Html2Text.args.html%'
+
+ d3.ordermanager.D3\OxidSqlLogger\OxidEsalesDatabase:
+ class: D3\OxidSqlLogger\OxidEsalesDatabase
+ shared: false
+
+ ReflectionClass:
+ class: ReflectionClass
+ shared: false
+ arguments:
+ - '@ReflectionClass.args.object'
diff --git a/src/Modules/Application/Model/d3_oxbasket_ordermanager.php b/src/Modules/Application/Model/d3_oxbasket_ordermanager.php
index 5b4dcfd2..977a83c6 100644
--- a/src/Modules/Application/Model/d3_oxbasket_ordermanager.php
+++ b/src/Modules/Application/Model/d3_oxbasket_ordermanager.php
@@ -239,6 +239,9 @@ class d3_oxbasket_ordermanager extends d3_oxbasket_ordermanager_parent
//P collect discount values for basket items which are discountable
if (!$oArticle->skipDiscounts()) {
$this->_oDiscountProductsPriceList->addToPriceList($oBasketPrice);
+ if (false === isset($this->_aDiscountedVats[$oBasketPrice->getVat()])) {
+ $this->_aDiscountedVats[$oBasketPrice->getVat()] = 0;
+ }
$this->_aDiscountedVats[$oBasketPrice->getVat()] += $oBasketPrice->getVatValue();
} else {
$this->_oNotDiscountedProductsPriceList->addToPriceList($oBasketPrice);
diff --git a/src/Modules/Application/Model/d3_oxemail_ordermanager.php b/src/Modules/Application/Model/d3_oxemail_ordermanager.php
index 3fa78c53..d0b2a528 100644
--- a/src/Modules/Application/Model/d3_oxemail_ordermanager.php
+++ b/src/Modules/Application/Model/d3_oxemail_ordermanager.php
@@ -21,15 +21,22 @@ use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ParameterNotFoundException;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\ModCfg\Application\Model\Log\d3LogInterface;
+use D3\Ordermanager\Application\Model\Actions\d3ordermanager_action_generatepdf;
+use D3\Ordermanager\Application\Model\Actions\d3ordermanager_action_getpdfdocuments;
use D3\Ordermanager\Application\Model\d3ordermanager;
use D3\Ordermanager\Application\Model\d3ordermanager_conf;
use D3\Ordermanager\Application\Model\d3ordermanager_pdfhandler;
use D3\ModCfg\Application\Model\Configuration\d3_cfg_mod;
use D3\ModCfg\Application\Model\Shopcompatibility\d3ShopCompatibilityAdapterHandler;
use D3\ModCfg\Application\Model\d3str;
+use D3\Ordermanager\Application\Model\d3ordermanager_renderererrorhandler;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_smartyException;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_templaterendererExceptionInterface;
+use D3\PdfDocuments\Application\Model\Interfaces\pdfdocumentsOrderInterface;
use Doctrine\DBAL\DBALException;
use Exception;
use Html2Text\Html2Text;
+use League\Flysystem\FileExistsException;
use OxidEsales\Eshop\Application\Model\Order;
use OxidEsales\Eshop\Application\Model\Shop;
use OxidEsales\Eshop\Application\Model\Remark;
@@ -48,6 +55,8 @@ use OxidEsales\Eshop\Core\Language;
use OxidEsales\Eshop\Core\Module\Module;
use OxidEsales\Eshop\Core\Registry;
use OxidEsales\Eshop\Core\UtilsView;
+use OxidEsales\EshopCommunity\Internal\Application\ContainerFactory;
+use Psr\Container\ContainerInterface;
use Smarty;
class d3_oxemail_ordermanager extends d3_oxemail_ordermanager_parent
@@ -97,8 +106,14 @@ class d3_oxemail_ordermanager extends d3_oxemail_ordermanager_parent
$this->_processViewArray();
- $this->setBody($oSmarty->fetch($this->_sOrderManagerInfoTemplate));
- $this->setAltBody($oSmarty->fetch($this->_sOrderManagerInfoPlainTemplate));
+ set_error_handler(
+ [d3GetModCfgDIC()->get(d3ordermanager_renderererrorhandler::class), 'd3HandleTemplateEngineErrors']
+ );
+
+ $this->d3OMsetBody($oSmarty->fetch($this->_sOrderManagerInfoTemplate));
+ $this->d3OMsetAltBody($oSmarty->fetch($this->_sOrderManagerInfoPlainTemplate));
+
+ restore_error_handler();
/** @var d3LogInterface $oLog */
$oLog = d3GetModCfgDIC()->get('d3.ordermanager.log');
@@ -113,7 +128,7 @@ class d3_oxemail_ordermanager extends d3_oxemail_ordermanager_parent
/** @var Language $oLang */
$oLang = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Language::class);
$sSubject = $oLang->translateString('D3_ORDERMANAGER_MAIL_ORDERSUBJECT', 0);
- $this->setSubject($sSubject);
+ $this->d3OMsetSubject($sSubject);
$sFullName = $oShop->__get('oxshops__oxname')->getRawValue();
$this->setRecipient($oShop->getFieldData('oxinfoemail'), $sFullName);
@@ -176,9 +191,9 @@ class d3_oxemail_ordermanager extends d3_oxemail_ordermanager_parent
$aContent = $this->getOrderManagerMailContent($oOrderManager);
$oShop = $this->_getShop();
- $this->setBody($aContent['html']);
- $this->setAltBody($aContent['plain']);
- $this->setSubject($aContent['subject']);
+ $this->d3OMsetBody($aContent['html']);
+ $this->d3OMsetAltBody($aContent['plain']);
+ $this->d3OMsetSubject($aContent['subject']);
$this->_d3SetOrderManagerReplyAddress($oOrderManager, $oShop);
@@ -195,6 +210,48 @@ class d3_oxemail_ordermanager extends d3_oxemail_ordermanager_parent
return $blSuccess;
}
+ /**
+ * @param $content
+ *
+ * @throws d3ordermanager_smartyException
+ */
+ protected function d3OMsetBody($content)
+ {
+ $this->setBody($content);
+
+ if ((bool) strlen($content) && false === (bool) strlen($this->getBody())) {
+ $this->throwUnequalContentException();
+ }
+ }
+
+ /**
+ * @param $content
+ *
+ * @throws d3ordermanager_smartyException
+ */
+ protected function d3OMsetAltBody($content)
+ {
+ $this->setAltBody($content);
+
+ if ((bool) strlen($content) && false === (bool) strlen($this->getAltBody())) {
+ $this->throwUnequalContentException();
+ }
+ }
+
+ /**
+ * @param $content
+ *
+ * @throws d3ordermanager_smartyException
+ */
+ protected function d3OMsetSubject($content)
+ {
+ $this->setSubject($content);
+
+ if ((bool) strlen($content) && false === (bool) strlen($this->getSubject())) {
+ $this->throwUnequalContentException();
+ }
+ }
+
/**
* @param Shop $oShop
*
@@ -224,7 +281,7 @@ class d3_oxemail_ordermanager extends d3_oxemail_ordermanager_parent
protected function _d3getOrderManagerMailOption($sVarName)
{
$aEditedValues = $this->oOrderManager->getEditedValues();
- return $aEditedValues[$sVarName] === false || $aEditedValues[$sVarName] === null ?
+ return false === isset($aEditedValues[$sVarName]) || $aEditedValues[$sVarName] === false || $aEditedValues[$sVarName] === null ?
$this->oOrderManager->getValue($sVarName) :
$aEditedValues[$sVarName];
}
@@ -317,13 +374,14 @@ class d3_oxemail_ordermanager extends d3_oxemail_ordermanager_parent
* @throws d3ShopCompatibilityAdapterException
* @throws d3_cfg_mod_exception
* @throws Exception
+ * @throws d3ordermanager_templaterendererExceptionInterface
*/
public function getOrderManagerMailContent(d3ordermanager $oOrderManager)
{
$this->oOrderManager = $oOrderManager;
$aContent = array();
- $blTplFromAdmin = $oOrderManager->getValue('sSendMailFromTheme') == 'admin' ? true : false;
+ $blTplFromAdmin = $oOrderManager->getValue('sSendMailFromTheme') == 'admin';
$oConfig = $this->d3GetConfig();
$oConfig->setAdminMode($blTplFromAdmin);
@@ -338,7 +396,7 @@ class d3_oxemail_ordermanager extends d3_oxemail_ordermanager_parent
$oBasket = $oOrderManager->getCurrentItem()->d3getOrderBasket4OrderManager($oOrderManager);
$oPayment = $this->d3GetPayment();
- $oPayment->load($oBasket->getPaymentId());
+ $oPayment->loadInLang($this->oOrderManager->getCurrentItem()->getFieldData('oxlang'), $oBasket->getPaymentId());
$oOrderManager->getCurrentItem()->d3setBasket4OrderManager($oBasket);
$oOrderManager->getCurrentItem()->d3setPayment4OrderManager($oPayment);
@@ -417,7 +475,7 @@ class d3_oxemail_ordermanager extends d3_oxemail_ordermanager_parent
$sPath = $this->getD3Str()->untrailingslashit($sModulePath);
} else {
- $blAdmin = $oOrderManager->getValue('sSendMailFromTheme') == 'admin' ? true : false;
+ $blAdmin = $oOrderManager->getValue('sSendMailFromTheme') == 'admin';
$sPath = $this->d3GetConfig()->getTemplateDir($blAdmin);
}
return $sPath;
@@ -465,6 +523,7 @@ class d3_oxemail_ordermanager extends d3_oxemail_ordermanager_parent
* @return mixed
* @throws d3ParameterNotFoundException
* @throws Exception
+ * @throws d3ordermanager_templaterendererExceptionInterface
*/
protected function _d3GenerateOrderManagerMailContent($aContent, Smarty $oSmarty)
{
@@ -477,6 +536,14 @@ class d3_oxemail_ordermanager extends d3_oxemail_ordermanager_parent
$oLang->setTplLanguage($iOrderLangId);
$oLang->setBaseLanguage($iOrderLangId);
+ $iCurrentCurrency = Registry::getConfig()->getShopCurrency();
+ $iOrderCurr = $this->oOrderManager->getCurrentItem()->getOrderCurrency()->id;
+ Registry::getConfig()->setActShopCurrency($iOrderCurr);
+
+ set_error_handler(
+ [d3GetModCfgDIC()->get(d3ordermanager_renderererrorhandler::class), 'd3HandleTemplateEngineErrors']
+ );
+
if ($this->d3HasOrderManagerEditorMailContent($aEditedValues)) {
$aContent = $aEditedValues['mail'];
@@ -485,10 +552,8 @@ class d3_oxemail_ordermanager extends d3_oxemail_ordermanager_parent
}
} elseif ($this->oOrderManager->getValue('sSendMailFromSource') == 'cms') {
$oUtilsView = $this->d3GetUtilsView();
- /** @var $oContent Content */
$oContent = $this->d3GetContent();
- $oContent->setLanguage($iOrderLangId);
- $oContent->load($this->oOrderManager->getValue('sSendMailFromContentname'));
+ $oContent->loadInLang($iOrderLangId, $this->oOrderManager->getValue('sSendMailFromContentname'));
$aContent['html'] = $oUtilsView->parseThroughSmarty(
$oContent->getFieldData('oxcontent'),
@@ -496,7 +561,7 @@ class d3_oxemail_ordermanager extends d3_oxemail_ordermanager_parent
);
$aContent['subject'] = $oContent->getFieldData('oxtitle');
- $oContent->load($this->oOrderManager->getValue('sSendMailFromContentnamePlain'));
+ $oContent->loadInLang($iOrderLangId, $this->oOrderManager->getValue('sSendMailFromContentnamePlain'));
$aContent['plain'] = $oUtilsView->parseThroughSmarty(
$oContent->getFieldData('oxcontent'),
$oContent->getId() . 'oxcontent'
@@ -507,8 +572,11 @@ class d3_oxemail_ordermanager extends d3_oxemail_ordermanager_parent
$aContent['subject'] = $oSmarty->fetch($this->oOrderManager->getValue('sSendMailFromSubject'));
}
+ restore_error_handler();
+
$oLang->setTplLanguage($iCurrentTplLang);
$oLang->setBaseLanguage($iCurrentBaseLang);
+ Registry::getConfig()->setActShopCurrency($iCurrentCurrency);
return $aContent;
}
@@ -536,7 +604,7 @@ class d3_oxemail_ordermanager extends d3_oxemail_ordermanager_parent
*/
public function isArrayEditorMailContent($aEditedValues)
{
- return is_array($aEditedValues) && is_array($aEditedValues['mail']);
+ return is_array($aEditedValues) && isset($aEditedValues['mail']) && is_array($aEditedValues['mail']);
}
/**
@@ -603,7 +671,7 @@ class d3_oxemail_ordermanager extends d3_oxemail_ordermanager_parent
*
* @return Remark
* @throws d3ParameterNotFoundException
- * @throws \Exception
+ * @throws Exception
*/
protected function _d3sendOrderManagerMailToOwner(Shop $oShop)
{
@@ -693,26 +761,87 @@ class d3_oxemail_ordermanager extends d3_oxemail_ordermanager_parent
{
$oPDFHandler = $this->d3GetPdfHandler($oOrderManager);
- if ($oOrderManager->getValue('blActionOrderGeneratePdf_status')
+ $this->addOXIDPdfAttachment($oOrderManager, $oPDFHandler);
+ $this->addPdfDocumentsAttachment($oOrderManager, $oPDFHandler);
+ }
+
+ /**
+ * @param d3ordermanager $oOrderManager
+ * @param d3ordermanager_pdfhandler $oPDFHandler
+ *
+ * @throws FileExistsException
+ */
+ public function addOXIDPdfAttachment(d3ordermanager $oOrderManager, d3ordermanager_pdfhandler $oPDFHandler)
+ {
+ d3GetModCfgDIC()->set(
+ d3ordermanager_action_generatepdf::class.'.args.ordermanager',
+ d3GetModCfgDIC()->get(d3ordermanager::class)
+ );
+ d3GetModCfgDIC()->set(
+ d3ordermanager_action_generatepdf::class.'.args.order',
+ d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class)
+ );
+
+ /** @var d3ordermanager_action_generatepdf $action */
+ $action = d3GetModCfgDIC()->get(d3ordermanager_action_generatepdf::class);
+
+ if ($oOrderManager->getValue($action->getActiveSwitchParameter())
&& $oOrderManager->getValue('blActionOrderPdfSendAttach')
- && $oPDFHandler->canGeneratePdf()
+ && $oPDFHandler->canGenerateOxidPdf()
) {
if ($oOrderManager->getValue('blActionOrderPdfTypeInvoice')) {
- $oPDFHandler->createPdf(d3ordermanager_conf::D3_ORDERMANAGER_PDFTYPE_INVOICE, d3ordermanager_conf::D3_ORDERMANAGER_PDFSENDTYPE_ATTACH);
- $sFileName = $oPDFHandler->getPdfFileName(d3ordermanager_conf::D3_ORDERMANAGER_PDFTYPE_INVOICE);
- $sFilePath = $oPDFHandler->getPdfSaveDir(d3ordermanager_conf::D3_ORDERMANAGER_PDFSENDTYPE_ATTACH) . $sFileName;
+ $oPDFHandler->createOxidPdf(d3ordermanager_conf::D3_ORDERMANAGER_PDFTYPE_INVOICE, d3ordermanager_conf::D3_ORDERMANAGER_PDFSENDTYPE_ATTACH);
+ $sFileName = $oPDFHandler->getOxidPdfFileName(d3ordermanager_conf::D3_ORDERMANAGER_PDFTYPE_INVOICE);
+ $sFilePath = $oPDFHandler->getOxidPdfSaveDir(d3ordermanager_conf::D3_ORDERMANAGER_PDFSENDTYPE_ATTACH) . $sFileName;
$this->addAttachment($sFilePath, $sFileName, 'base64', 'application/pdf');
}
if ($oOrderManager->getValue('blActionOrderPdfTypeDelnote')) {
- $oPDFHandler->createPdf(d3ordermanager_conf::D3_ORDERMANAGER_PDFTYPE_DELIVERYNOTE, d3ordermanager_conf::D3_ORDERMANAGER_PDFSENDTYPE_ATTACH);
- $sFileName = $oPDFHandler->getPdfFileName(d3ordermanager_conf::D3_ORDERMANAGER_PDFTYPE_DELIVERYNOTE);
- $sFilePath = $oPDFHandler->getPdfSaveDir(d3ordermanager_conf::D3_ORDERMANAGER_PDFSENDTYPE_ATTACH) . $sFileName;
+ $oPDFHandler->createOxidPdf(d3ordermanager_conf::D3_ORDERMANAGER_PDFTYPE_DELIVERYNOTE, d3ordermanager_conf::D3_ORDERMANAGER_PDFSENDTYPE_ATTACH);
+ $sFileName = $oPDFHandler->getOxidPdfFileName(d3ordermanager_conf::D3_ORDERMANAGER_PDFTYPE_DELIVERYNOTE);
+ $sFilePath = $oPDFHandler->getOxidPdfSaveDir(d3ordermanager_conf::D3_ORDERMANAGER_PDFSENDTYPE_ATTACH) . $sFileName;
$this->addAttachment($sFilePath, $sFileName, 'base64', 'application/pdf');
}
}
}
+ /**
+ * @param d3ordermanager $oOrderManager
+ * @param d3ordermanager_pdfhandler $oPDFHandler
+ *
+ * @throws FileExistsException
+ */
+ public function addPdfDocumentsAttachment(d3ordermanager $oOrderManager, d3ordermanager_pdfhandler $oPDFHandler)
+ {
+ d3GetModCfgDIC()->set(
+ d3ordermanager_action_getpdfdocuments::class.'.args.ordermanager',
+ $oOrderManager
+ );
+
+ d3GetModCfgDIC()->set(
+ d3ordermanager_action_getpdfdocuments::class.'.args.order',
+ $oOrderManager->getCurrentItem()
+ );
+
+ /** @var d3ordermanager_action_getpdfdocuments $action */
+ $action = d3GetModCfgDIC()->get(d3ordermanager_action_getpdfdocuments::class);
+
+ if ($oOrderManager->getValue($action->getActiveSwitchParameter())
+ && $oOrderManager->getValue('blActionOrderPdfDocumentSendAttach')
+ && $oPDFHandler->canGeneratePdfDocuments()
+ ) {
+ /** @var pdfdocumentsOrderInterface $document */
+ foreach ($action->getDocumentList() as $document) {
+ if ($oOrderManager->getValue($action->getDocumentRequestId($document))) {
+ $document->setOrder($action->getOrder());
+ $oPDFHandler->createPdfDocument($document, d3ordermanager_conf::D3_ORDERMANAGER_PDFSENDTYPE_ATTACH);
+ $sFilePath = $oPDFHandler->getOxidPdfSaveDir(d3ordermanager_conf::D3_ORDERMANAGER_PDFSENDTYPE_ATTACH).$document->getFilename();
+ $this->addAttachment($sFilePath, $document->getFilename(), 'base64', 'application/pdf');
+ }
+ }
+ }
+ }
+
/**
* @param d3ordermanager $oOrderManager
* @param Shop $oShop
@@ -734,13 +863,14 @@ class d3_oxemail_ordermanager extends d3_oxemail_ordermanager_parent
* add user history
* @return Remark
* @throws d3ParameterNotFoundException
- * @throws \Exception
+ * @throws Exception
*/
public function d3generateRemark() {
$oRemark = $this->d3GetRemark();
$aRemarkContent = array(
'oxtext' => $this->d3getRemarkText(),
- 'oxparentid' => $this->oOrderManager->getCurrentItem()->getOrderUser()->getId(),
+ 'oxparentid' => $this->oOrderManager->getCurrentItem()->getOrderUser()->getId() ? :
+ $this->oOrderManager->getCurrentItem()->getId(),
'oxtype' => 'd3om',
);
$oRemark->assign( $aRemarkContent );
@@ -765,4 +895,26 @@ class d3_oxemail_ordermanager extends d3_oxemail_ordermanager_parent
]
);
}
+
+ /**
+ * @return ContainerInterface
+ */
+ public function d3getOrderManagerDIContainer()
+ {
+ return ContainerFactory::getInstance()->getContainer();
+ }
+
+ /**
+ * @throws d3ordermanager_smartyException
+ */
+ protected function throwUnequalContentException()
+ {
+ d3GetModCfgDIC()->setParameter(
+ d3ordermanager_smartyException::class . '.args.message',
+ 'empty mail content, possible file encoding error'
+ );
+ /** @var d3ordermanager_smartyException $e */
+ $e = d3GetModCfgDIC()->get( d3ordermanager_smartyException::class );
+ throw $e;
+ }
}
diff --git a/src/Modules/Application/Model/d3_oxorder_ordermanager.php b/src/Modules/Application/Model/d3_oxorder_ordermanager.php
index 04fa0306..2df5a238 100644
--- a/src/Modules/Application/Model/d3_oxorder_ordermanager.php
+++ b/src/Modules/Application/Model/d3_oxorder_ordermanager.php
@@ -17,14 +17,18 @@
namespace D3\Ordermanager\Modules\Application\Model;
+use D3\ModCfg\Application\Model\Configuration\d3_cfg_mod;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ParameterNotFoundException;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
-use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\d3ordermanager as Manager;
use D3\Ordermanager\Application\Model\d3ordermanager_conf;
+use D3\Ordermanager\Application\Model\d3ordermanager_configurationcheck;
use D3\Ordermanager\Application\Model\d3ordermanager_execute;
use D3\Ordermanager\Application\Model\d3ordermanager_pdfhandler;
use D3\Ordermanager\Application\Model\d3ordermanagerlist;
+use D3\Ordermanager\Application\Model\Exceptions\d3ActionRequirementAbstract;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_templaterendererExceptionInterface;
use Doctrine\DBAL\DBALException;
use Exception;
use InvoicepdfPDF;
@@ -34,13 +38,15 @@ use OxidEsales\Eshop\Application\Model\OrderArticle;
use OxidEsales\Eshop\Application\Model\Basket;
use OxidEsales\Eshop\Application\Model\Payment;
use OxidEsales\Eshop\Application\Model\Voucher;
+use OxidEsales\Eshop\Core\Config;
use OxidEsales\Eshop\Core\Exception\ArticleException;
use OxidEsales\Eshop\Core\Exception\ArticleInputException;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\NoArticleException;
use OxidEsales\Eshop\Core\Exception\StandardException;
-use OxidEsales\Eshop\Core\Model\ListModel;
+use OxidEsales\Eshop\Core\Registry;
+use OxidEsales\Eshop\Core\UtilsView;
use oxnoarticleexception;
class d3_oxorder_ordermanager extends d3_oxorder_ordermanager_parent
@@ -49,6 +55,9 @@ class d3_oxorder_ordermanager extends d3_oxorder_ordermanager_parent
protected $_oPayment = null;
protected $_iSelectedLang;
+ CONST PREVENTION_FINALIZEORDER = 'd3PreventOMFinalizeOrderTrigger';
+ CONST PREVENTION_SAVEORDER = 'd3PreventOMSaveOrderTrigger';
+
/**
* @param string $sName
*
@@ -103,11 +112,13 @@ class d3_oxorder_ordermanager extends d3_oxorder_ordermanager_parent
*/
public function d3GetVoucher()
{
- return d3GetModCfgDIC()->get('d3ox.ordermanager.'.Voucher::class);
+ /** @var Voucher $return */
+ $return = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Voucher::class);
+ return $return;
}
/**
- * @param d3ordermanager $oOrderManager
+ * @param Manager $oOrderManager
* @return Basket
* @throws ArticleException
* @throws ArticleInputException
@@ -116,7 +127,7 @@ class d3_oxorder_ordermanager extends d3_oxorder_ordermanager_parent
* @throws oxNoArticleException
* @throws Exception
*/
- public function d3getOrderBasket4OrderManager(d3ordermanager $oOrderManager)
+ public function d3getOrderBasket4OrderManager(Manager $oOrderManager)
{
$this->reloadDelivery(false);
// reload discount to true, because there is no voucher list in basket
@@ -124,12 +135,9 @@ class d3_oxorder_ordermanager extends d3_oxorder_ordermanager_parent
/** @var $oBasket d3_oxbasket_ordermanager */
$oBasket = $this->_getOrderBasket(false);
- /** @var $oOrderArticles ListModel */
- if ($oOrderManager->getValue('blGetStornoArticles')) {
- $oOrderArticles = $this->getOrderArticles(false);
- } else {
- $oOrderArticles = $this->getOrderArticles(true);
- }
+ $oOrderArticles = $this->getOrderArticles(
+ false === (bool) $oOrderManager->getValue('blGetStornoArticles')
+ );
// if no order articles, return empty basket
if ($oOrderArticles->count() > 0) {
@@ -160,7 +168,7 @@ class d3_oxorder_ordermanager extends d3_oxorder_ordermanager_parent
{
d3GetModCfgDIC()->set(
d3ordermanager_pdfhandler::class.'.args.ordermanager',
- d3GetModCfgDIC()->get(d3ordermanager::class)
+ d3GetModCfgDIC()->get(Manager::class)
);
d3GetModCfgDIC()->set(
d3ordermanager_pdfhandler::class.'.args.order',
@@ -200,7 +208,7 @@ class d3_oxorder_ordermanager extends d3_oxorder_ordermanager_parent
}
$oPdfHandler = $this->d3GetPdfHandler();
- if ($oPdfHandler->canGeneratePdf()) {
+ if ($oPdfHandler->canGenerateOxidPdf()) {
$oPdf = $this->d3GetInvoicePdf();
$oPdf->setPrintHeader(false);
@@ -237,21 +245,50 @@ class d3_oxorder_ordermanager extends d3_oxorder_ordermanager_parent
{
$iRet = parent::finalizeOrder($oBasket, $oUser, $blRecalculatingOrder);
- $oOrderManagerList = d3GetModCfgDIC()->get(d3ordermanagerlist::class);
- /** @var d3ordermanager $oManager */
- foreach ($oOrderManagerList->d3GetOrderFinishTriggeredManagerTasks() as $oManager) {
- /** @var d3ordermanager_execute $oManagerExecute */
- $oManagerExecute = $this->getManagerExecute($oManager);
- if ($oManagerExecute->orderMeetsConditions($this->getId())) {
- $oManagerExecute->exec4order($this->getId(), d3ordermanager_conf::EXECTYPE_ORDERFINISHTRIGGERED);
+ /** @var d3_cfg_mod $oSet */
+ $oSet = d3GetModCfgDIC()->get('d3.ordermanager.modcfg');
+ $currentAdminMode = $this->isAdmin();
+
+ if ($oSet->isActive() && in_array(Registry::getSession()->getVariable(self::PREVENTION_FINALIZEORDER), [null, false], true)) {
+ /** @var d3ordermanagerlist $oOrderManagerList */
+ $oOrderManagerList = d3GetModCfgDIC()->get(d3ordermanagerlist::class);
+ /** @var Manager $oManager */
+ foreach ($oOrderManagerList->d3GetOrderFinishTriggeredManagerTasks() as $oManager) {
+ try {
+ $this->d3OrderManagerCheckForConfigurationException($oManager);
+
+ $oManagerExecute = $this->d3OrdermanagerGetManagerExecute($oManager);
+ if ($oManagerExecute->orderMeetsConditions($this->getId())) {
+ // prevent infinit loop because of circular reference in recalculate::method
+ Registry::getSession()->setVariable(self::PREVENTION_FINALIZEORDER, true);
+ $oManagerExecute->exec4order($this->getId(), d3ordermanager_conf::EXECTYPE_ORDERFINISHTRIGGERED);
+ }
+ } catch (d3ActionRequirementAbstract $e) {
+ $e->debugOut();
+ if (true === $currentAdminMode) {
+ /** @var UtilsView $utilsView */
+ $utilsView = d3GetModCfgDIC()->get('d3ox.ordermanager.' . UtilsView::class);
+ $utilsView->addErrorToDisplay($e);
+ }
+ } catch (d3ordermanager_templaterendererExceptionInterface $e) {
+ $e->debugOut();
+ if (true === $currentAdminMode) {
+ /** @var UtilsView $utilsView */
+ $utilsView = d3GetModCfgDIC()->get('d3ox.ordermanager.' . UtilsView::class);
+ $utilsView->addErrorToDisplay($e);
+ }
+ } finally {
+ Registry::getSession()->setVariable(self::PREVENTION_FINALIZEORDER, false);
+ $oConfig = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Config::class);
+ $oConfig->setAdminMode($currentAdminMode);
+ }
}
- };
+ }
return $iRet;
}
/**
- * @return bool
* @throws d3ParameterNotFoundException
* @throws d3ShopCompatibilityAdapterException
* @throws d3_cfg_mod_exception
@@ -263,27 +300,57 @@ class d3_oxorder_ordermanager extends d3_oxorder_ordermanager_parent
*/
public function save()
{
- $blSave = parent::save();
+ $ret = parent::save();
- $oOrderManagerList = d3GetModCfgDIC()->get(d3ordermanagerlist::class);
- /** @var d3ordermanager $oManager */
- foreach ($oOrderManagerList->d3GetOrderSaveTriggeredManagerTasks() as $oManager) {
- /** @var d3ordermanager_execute $oManagerExecute */
- $oManagerExecute = $this->getManagerExecute($oManager);
- if ($oManagerExecute->orderMeetsConditions($this->getId())) {
- $oManagerExecute->exec4order($this->getId(), d3ordermanager_conf::EXECTYPE_ORDERSAVETRIGGERED);
+ /** @var d3_cfg_mod $oSet */
+ $oSet = d3GetModCfgDIC()->get('d3.ordermanager.modcfg');
+ $currentAdminMode = $this->isAdmin();
+
+ if ($oSet->isActive() && in_array(Registry::getSession()->getVariable(self::PREVENTION_SAVEORDER), [null, false], true)) {
+ /** @var d3ordermanagerlist $oOrderManagerList */
+ $oOrderManagerList = d3GetModCfgDIC()->get(d3ordermanagerlist::class);
+ /** @var Manager $oManager */
+ foreach ($oOrderManagerList->d3GetOrderSaveTriggeredManagerTasks() as $oManager) {
+ try {
+ $this->d3OrderManagerCheckForConfigurationException($oManager);
+
+ $oManagerExecute = $this->d3OrdermanagerGetManagerExecute($oManager);
+ if ($oManagerExecute->orderMeetsConditions($this->getId())) {
+ // prevent infinit loop because of circular reference in save::method
+ Registry::getSession()->setVariable(self::PREVENTION_SAVEORDER, true);
+ $oManagerExecute->exec4order($this->getId(), d3ordermanager_conf::EXECTYPE_ORDERSAVETRIGGERED);
+ }
+ } catch (d3ActionRequirementAbstract $e) {
+ $e->debugOut();
+ if (true === $currentAdminMode) {
+ /** @var UtilsView $utilsView */
+ $utilsView = d3GetModCfgDIC()->get('d3ox.ordermanager.' . UtilsView::class);
+ $utilsView->addErrorToDisplay($e);
+ }
+ } catch (d3ordermanager_templaterendererExceptionInterface $e) {
+ $e->debugOut();
+ if (true === $currentAdminMode) {
+ /** @var UtilsView $utilsView */
+ $utilsView = d3GetModCfgDIC()->get('d3ox.ordermanager.' . UtilsView::class);
+ $utilsView->addErrorToDisplay($e);
+ }
+ } finally {
+ Registry::getSession()->setVariable(self::PREVENTION_SAVEORDER, false);
+ $oConfig = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Config::class);
+ $oConfig->setAdminMode($currentAdminMode);
+ }
}
- };
+ }
- return $blSave;
+ return $ret;
}
/**
- * @param d3ordermanager $oManager
+ * @param Manager $oManager
* @return d3ordermanager_execute
* @throws Exception
*/
- public function getManagerExecute(d3ordermanager $oManager)
+ public function d3OrdermanagerGetManagerExecute(Manager $oManager)
{
d3GetModCfgDIC()->set(
d3ordermanager_execute::class.'.args.ordermanager',
@@ -307,4 +374,22 @@ class d3_oxorder_ordermanager extends d3_oxorder_ordermanager_parent
$this->exportStandart( $oPdf );
}
}
+
+ /**
+ * @param Manager $oManager
+ * @throws d3ActionRequirementAbstract
+ */
+ protected function d3OrderManagerCheckForConfigurationException(Manager $oManager)
+ {
+ d3GetModCfgDIC()->set(d3ordermanager_configurationcheck::class.'.args.ordermanager', $oManager);
+ d3GetModCfgDIC()->setParameter(
+ d3ordermanager_configurationcheck::class.'.args.checktypes',
+ $oManager->getValue('sManuallyExecMeetCondition') ?
+ d3ordermanager_configurationcheck::REQUIREMENTS_AND_ACTIONS :
+ d3ordermanager_configurationcheck::ACTIONS_ONLY
+ );
+ /** @var d3ordermanager_configurationcheck $confCheck */
+ $confCheck = d3GetModCfgDIC()->get(d3ordermanager_configurationcheck::class);
+ $confCheck->checkThrowingExceptions();
+ }
}
diff --git a/src/Modules/Application/Model/d3_oxuser_ordermanager.php b/src/Modules/Application/Model/d3_oxuser_ordermanager.php
index d7dadd19..39f2245b 100644
--- a/src/Modules/Application/Model/d3_oxuser_ordermanager.php
+++ b/src/Modules/Application/Model/d3_oxuser_ordermanager.php
@@ -19,16 +19,16 @@ namespace D3\Ordermanager\Modules\Application\Model;
class d3_oxuser_ordermanager extends d3_oxuser_ordermanager_parent
{
/**
- * @param string $sName
+ * @param string $sParamName
*
* @return mixed
*/
- public function __get($sName)
+ public function __get($sParamName)
{
- $mContent = parent::__get($sName);
+ $mContent = parent::__get($sParamName);
- if (false == $mContent && $this->{$sName}) {
- return $this->{$sName};
+ if (false == $mContent && $this->{$sParamName}) {
+ return $this->{$sParamName};
}
return $mContent;
diff --git a/src/Setup/d3ordermanager_update.php b/src/Setup/d3ordermanager_update.php
index d2655cf7..1bfc3eaa 100644
--- a/src/Setup/d3ordermanager_update.php
+++ b/src/Setup/d3ordermanager_update.php
@@ -17,8 +17,10 @@
namespace D3\Ordermanager\Setup;
+use D3\ModCfg\Application\Model\Configuration\d3_cfg_mod;
use D3\ModCfg\Application\Model\d3bitmask;
use D3\ModCfg\Application\Model\d3database;
+use D3\ModCfg\Application\Model\d3str;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ParameterNotFoundException;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
@@ -32,6 +34,7 @@ use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
use OxidEsales\Eshop\Application\Model\Shop;
+use OxidEsales\Eshop\Core\Registry;
use OxidEsales\Facts\Facts;
use Doctrine\DBAL\Driver\PDOException;
use ReflectionException;
@@ -41,19 +44,19 @@ class d3ordermanager_update extends d3install_updatebase
{
public $sModKey = 'd3_ordermanager';
public $sModName = 'Auftragsmanager';
- public $sModVersion = '3.2.0.3';
- public $sModRevision = '3203';
+ public $sModVersion = '3.3.1.0';
+ public $sModRevision = '3310';
public $sBaseConf =
- 'BP6v2==aCtrMEpxREVwazFHNHRvbnNGTnZVQkV6cllnQVlHMWxORzRWN3BPMlU0c1Z5T0VtVGs4a2pBU
-UZXZEMvYmlLK1p2UGNsL20wS1VsUUZYRm4yM1hoc3IxTjJvUGg4QVViVmpZNDhwRENDL1FLcjJrbWNYd
-mtXVTVSTDAzQXB1R3dnSEZ3bDVlYXhNUVRqMzgrVHpzVEZyWHNCYmJTL0JwQWpNU1A2TnJoNkhtSE9ne
-VdIYVZkMFYyVk13SXR4SzhXbks3a1ZUOUd2Rm81VTBqRkVOazI4OVhHMHBka1BKd3QwbFdDd0ZTVktTU
-ncxQlVpRVV0TWpzanRiV1g4YnZvYXI2Vm1RUittZkF3VE1id2Qwc2NaRjR6RGI1WjBsNExoOHNZTU9DL
-2FiV3pTc29jSWxZN2hKa3hiYml4WUVCencxRDljRmFCVzZPRVJ5TldYSWVpMENBPT0=';
+ 'YHhv2==dHJyQ20xMlhLQlEydllmbkt6ZnczWUczTjhSeTJsMk1HYU5aNk1pbE9rRWpUQUNmU1JUKzJXY
+zFGSmxDZjRmMXQ4eHFmalR0Wi9RclEyR3l6NjVoQzNRcUx4ams2THRrUzA2M1FTRmFFOThuUElwbVU4Z
+GZtcWQwMzMwakFLWmJCY1F0ZFRUVkdSeTlZZ0ErSGJaT0lKMEFMOXdhNWJkV0RHZG9KOVhpeEs5Sk1ue
+nZnSGhmKzVIMk1GYkN2VlcvY04yYTROTlZ2K01BbVZ4cG50T2x0cWxvRjhVUEtNTHdncWgvUmZPczFTM
+C9iUWNDR2ZsUzl3N2RKaVZ6V0UvbU9LOUpjeTdVVmJyMTBKN2NoekhKeFNFSWR0NHRZdUZjaE9xQlc0Z
+1QvZFZtaWVuWTZQbGRab1NvNzdSVXU0c29kUTFrZmJqOEttSWU0WnZqSG9kWXZBPT0=';
public $sRequirements = '';
- public $sBaseValue = 'TyUzQTglM0ElMjJzdGRDbGFzcyUyMiUzQTQlM0ElN0JzJTNBMjMlM0ElMjJkM19jZmdfbW9kX19hRm9sZGVyTGlzdCUyMiUzQmElM0E1JTNBJTdCaSUzQTAlM0JzJTNBMjUlM0ElMjJEM19PUkRFUk1BTkFHRVJfT1JERVJfTkVXJTIyJTNCaSUzQTElM0JzJTNBMzIlM0ElMjJEM19PUkRFUk1BTkFHRVJfT1JERVJfUEFZQURWQU5DRSUyMiUzQmklM0EyJTNCcyUzQTM2JTNBJTIyRDNfT1JERVJNQU5BR0VSX09SREVSX1BBWVNUQVRVU0NIRUNLJTIyJTNCaSUzQTMlM0JzJTNBMzYlM0ElMjJEM19PUkRFUk1BTkFHRVJfT1JERVJfREVMSVZFUllTVEFUVVMlMjIlM0JpJTNBNCUzQnMlM0EzNyUzQSUyMkQzX09SREVSTUFOQUdFUl9PUkRFUl9PUkRFUlBST0NFU1NJTkclMjIlM0IlN0RzJTNBMjQlM0ElMjJkM19jZmdfbW9kX19ibENyb25BY3RpdmUlMjIlM0JzJTNBMSUzQSUyMjAlMjIlM0JzJTNBMjQlM0ElMjJkM19jZmdfbW9kX19pTWF4T3JkZXJDbnQlMjIlM0JzJTNBMiUzQSUyMjUwJTIyJTNCcyUzQTI1JTNBJTIyZDNfY2ZnX21vZF9fc0Nyb25QYXNzd29yZCUyMiUzQnMlM0E4JTNBJTIyNW5kYnJCM1IlMjIlM0IlN0Q=';
+ public $sBaseValue = 'TyUzQTglM0ElMjJzdGRDbGFzcyUyMiUzQTUlM0ElN0JzJTNBMjMlM0ElMjJkM19jZmdfbW9kX19hRm9sZGVyTGlzdCUyMiUzQmElM0E1JTNBJTdCaSUzQTAlM0JzJTNBMjUlM0ElMjJEM19PUkRFUk1BTkFHRVJfT1JERVJfTkVXJTIyJTNCaSUzQTElM0JzJTNBMzIlM0ElMjJEM19PUkRFUk1BTkFHRVJfT1JERVJfUEFZQURWQU5DRSUyMiUzQmklM0EyJTNCcyUzQTM2JTNBJTIyRDNfT1JERVJNQU5BR0VSX09SREVSX1BBWVNUQVRVU0NIRUNLJTIyJTNCaSUzQTMlM0JzJTNBMzYlM0ElMjJEM19PUkRFUk1BTkFHRVJfT1JERVJfREVMSVZFUllTVEFUVVMlMjIlM0JpJTNBNCUzQnMlM0EzNyUzQSUyMkQzX09SREVSTUFOQUdFUl9PUkRFUl9PUkRFUlBST0NFU1NJTkclMjIlM0IlN0RzJTNBMjQlM0ElMjJkM19jZmdfbW9kX19ibENyb25BY3RpdmUlMjIlM0JzJTNBMSUzQSUyMjAlMjIlM0JzJTNBMjQlM0ElMjJkM19jZmdfbW9kX19pTWF4T3JkZXJDbnQlMjIlM0JzJTNBMiUzQSUyMjUwJTIyJTNCcyUzQTI1JTNBJTIyZDNfY2ZnX21vZF9fc0Nyb25QYXNzd29yZCUyMiUzQnMlM0EwJTNBJTIyJTIyJTNCcyUzQTMwJTNBJTIyZDNfY2ZnX21vZF9fYmxDYWxjU3RhdE9uRGVtYW5kJTIyJTNCcyUzQTElM0ElMjIwJTIyJTNCJTdE';
- public $sMinModCfgVersion = '5.2.0.0';
+ public $sMinModCfgVersion = '5.3.6.0';
protected $_aUpdateMethods = array(
array('check' => 'doesOrder2OrderManagerTableNotExist',
@@ -66,6 +69,8 @@ ncxQlVpRVV0TWpzanRiV1g4YnZvYXI2Vm1RUittZkF3VE1id2Qwc2NaRjR6RGI1WjBsNExoOHNZTU9DL
'do' => 'fixIndizes'),
array('check' => 'checkOrderManagerTableExist',
'do' => 'convertOrderManagerItems'),
+ array('check' => 'checkCronPasswordSet',
+ 'do' => 'createCronPassword'),
array('check' => 'needExampleJobList',
'do' => 'addExampleJobList'),
array('check' => 'isExampleContentMissingInDatabase',
@@ -555,7 +560,8 @@ ncxQlVpRVV0TWpzanRiV1g4YnZvYXI2Vm1RUittZkF3VE1id2Qwc2NaRjR6RGI1WjBsNExoOHNZTU9DL
*/
public function d3GetConfig()
{
- return d3GetModCfgDIC()->get('d3ox.ordermanager.'.Config::class);
+ /** @var Config $config */
+ return $config = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Config::class);
}
/**
@@ -576,8 +582,8 @@ ncxQlVpRVV0TWpzanRiV1g4YnZvYXI2Vm1RUittZkF3VE1id2Qwc2NaRjR6RGI1WjBsNExoOHNZTU9DL
$blRet = $this->d3GetInstallDbRecord()->checkTableRecordNotExist('d3_cfg_mod', $aWhere);
- if ($blRet == true) {
- return $blRet;
+ if ($blRet === true) {
+ return true;
}
}
@@ -714,6 +720,45 @@ ncxQlVpRVV0TWpzanRiV1g4YnZvYXI2Vm1RUittZkF3VE1id2Qwc2NaRjR6RGI1WjBsNExoOHNZTU9DL
return $blRet;
}
+ /**
+ * @return bool true, if new password must set
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function checkCronPasswordSet()
+ {
+ $password = d3_cfg_mod::get($this->sModKey)->getValue('sCronPassword');
+ return false === $password || is_null($password) || (is_string($password) && strlen($password) <= 0);
+ }
+
+ /**
+ * @return bool
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ */
+ public function createCronPassword()
+ {
+ $message = Registry::getLang()->translateString('D3_ORDERMANAGER_SETUP_CRONPASSWORD') . PHP_EOL.PHP_EOL;
+ $this->setActionLog('msg', $message, __METHOD__);
+
+ if ($this->hasExecute()) {
+ /** @var d3str $oD3str */
+ $oD3str = d3GetModCfgDIC()->get(d3str::class);
+ $password = $oD3str->random_str(12);
+
+ $set = d3_cfg_mod::get($this->sModKey);
+ $set->setValue('sCronPassword', $password);
+ $set->saveNoLicenseRefresh();
+ }
+
+ return true;
+ }
+
/**
* @return bool true, if update is required
* @throws DBALException
@@ -771,7 +816,7 @@ ncxQlVpRVV0TWpzanRiV1g4YnZvYXI2Vm1RUittZkF3VE1id2Qwc2NaRjR6RGI1WjBsNExoOHNZTU9DL
foreach ($this->getExampleContentInsertList() as $aJobContentInfos) {
$aInsertFields = $this->{$aJobContentInfos['content']}($this->d3GetConfig()->getActiveShop());
foreach ($aInsertFields as $aInsertField) {
- if (strtoupper($aInsertField['fieldname']) == 'OXLOADID') {
+ if (is_string($aInsertField['fieldname']) && strtoupper($aInsertField['fieldname']) == 'OXLOADID') {
$aIdentList[] = $aInsertField['content'];
}
}
@@ -1408,14 +1453,14 @@ ncxQlVpRVV0TWpzanRiV1g4YnZvYXI2Vm1RUittZkF3VE1id2Qwc2NaRjR6RGI1WjBsNExoOHNZTU9DL
),
array (
'fieldname' => 'OXSHORTDESC',
- 'content' => 'Alle Bestellungen, die einen Trackingcode erhalten, werden als "versendet" markiert. Der Kunde kann diesen Status abfragen (optional) oder wird per Mail informiert. Auf dem "versendet"-Status können andere Aufgaben aufbauen und weitere Aktionen auslösen.',
+ 'content' => 'Alle Bestellungen, die einen Trackingcode erhalten, werden als "versendet" markiert. Der Kunde kann diesen Status abfragen oder wird per Mail informiert. Auf dem "versendet"-Status können andere Aufgaben aufbauen und weitere Aktionen auslösen.',
'force_update' => false,
'use_quote' => true,
'use_multilang' => false,
),
array (
'fieldname' => $this->_getLangAbbrFieldName('d3modprofile', 'OXSHORTDESC', 'de'),
- 'content' => 'Alle Bestellungen, die einen Trackingcode erhalten, werden als "versendet" markiert. Der Kunde kann diesen Status abfragen (optional) oder wird per Mail informiert. Auf dem "versendet"-Status können andere Aufgaben aufbauen und weitere Aktionen auslösen.',
+ 'content' => 'Alle Bestellungen, die einen Trackingcode erhalten, werden als "versendet" markiert. Der Kunde kann diesen Status abfragen oder wird per Mail informiert. Auf dem "versendet"-Status können andere Aufgaben aufbauen und weitere Aktionen auslösen.',
'force_update' => false,
'use_quote' => true,
'use_multilang' => false,
@@ -2848,7 +2893,6 @@ ncxQlVpRVV0TWpzanRiV1g4YnZvYXI2Vm1RUittZkF3VE1id2Qwc2NaRjR6RGI1WjBsNExoOHNZTU9DL
foreach ($this->getShopListByActiveModule('d3ordermanager') as $oShop) {
$aWhere = array();
$aInsertFields = $this->{$sGetFieldContentMethodName}($oShop);
- $aInsertFields = $this->_convertExampleJobItems($aInsertFields);
$this->setInitialExecMethod(__METHOD__);
$blRet = $this->_updateTableItem2($sTableName, $aInsertFields, $aWhere);
@@ -2861,24 +2905,6 @@ ncxQlVpRVV0TWpzanRiV1g4YnZvYXI2Vm1RUittZkF3VE1id2Qwc2NaRjR6RGI1WjBsNExoOHNZTU9DL
return $blRet;
}
- /**
- * @param array $aInsertFields
- *
- * @return array
- */
- protected function _convertExampleJobItems($aInsertFields)
- {
- foreach ($aInsertFields as $sFieldKey => $aField) {
- foreach ($aField as $sKey => $mContent) {
- if (is_string($mContent) && mb_detect_encoding($mContent) != 'ASCII') {
- $aInsertFields[$sFieldKey][$sKey] = utf8_encode($mContent);
- }
- }
- }
-
- return $aInsertFields;
- }
-
/**
* @return bool
* @throws DBALException
@@ -2886,12 +2912,35 @@ ncxQlVpRVV0TWpzanRiV1g4YnZvYXI2Vm1RUittZkF3VE1id2Qwc2NaRjR6RGI1WjBsNExoOHNZTU9DL
*/
public function hasNotOrderArticlesParentId()
{
+ if (false == $this->mustCheckOrderArticlesParentId()) {
+ return false;
+ }
+
$sSelect = "SELECT oxorderarticles.oxparentid != oxarticles.oxparentid ".
"FROM oxorderarticles ".
"LEFT JOIN oxarticles ON oxorderarticles.oxartid = oxarticles.oxid ".
"WHERE oxarticles.oxparentid LIMIT 1";
- return (bool) $this->getDb()->getOne($sSelect);
+ $ret = (bool) $this->getDb()->getOne($sSelect);
+
+ if ($ret === false) {
+ $this->setDontCheckOrderArticlesParentId();
+ }
+
+ return $ret;
+ }
+
+ /**
+ * @return bool
+ */
+ public function mustCheckOrderArticlesParentId()
+ {
+ return false === $this->d3GetConfig()->getShopConfVar('setupCheckOrderArticleParentId', null, 'd3ordermanager');
+ }
+
+ public function setDontCheckOrderArticlesParentId()
+ {
+ $this->d3GetConfig()->saveShopConfVar('bool', 'setupCheckOrderArticleParentId', true, null, 'd3ordermanager');
}
/**
@@ -2906,7 +2955,11 @@ ncxQlVpRVV0TWpzanRiV1g4YnZvYXI2Vm1RUittZkF3VE1id2Qwc2NaRjR6RGI1WjBsNExoOHNZTU9DL
"SELECT oxarticles.oxparentid FROM oxarticles WHERE oxarticles.oxid = oxorderarticles.oxartid ".
") WHERE oxorderarticles.oxparentid = '';";
- return $this->_tableSqlExecute($sSelect, 'oxorderarticles', true);
+ $ret = $this->_tableSqlExecute($sSelect, 'oxorderarticles', true);
+
+ $this->setDontCheckOrderArticlesParentId();
+
+ return $ret;
}
/**
diff --git a/src/metadata.php b/src/metadata.php
index 68176225..b137acd2 100644
--- a/src/metadata.php
+++ b/src/metadata.php
@@ -1,12 +1,24 @@
+ * @link http://www.oxidmodule.com
+ */
+
use D3\Ordermanager\Setup as ModuleSetup;
use D3\Ordermanager\Modules\Application\Model as ModuleModel;
use D3\Ordermanager\Application\Controller as OMController;
use D3\Ordermanager\Application\Controller\Admin as OMControllerAdmin;
-use D3\Ordermanager\Modules\Application\Controller\Admin as ModuleControllerAdmin;
-use D3\ModCfg\Application\Model\d3utils;
-use OxidEsales\Eshop\Application\Controller as OxidController;
use OxidEsales\Eshop\Application\Model as OxidModel;
use OxidEsales\Eshop\Core as OxidCore;
@@ -14,31 +26,34 @@ use OxidEsales\Eshop\Core as OxidCore;
* Metadata version
*/
$sMetadataVersion = '2.0';
+$sLogo = ' ';
/**
* Module information
*/
-$aModule = array(
+$aModule = [
'id' => 'd3ordermanager',
- 'title' =>
- (class_exists(d3utils::class) ? d3utils::getInstance()->getD3Logo() : 'D³') .
- ' Auftragsmanager / Order Manager',
- 'description' => array(
+ 'title' => [
+ 'de' => $sLogo . 'Auftragsmanager',
+ 'en' => $sLogo . 'Order Manager'
+ ],
+ 'description' => [
'de' => 'Bearbeitet frei definierbare Aufträge auf Basis von einstellbaren Bestellungslisten.',
- 'en' => ''),
+ 'en' => 'Processes freely definable tasks on the basis of adjustable order lists.'
+ ],
'thumbnail' => 'picture.png',
- 'version' => '3.2.0.3',
+ 'version' => '3.3.1.0',
'author' => 'D³ Data Development (Inh.: Thomas Dartsch)',
'email' => 'support@shopmodule.com',
'url' => 'http://www.oxidmodule.com/',
- 'extend' => array(
+ 'extend' => [
OxidCore\Email::class => ModuleModel\d3_oxemail_ordermanager::class,
OxidModel\Order::class => ModuleModel\d3_oxorder_ordermanager::class,
OxidModel\User::class => ModuleModel\d3_oxuser_ordermanager::class,
OxidModel\Basket::class => ModuleModel\d3_oxbasket_ordermanager::class,
OxidModel\BasketItem::class => ModuleModel\d3_oxbasketitem_ordermanager::class
- ),
- 'controllers' => array(
+ ],
+ 'controllers' => [
'd3ordermanager_response' => OMController\d3ordermanager_response::class,
'd3_cfg_ordermanagerset' => OMControllerAdmin\d3_cfg_ordermanagerset::class,
@@ -59,8 +74,8 @@ $aModule = array(
'd3_cfg_ordermanageritem_requ' => OMControllerAdmin\d3_cfg_ordermanageritem_requ::class,
'd3_cfg_ordermanageritem_action' => OMControllerAdmin\d3_cfg_ordermanageritem_action::class,
'd3_ordermanager_jobs' => OMControllerAdmin\d3_ordermanager_jobs::class,
- ),
- 'templates' => array(
+ ],
+ 'templates' => [
'd3_cfg_ordermanagerset_main.tpl' => 'd3/ordermanager/Application/views/admin/tpl/d3_cfg_ordermanagerset_main.tpl',
'd3_cfg_ordermanageritem_list.tpl' => 'd3/ordermanager/Application/views/admin/tpl/d3_cfg_ordermanageritem_list.tpl',
'd3_cfg_ordermanageritem_main.tpl' => 'd3/ordermanager/Application/views/admin/tpl/d3_cfg_ordermanageritem_main.tpl',
@@ -154,6 +169,8 @@ $aModule = array(
'd3/ordermanager/Application/views/admin/tpl/Actions/d3ordermanager_action_changediscount.tpl',
'd3ordermanager_action_generatepdf.tpl' =>
'd3/ordermanager/Application/views/admin/tpl/Actions/d3ordermanager_action_generatepdf.tpl',
+ 'd3ordermanager_action_getpdfdocuments.tpl' =>
+ 'd3/ordermanager/Application/views/admin/tpl/Actions/d3ordermanager_action_getpdfdocuments.tpl',
'd3ordermanager_action_custaddtogroup.tpl' =>
'd3/ordermanager/Application/views/admin/tpl/Actions/d3ordermanager_action_custaddtogroup.tpl',
'd3ordermanager_action_custdelfromgroup.tpl' =>
@@ -162,18 +179,18 @@ $aModule = array(
'd3/ordermanager/Application/views/admin/tpl/Actions/d3ordermanager_action_sendmail.tpl',
'd3ordermanager_action_exportlist.tpl' =>
'd3/ordermanager/Application/views/admin/tpl/Actions/d3ordermanager_action_exportlist.tpl',
- ),
+ ],
'events' => [
'onActivate' => '\D3\Ordermanager\Setup\Events::onActivate',
],
- 'blocks' => array(
- array(
+ 'blocks' => [
+ [
'template' => 'order_remark.tpl',
'block' => 'admin_order_remark_type',
'file' => 'Application/views/admin/blocks/d3ordermanager_order_remark_type.tpl',
- )
- ),
- 'd3FileRegister' => array(
+ ]
+ ],
+ 'd3FileRegister' => [
'd3/ordermanager/IntelliSenseHelper.php',
'd3/ordermanager/metadata.php',
'd3/ordermanager/models/Requirements/d3ordermanager_requirement_orderarticlefilter_abstract.php',
@@ -210,9 +227,20 @@ $aModule = array(
'd3/ordermanager/Application/Model/d3ordermanager.php',
'd3/ordermanager/Application/Model/Exceptions/d3ordermanager_cronUnavailableException.php',
'd3/ordermanager/Application/Model/Exceptions/d3ordermanager_requirementException.php',
+ 'd3/ordermanager/Application/Model/Exceptions/d3ordermanager_templaterendererExceptionInterface.php',
+ 'd3/ordermanager/Application/Model/Exceptions/d3ordermanager_smartyException.php',
'd3/ordermanager/Application/Model/d3ordermanager_toorderassignment.php',
'd3/ordermanager/Application/Model/d3ordermanager_execute.php',
'd3/ordermanager/Application/Model/d3ordermanager_conf.php',
+ 'd3/ordermanager/Application/Model/d3ordermanager_renderererrorhandler.php',
+ 'd3/ordermanager/Application/Model/d3ordermanager_actionrequirement_interface.php',
+ 'd3/ordermanager/Application/Model/d3ordermanager_configurationcheck.php',
+ 'd3/ordermanager/Application/Model/Exceptions/d3ActionRequirementInterface.php',
+ 'd3/ordermanager/Application/Model/Exceptions/d3ActionRequirementAbstract.php',
+ 'd3/ordermanager/Application/Model/Exceptions/d3ordermanager_actionException.php',
+ 'd3/ordermanager/Application/Model/Output/d3ordermanager_debugoutput.php',
+ 'd3/ordermanager/Application/Model/Output/d3ordermanager_abstractoutput.php',
+ 'd3/ordermanager/Application/Model/Output/d3ordermanager_nulloutput.php',
'd3/ordermanager/Application/Model/Actions/d3ordermanager_action_custaddtogroup.php',
'd3/ordermanager/Application/Model/Actions/d3ordermanager_action_setsendednowdate.php',
'd3/ordermanager/Application/Model/Actions/d3ordermanager_action_exportlist.php',
@@ -231,6 +259,8 @@ $aModule = array(
'd3/ordermanager/Application/Model/Actions/d3ordermanager_action_sendmail.php',
'd3/ordermanager/Application/Model/Actions/d3ordermanager_action_setfieldvalue.php',
'd3/ordermanager/Application/Model/Actions/d3ordermanager_action_interface.php',
+ 'd3/ordermanager/Application/Model/Actions/d3ordermanager_action_getpdfdocuments.php',
+ 'd3/ordermanager/Application/Model/Actions/d3ordermanager_action_testaction.php',
'd3/ordermanager/Application/Model/Requirements/d3ordermanager_requirement_notinfolderfilter.php',
'd3/ordermanager/Application/Model/Requirements/d3ordermanager_requirement_folderfilter.php',
'd3/ordermanager/Application/Model/Requirements/d3ordermanager_requirementgrouplist.php',
@@ -269,6 +299,7 @@ $aModule = array(
'd3/ordermanager/Application/Model/Requirements/d3ordermanager_requirement_currencyfilter.php',
'd3/ordermanager/Application/Model/Requirements/d3ordermanager_requirement_timespanfilter_abstract.php',
'd3/ordermanager/Application/Model/Requirements/d3ordermanager_requirement_countryfilter.php',
+ 'd3/ordermanager/Application/Model/Requirements/d3ordermanager_requirement_testfilter.php',
'd3/ordermanager/Application/Model/d3ordermanager_partgrouplist_abstract.php',
'd3/ordermanager/Application/Model/d3ordermanager_partgrouplist_interface.php',
'd3/ordermanager/Application/Model/d3ordermanager_remark.php',
@@ -302,6 +333,7 @@ $aModule = array(
'd3/ordermanager/tests/unit/Application/Model/Actions/d3ordermanageractionsetfieldvalueTest.php',
'd3/ordermanager/tests/unit/Application/Model/Actions/d3ordermanageractioncustaddtogroupTest.php',
'd3/ordermanager/tests/unit/Application/Model/Actions/d3ordermanageractionsetsendednowdateTest.php',
+ 'd3/ordermanager/tests/unit/Application/Model/Actions/d3ordermanageractiongetpdfdocumentsTest.php',
'd3/ordermanager/tests/unit/Application/Model/Actions/d3OrdermanagerActionUnitTestCase.php',
'd3/ordermanager/tests/unit/Application/Model/Actions/d3ordermanageractionexportlistTest.php',
'd3/ordermanager/tests/unit/Application/Model/Actions/d3ordermanageractiongrouplistTest.php',
@@ -341,10 +373,13 @@ $aModule = array(
'd3/ordermanager/tests/unit/Application/Model/Requirements/d3ordermanagerrequnotingroupfilterTest.php',
'd3/ordermanager/tests/unit/Application/Model/Requirements/d3ordermanagerrequotherjobTest.php',
'd3/ordermanager/tests/unit/Application/Model/Requirements/d3OrdermanagerRequirementUnitTestCase.php',
+ 'd3/ordermanager/tests/unit/Application/Model/Exceptions/d3ordermanager_actionExceptionTest.php',
+ 'd3/ordermanager/tests/unit/Application/Model/Output/d3ordermanager_debugoutputTest.php',
'd3/ordermanager/tests/unit/Application/Model/d3ordermanagerTest.php',
'd3/ordermanager/tests/unit/Application/Model/d3ordermanager_executeTest.php',
'd3/ordermanager/tests/unit/Modules/Application/Model/d3_oxbasket_ordermanagerTest.php',
'd3/ordermanager/tests/unit/Modules/Application/Model/d3_oxbasketitem_ordermanagerTest.php',
+ 'd3/ordermanager/tests/unit/Application/Model/d3ordermanager_renderererrorhandlerTest.php',
'd3/ordermanager/tests/unit/Application/Model/d3ordermanager_listgeneratorTest.php',
'd3/ordermanager/tests/unit/Application/Model/d3ordermanager_pdfhandlerTest.php',
'd3/ordermanager/tests/unit/Application/Model/d3ordermanager_remarkTest.php',
@@ -373,6 +408,7 @@ $aModule = array(
'd3/ordermanager/tests/unit/Modules/Application/Model/d3_oxemail_ordermanagerTest.php',
'd3/ordermanager/tests/unit/public/d3_ordermanager_cronTest.php',
'd3/ordermanager/tests/unit/Setup/d3ordermanager_updateTest.php',
+ 'd3/ordermanager/tests/unit/Application/Model/d3ordermanager_configurationcheckTest.php',
'd3/ordermanager/tests/integration/Requirements/d3OrdermanagerRequirementIntegrationTestCase.php'.
'd3/ordermanager/tests/integration/Requirements/requirementOrderSumTest.php',
'd3/ordermanager/tests/integration/Requirements/requirementInvoiceNoTest.php',
@@ -416,12 +452,19 @@ $aModule = array(
'd3/ordermanager/tests/integration/Actions/actionCustAddToGroupTest.php',
'd3/ordermanager/tests/integration/Requirements/d3OrdermanagerRequirementIntegrationTestCase.php',
'd3/ordermanager/tests/integration/Requirements/requirementOrderSumTest.php',
- 'd3/ordermanager/tests/integration/executeCronTest.php',
- ),
- 'd3SetupClasses' => array(
+ 'd3/ordermanager/tests/integration/executeCronTest.php', // outdated
+ 'd3/ordermanager/tests/integration/Trigger/executeCLICronTest.php',
+ 'd3/ordermanager/tests/integration/Trigger/executeGUICronTest.php',
+ 'd3/ordermanager/tests/integration/Trigger/finalizeOrderTest.php',
+ 'd3/ordermanager/tests/integration/Trigger/orderSaveTest.php',
+ 'd3/ordermanager/tests/integration/Admin/jobListTest.php',
+ 'd3/ordermanager/tests/integration/Admin/jobExecuteTest.php',
+ 'd3/ordermanager/tests/tools/Intercept.php',
+ ],
+ 'd3SetupClasses' => [
ModuleSetup\d3ordermanager_update::class,
- ),
+ ],
'd3DICDefinitionFiles' => [
'd3/ordermanager/Config/services.yaml',
]
-);
+];
diff --git a/src/public/d3_ordermanager_cron.php b/src/public/d3_ordermanager_cron.php
index fc5cb2a5..64c0033a 100644
--- a/src/public/d3_ordermanager_cron.php
+++ b/src/public/d3_ordermanager_cron.php
@@ -15,17 +15,25 @@
* @link http://www.oxidmodule.com
*/
-use D3\Ordermanager\Application\Controller\d3ordermanager_response;
-use D3\Ordermanager\Application\Model\d3ordermanager;
+namespace D3\Ordermanager\publicDir;
+
+use D3\ModCfg\Application\Model\d3cliutils;
+use D3\ModCfg\Application\Model\Exception\d3PreventExitException;
+use D3\Ordermanager\Application\Controller\d3ordermanager_response as ResponseController;
+use D3\Ordermanager\Application\Model\d3ordermanager as Manager;
+use D3\Ordermanager\Application\Model\Output\d3ordermanager_debugoutput;
use Doctrine\DBAL\DBALException;
+use Exception;
use OxidEsales\Eshop\Core\Config;
+use OxidEsales\Eshop\Core\ConfigFile;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Module\Module;
use OxidEsales\Eshop\Core\Registry;
use OxidEsales\Eshop\Core\Session;
+use OxidEsales\Eshop\Core\ShopControl;
+use RuntimeException;
use splitbrain\phpcli\CLI;
-use splitbrain\phpcli\Exception;
use splitbrain\phpcli\Options;
// @codeCoverageIgnoreStart
@@ -59,10 +67,12 @@ if (!(file_exists($bootstrapFileName) && !is_dir($bootstrapFileName))) {
die($message);
}
-require_once($bootstrapFileName);
+if (false === defined('OXID_PHP_UNIT')) {
+ require_once($bootstrapFileName);
-// required for recalculating order and generating pdf
-define('OX_IS_ADMIN', true);
+ // required for recalculating order and generating pdf
+ define('OX_IS_ADMIN', true);
+}
if (false == function_exists('isAdmin')) {
/**
@@ -79,7 +89,8 @@ if (false == function_exists('isAdmin')) {
}
// set language
-$searchedValue = getopt(null, ["lang:"])['lang'];
+$options = getopt('l:', ["lang:"]);
+$searchedValue = $options ? getopt('l:', ["lang:"])['lang'] : 0;
Registry::getLang()->setTplLanguage(
current(
array_filter(
@@ -92,16 +103,36 @@ Registry::getLang()->setTplLanguage(
);
// @codeCoverageIgnoreEnd
+// ToDo: extract to separate file because of circular reference in d3ordermanager_execute class
class d3_ordermanager_cron extends CLI
{
+ const OPTION_VERSION = 'version';
+ const OPTION_QUIET = 'quiet';
+ const OPTION_LANG = 'lang';
+
+ const COMMAND_RUN = 'run';
+ const COMMAND_STATUS = 'status';
+
+ const ARGUMENT_SHOPID = 'shop id';
+ const ARGUMENT_CJID = 'cronjob id';
+ const ARGUMENT_KEY = 'key';
+
public function __construct()
{
// there are argv setting in CLI mode only
- if ('cli' == php_sapi_name()) {
+ if ($this->isCLI()) {
parent::__construct();
}
}
-
+
+ /**
+ * @return bool
+ */
+ public function isCLI()
+ {
+ return 'cli' == php_sapi_name();
+ }
+
/**
* @param Options $options
*
@@ -122,7 +153,7 @@ class d3_ordermanager_cron extends CLI
function ($entry) {
return $entry['id'];
},
- d3GetModCfgDIC()->get(d3ordermanager::class)->getAvailableCronjobIds()
+ d3GetModCfgDIC()->get(Manager::class)->getAvailableCronjobIds()
)
);
$sLangList = implode(
@@ -136,16 +167,16 @@ class d3_ordermanager_cron extends CLI
);
$options->setHelp($lang->translateString('D3_ORDERMANAGER_CLI_HELP'));
- $options->registerOption('version', $lang->translateString('D3_ORDERMANAGER_CLI_OPTION_VERSION'), 'v');
- $options->registerOption('quiet', $lang->translateString('D3_ORDERMANAGER_CLI_OPTION_QUIET'), 'q');
- $options->registerOption('lang', sprintf($lang->translateString('D3_ORDERMANAGER_CLI_OPTION_LANG'), $sLangList), null, 'language');
+ $options->registerOption(self::OPTION_VERSION, $lang->translateString('D3_ORDERMANAGER_CLI_OPTION_VERSION'), 'v');
+ $options->registerOption(self::OPTION_QUIET, $lang->translateString('D3_ORDERMANAGER_CLI_OPTION_QUIET'), 'q');
+ $options->registerOption(self::OPTION_LANG, sprintf($lang->translateString('D3_ORDERMANAGER_CLI_OPTION_LANG'), $sLangList), null, 'language');
- $options->registerCommand('run', $lang->translateString('D3_ORDERMANAGER_CLI_COMMAND_RUN'));
- $options->registerCommand('status', $lang->translateString('D3_ORDERMANAGER_CLI_COMMAND_STATUS'));
+ $options->registerCommand(self::COMMAND_RUN, $lang->translateString('D3_ORDERMANAGER_CLI_COMMAND_RUN'));
+ $options->registerCommand(self::COMMAND_STATUS, $lang->translateString('D3_ORDERMANAGER_CLI_COMMAND_STATUS'));
- $options->registerArgument('shop id', sprintf($lang->translateString('D3_ORDERMANAGER_CLI_ARGUMENT_SHOPID'), $sShopIdList), false);
- $options->registerArgument('cronjob id', sprintf($lang->translateString('D3_ORDERMANAGER_CLI_ARGUMENT_CJID'), $sCJIDList), false);
- $options->registerArgument('key', $lang->translateString('D3_ORDERMANAGER_CLI_ARGUMENT_KEY'), false);
+ $options->registerArgument(self::ARGUMENT_SHOPID, sprintf($lang->translateString('D3_ORDERMANAGER_CLI_ARGUMENT_SHOPID'), $sShopIdList), false);
+ $options->registerArgument(self::ARGUMENT_CJID, sprintf($lang->translateString('D3_ORDERMANAGER_CLI_ARGUMENT_CJID'), $sCJIDList), false);
+ $options->registerArgument(self::ARGUMENT_KEY, $lang->translateString('D3_ORDERMANAGER_CLI_ARGUMENT_KEY'), false);
}
/**
@@ -164,12 +195,13 @@ class d3_ordermanager_cron extends CLI
/**
* @param Options $options
+ *
* @throws DBALException
- * @throws \Exception
+ * @throws Exception
*/
protected function main(Options $options)
{
- if ( $options->getOpt( 'version' ) ) {
+ if ( $options->getOpt( self::OPTION_VERSION ) ) {
$oModule = oxNew( Module::class );
$oModule->load( 'd3ordermanager' );
$this->info( $oModule->getModuleData()['version'] );
@@ -177,7 +209,7 @@ class d3_ordermanager_cron extends CLI
return;
}
- if ( $options->getOpt( 'quiet' ) ) {
+ if ( $options->getOpt( self::OPTION_QUIET ) ) {
d3GetModCfgDIC()->get('d3ox.ordermanager.'.Session::class)->setVariable( 'd3ordermanager_quiet', true );
}
@@ -190,21 +222,50 @@ class d3_ordermanager_cron extends CLI
$_GET = array_merge( $_GET, $aTranslation );
try {
- /** @var $oResponse d3ordermanager_response */
- $oResponse = d3GetModCfgDIC()->get( d3ordermanager_response::class );
+ if ($aTranslation['shp']) {
+ if (false === in_array($aTranslation['shp'], Registry::getConfig()->getShopIds())) {
+ throw new RuntimeException(Registry::getLang()->translateString('D3_ORDERMANAGER_CLI_COMMON_UNVALIDSHOPID'));
+ }
+ Registry::getConfig()->setShopId( (int) $aTranslation['shp'] );
+ }
+
+ /** @var $oResponse ResponseController */
+ $oResponse = d3GetModCfgDIC()->get( ResponseController::class );
switch ( $options->getCmd() ) {
- case 'run':
- $oResponse->init();
- if ( !$options->getOpt( 'quiet' ) ) {
- $this->success('script successfully finished');
+ case self::COMMAND_RUN:
+ $oResponse->initCli();
+ if ( !$options->getOpt( self::OPTION_QUIET ) ) {
+ $this->success(
+ Registry::getLang()->translateString('D3_ORDERMANAGER_CLI_FINISHED_SUCCESSFULLY')
+ );
}
break;
- case 'status':
+ case self::COMMAND_STATUS:
$this->info(implode(PHP_EOL, $oResponse->getLastExecDateInfo()));
break;
default:
- echo $this->translateFixedStrings($options->help());
+
+ // old command without 'run' task
+ if (false === in_array($aTranslation['cjid'], ['', false, null], true)) {
+ if (false === in_array($aTranslation['cjid'], array_map(
+ function ($entry) {
+ return $entry['id'];
+ },
+ d3GetModCfgDIC()->get(Manager::class)->getAvailableCronjobIds()
+ ))
+ ) {
+ throw new RuntimeException(Registry::getLang()->translateString('D3_ORDERMANAGER_CLI_COMMON_UNVALIDCJID'));
+ }
+ $oResponse->initCli();
+ if ( !$options->getOpt( self::OPTION_QUIET ) ) {
+ $this->success(
+ Registry::getLang()->translateString('D3_ORDERMANAGER_CLI_FINISHED_SUCCESSFULLY')
+ );
+ }
+ } else {
+ echo $this->translateFixedStrings( $options->help() );
+ }
}
} catch ( Exception $oEx ) {
if (!Registry::getSession()->getVariable('d3ordermanager_quiet')) {
@@ -226,33 +287,45 @@ class d3_ordermanager_cron extends CLI
* @codeCoverageIgnore
*
* @throws DBALException
- * @throws DatabaseConnectionException
- * @throws DatabaseErrorException
*/
public function run()
{
- if (false === defined('OXID_PHP_UNIT')) {
- if ('cli' != php_sapi_name()) {
- // browser call don't handle CLI options and arguments
- /** @var $oResponse d3ordermanager_response */
- $oResponse = d3GetModCfgDIC()->get( d3ordermanager_response::class );
- $oResponse->init();
- } else {
- parent::run();
- }
- } else {
- if ('cli' != php_sapi_name()) {
- throw new Exception('This has to be run from the command line');
- }
+ $blDebug = (bool) Registry::get(ConfigFile::class)->getVar('iDebug');
- $this->setup($this->options);
- $this->registerDefaultOptions();
- $this->parseOptions();
- $this->handleDefaultOptions();
- $this->setupLogging();
- $this->checkArgments();
- $this->execute();
+ if ($blDebug) {
+ $cliUtils = oxNew(d3cliutils::class);
+ $shopControl = oxNew(ShopControl::class);
+ $cliUtils->startMonitor($shopControl);
}
+
+ // run cron script from browser
+ if (false === $this->isCLI()) {
+ // browser call don't handle CLI options and arguments
+ /** @var $oResponse ResponseController */
+ $oResponse = d3GetModCfgDIC()->get( ResponseController::class );
+ $oResponse->init();
+ } else {
+ try {
+ parent::run();
+ } catch (d3PreventExitException $e) {}
+ }
+
+ if ($blDebug) {
+ $log = $cliUtils->profilingFormMonitorMessage($shopControl);
+ oxNew(d3ordermanager_debugoutput::class)->output($log);
+ }
+ }
+
+ /**
+ * @throws d3PreventExitException
+ */
+ protected function execute()
+ {
+ parent::execute();
+
+ /** @var d3PreventExitException $e */
+ $e = oxNew(d3PreventExitException::class);
+ throw $e;
}
/**
@@ -274,12 +347,13 @@ class d3_ordermanager_cron extends CLI
}
// @codeCoverageIgnoreStart
-$cli = new d3_ordermanager_cron();
+/** @var d3_ordermanager_cron $cli */
+$cli = d3GetModCfgDIC()->get(d3_ordermanager_cron::class);
if (false === defined('OXID_PHP_UNIT')) {
try {
$cli->run();
- } catch (\Exception $e) {
- echo $e->getMessage();
+ } catch ( Exception $e) {
+ $cli->error($e->getMessage());
}
}
// @codeCoverageIgnoreEnd
diff --git a/src/tests/additional.inc.php b/src/tests/additional.inc.php
index 1533e75c..d3125a77 100644
--- a/src/tests/additional.inc.php
+++ b/src/tests/additional.inc.php
@@ -1,30 +1,30 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-HR+cPxrxCPlUnudSfykak0mK3Od9SctIu9MGbEwXathYmLXJXipjsuhqdfZg9JqBUkb+sJSMiAvh
-su9pYhNX/flhvt37lrBp/c1Hzo89aCW7tSehYEH/kbmd4g/iXoH93iSqGy/yR4gqy20tyXv+f29q
-YdHyd0T6wVHzBBYJCFKU4V2uArhRaLFPtGvbZyT9k9EEBau4jyAbQNPXVHf8Cu0GYrgQQFbKIRm/
-q6azdnfw30oyqrcv9wKlyluE6h2/5YMSPXc/31lEkJYlWRzBof0E6BpWlvqaRMN1f+NurLgDZak0
-hT0YVf1r2BCjl0HkxL3r46UefPgYhSsjxXxZR8HxbVaxlOBZ60kyDtNM7pPhvFiFyXtHP+4ppVr4
-ZHa/mZI6dAcj3w8H1rmv81oWdGVdCw6M7cmT7xrDaJOrpuYRyaasRaJ8n46ZtW5Ia14bWyWYJk/T
-4/CCTk8jC+Hz+kUu6E/qqsx60joN9MuiHbfT+LbSNikNAkoUxm4U5GorOi7punr7fqixhvp4LjhO
-cD3g/Rc1oHePM0caWKrZJy2dOHi43EE3mXjzV/Ekwv5MVnt2614mtlaSKzpMeOsN2zg1CzeKsnrm
-Dvv7si9MaGjaR++p5qlmLdycLO25B6UktX+hnn/VVAY4ry3nrFW1/p9lJ9a3uog2ilhFijkaP6kE
-Uk6aGYtzWmuXn3thS39Q19jY/hIqm/QPt8Hve7TWnD58ZPijJt+/cqIrEKfZL2G32AslYT40q7F+
-/8GIdH9KzQ4h352+4Hk8xKqGib4VaLfobcFtaebvzKlbhlTP4NlqaCXZ7TzelF+jeq6F7xqMxQLM
-7qDEGVpwPLpaLgQI2krmlfz9/KPcAXmDbVy9P9TI2ULBaWbRvUvIPwiiJ4NdkMP/ob/R9XpAsXST
-vTEShcd/+7qlP12d8Omf/hD6rOlEz4Lq4NrADqkF1Sni6RV12Xd5SP5ZdTmGZ00cEwyf3pVYNQ74
-qIiCzHOZiGS55obCmMuW+SSBEhR62BA3b7tUBj21tlb7L3UyRxLc9Hvq+xCddmI29cUY+DfSI8Zf
-kS9Lwf/pw5to/HufQhaovhkf/MeXO3s6988qYdU4L8dX4x9wRxF5Hgzr4W2fOu4TT3B436BeMrJA
-lhp4Up19PJMw/wUevParhTUvtZkc7VuELcoYead5gwSgyHFtPcqO1saSK7sDoxtXROO5BhkuuL0h
-H81cMqxD17fHBxwc9NCfX0aYAWKScuPXRo+OIEF0JkcEbAUjpLl3Sfgcg5MA4s8vSti+Qkl75dFs
-4IcfK6DUx52bjuF8fE9kllKqVFB+5A09YBRphRHIhUlEcnQ1SFDqrnh8I5T9VVb2K21Z5JC4g8qP
-P3WqeVDy5xKtBIPBe+i33RWRytkNwsCBFmlnbDnCKzGuOvDV5tKEbASBMFycqkwAvMyDgI+vslkx
-PbYPOAQ0c2pivbU6k7gEQyY8hYWP3csgmbBMlRrPWwzVmo7y1rlHh/PkAK0jNOY72pdQp8BMLdxl
-fkGVUhHGx1z3rprBjgAJCvL0ee1uODIT32PVyOGBe1dT6SCUx5gJSp2l5PHWrDpP7U6Blsmmefa5
-Y4AIcbAMRe9r1SkfS+PgvLlPzb5amTYj+DCSp5/BrgAAtWs+oDTNGmigXD8HZAG48WdBUmxi4Y76
-E0I0JWbyXvdvS1PdBsTdvZX94MZ12MJBJLy2HATSqEixASo0bJIFdNeZ03utef39TVj+/F5jWduH
-Z8RXYYR8sRMe5VwSiWehYGMQRG4Lkiha5sXjTuAQOJzgvEeTHPcXWZ0eB5t3XxW5HZHdnsQwjI38
-UlkD4UEgIV+Kz698+guV+gQFSX5F9g1GoSPQXbYYY6r4CLXQ9RGKaZY5HcO1Qfiv3vfiA2BOwGcp
-2vr/vNM51OrzNp7mSg7tP8gYdpAI9UC5zPklt5LzZm==
\ No newline at end of file
+HR+cPmDld3HiisGxQTy95/eCUdNi/6ImQ48fZU90GF/esjhNSbmKzGl0uKG7XMyzFMzEJMOrfkR2
+anvB1+Ve+ZznnV1V1z2xURCcuc3xK0G7opykEmMrvZ7V8DxqwkakEHa0m7eX7zK1p3LBVWNtlBA5
+/nhJ5MIo/sBUUcwPaUhrGMiwZuAGo3295Sl7rv98qCCeyEgDDx+ykmXRDU+vuUGSScS16g2xEW1d
+1M/9Kgxlmzyc1a0fXESO+0La+9YCbtCmMRtcCbvaX5QWsNgwDFIYpP3PRBInTcjrp1F09jyydP9R
+FkKXSLR+fLMgJ8K4WUVnS7cURnY4z9qaWLog95Qo4BgVoQJvlf4bcUttgz44XoV9RG5aWmGrjzgN
+P5f133r8sOTuJyxW756yhiWEuXESVfrcJbWT4Bj3mW7o0Ucqt0dIhQ728Y6nTzXGoh4uHLWkxVMq
+XE7J3WMlX1wiQDMP0YGCnhChgMuCCUHifcbYHa7kAfD3iE382fY8Q1FWS3EHk46tX6YN5qGh5W+O
+rgH6MiMPYJBtiBcXhM6qxtpb/avIzxi+/qmETBRMxOSUlYfsn6IVQmblZhR7EQlCo3NiG3W9Ie50
+uGjqSVRf0N9jA2d8bzO6weqGhiguESsRJv/6cgHvk96MusRH+Gb1s6oAv6gF38JrBBSOS8EcFZc0
+2sWn1Qi8uwXJLIB7XSdJ1Hl/73uQDFki3b9ekIUiw7hdBIORgF45Tj6pM1BQRE79okwLDEtkbPQy
+S6u6ryRS/r7WhVK2NYuG6XVDCK7k8uONKXFdu/Lvg4AERaxPxZK58H7tFUAw227C5DXtkNFG+R1D
+9fQku5kSjBhjwzL2fpA9DR55PMSaQac4yvYBH4ziXf2/3tHudlPlGuN8I24zSOn6rt6OIFtZiuSU
+X/y1qyy+kI7/NUhCM8t56cI6umejSoiaL/ybg3De+HM9CKv1/A4mBMupg05L+/Lqv0qDoXg/S4z0
+7ynh4afNMEWY2WTm/jicmSW8YZKNzp1Rs0ewmiZQ+HkhDHTzsXvd2qSWhWks7U+qlG8zVZkQahV0
+b1kzP1XS+upgnAHFK0Z7fJl7zWUKScbmlQQAq/GfZ+c6c8p49OeLxLzfgvmC2hElsClgfQ6nvLac
++ATLpGaErnJGFdROdphm2xp5M16IWQ8InIbS1Dp+SWCqWnuwnQk7LBtFct6Nzsj+/94iTpTkwvPR
+fpCm5VtOaqxLV/ZCGSmFRkc1M4ozn0skJPs+dQLHZID19FcJvs9aq1Hp9za2itPqh0cIk/vyx6+E
+pX/n0w7Kw//NJU/p0bxVVUSetyxY0R5rdr4Eh6iNz+NEkFh/U7s6zO5eofjn8+7fd0TId1P/lkGQ
+0u1T03Mhm9T7FyhogaEezrsKAEblksNVcOcRvZinDSiUmZcG2OUpPxv2apcRU04HWPeIsMLj69KK
+U3HCeRQ2b1ZmLTmlAfnJI5AxAKBVBrO/JKZvXcU+new0fEEPngItzJbLBHufx9qS5dZn7cgQPUpB
+pzAOKbMvbIclj9oIM9p8LtLp7V5gjmsBrHgGtJfr2440wngwD2cquAUniN4j6nYAiFpNca0mR50Z
+72OI1aW7nbAb4Pn3mnb02as8smi6x+BF/N9IYu4eBVLG3dle+NqskUgoh4mtcRx5tnW6ttiFnqwn
+lT6i1cNOD0iT+ayP/DrgXxm6L4Y6FNaTz5OMocX7080O1neIPw1rTvXGsFJSsMSPfoOPBXL9fswN
+KzQ018lSDv6lYwZSoqmk8H/4OZ+pubtg4oqane5ATM/9OOhw8+2S6rsYhoTd4M+leU7+8dVoX3uD
+1qcjQ6ToeJVGLjWI4TJLcDSBZYwqlqaJpBSUC36reay5WmLVo34+Ruc8psWMZGySHJQnTyGgenYw
+ikC+YcEIpDdydwb/JubC
\ No newline at end of file
diff --git a/src/tests/d3ordermanager_config.php b/src/tests/d3ordermanager_config.php
index 45ac3c41..f9c65f97 100644
--- a/src/tests/d3ordermanager_config.php
+++ b/src/tests/d3ordermanager_config.php
@@ -1,13 +1,13 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-HR+cPqF6XcfzB7jDU78JIVT2KoQD0LPZ5oNlHOQuZECSCg01QWFTGpCLFL/LSircOf5aacl+5D8l
-b+jAO4xWZ2Bw9m4FWtwVXYlkdadEqRWPPs9AQxXf6B6huy9uCL0kOlUu47S2OqLvVmvHqtbs4Lc2
-/NkcU8RY+WxaJ6FXqjvLwklzWNylsSUVNKr8ud8fEskaRxC8TaWH3etIMTfiMX2zY3t/jzt2A45J
-weMCQmnfq8xHEvyxumedmrgpmK2WCA+7OpIi6ywvEA+1lqlAa0uOlE2/dM1acBUGtF0lDAW0Te2j
-pY8svEbYlf5FF/DKgzmpXSUdt/q9fKuawsePbg4YEaK2RHg3VxDYSsVvDrvySwGg0Gp4dKzN95zt
-1fXQBi4v8Y1hUQw/AGTnqI+jqn7RPS4r2dobEQwW3G5UlrVLHweSJxEl6OVj7Re6LD+B93HP2uWR
-i873yHXQwMIKvWH6ttesJCnxzE5zviQbOBZg7BsyLnx8PUM5b3DQ72//NEEdcP/3H6kywdNhvfzW
-thH/2zR4zDSpIHEoJskDVwMTb2xt+Stb+A7ZxEuQ86gaGkjEergcsao1TElVw4eAiBwAWRnbE7ek
-28srlQFsSoAH
\ No newline at end of file
+HR+cP+lyJ+82MhJLsqZQmQ//bo12JBOmkjeD5j81wvUs9p4hzctIIWQJLi4DC0eY2oilVn261zt4
+DXH0XahDlINyTaM2zNLFQs/8drKqIloiYXoBwK1iOXJ7P87u7/e/iZ2FAtY56PGWoQ8H8sU5caAO
+833sQHU1NgLoL0cHsNne+5Hfs890FTSa+KWTD3fkdBWl756WA4AAkp+Fw8EU89oV3Tb1rDbFjTwp
+C2ajaxp3LTs9RtUSGNrwDw2sVkIDxbbHenAGucI4Lg3PUheqzABDaDbijB7+PUqIDoGIbxp5Ohi+
+vIDn9JKELqjbEuQNcJOBp8ylxBQ2CF2uSwcg2M4n33dyKO8Lwlh1myNjFphTNzS3Xwg/dtHEziPT
+cuNiQaastCJ6xis210kIQsaJ1yYRHg0uDcAxoe1FauZu1t37PhXqKJe12jAuT44lK06IuIoLgTnp
+Y05ndWjy824kXdlk5ZEwVO4791MpYa2LG6vaVPV3dwQ45OdhhyYY6rSNM1sjjyTuUl5rfS8hGNPJ
+NJKJYK0PL60venTn6hPXzv0rn2oeH41+HID/6RtmiMnaPAk++TKjWRgV8vauRBb/35REo6lPsM42
+MN5uZVeBPy7MBEhq3xJkRrKW
\ No newline at end of file
diff --git a/src/tests/integration/Actions/actionChangeDelCostsTest.php b/src/tests/integration/Actions/actionChangeDelCostsTest.php
index 7a0b5131..b3aad408 100644
--- a/src/tests/integration/Actions/actionChangeDelCostsTest.php
+++ b/src/tests/integration/Actions/actionChangeDelCostsTest.php
@@ -19,6 +19,7 @@ namespace D3\Ordermanager\tests\integration\Actions;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Modules\Application\Model\d3_oxorder_ordermanager;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Application\Model\Order;
@@ -26,6 +27,7 @@ use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
use OxidEsales\Eshop\Core\Model\ListModel;
+use OxidEsales\Eshop\Core\Registry;
class actionChangeDelCostsTest extends d3OrdermanagerActionIntegrationTestCase
{
@@ -64,14 +66,14 @@ class actionChangeDelCostsTest extends d3OrdermanagerActionIntegrationTestCase
$this->createOrder(
$this->aOrderIdList[0],
- array(
+ [
'oxorderdate' => '2018-01-01 00:00:00',
'oxdelcost' => $this->dCurrentValue,
'oxcurrate' => 1,
'oxbillcompany' => __CLASS__,
- ),
- array(
- $this->aOrderArticleIdList[0] => array(
+ ],
+ [
+ $this->aOrderArticleIdList[0] => [
'oxartnum' => 'expArtNum1',
'oxtitle' => 'expTitle1',
'oxshortdesc' => 'expShortDesc1',
@@ -79,8 +81,8 @@ class actionChangeDelCostsTest extends d3OrdermanagerActionIntegrationTestCase
'oxpersparam' => 'expPersParam1',
'oxstorno' => '0',
'oxartid' => $this->aArticleIdList[0],
- ),
- )
+ ],
+ ]
);
$this->createArticle(
@@ -115,9 +117,7 @@ class actionChangeDelCostsTest extends d3OrdermanagerActionIntegrationTestCase
}
/**
- * @throws DatabaseConnectionException
- * @throws DatabaseErrorException
- * @throws Exception
+ * @throws DBALException
*/
public function cleanTestData()
{
@@ -194,9 +194,14 @@ class actionChangeDelCostsTest extends d3OrdermanagerActionIntegrationTestCase
*/
public function actionChangeConcernedOrderDotPrice()
{
+ // prevent save trigger action in test
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+
$oExecute = $this->getExecuteMock($this->getConfiguredManagerDot());
$oExecute->startJobItemExecution();
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+
/** @var Order $oOrder */
$oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class);
$oOrder->load($this->aOrderIdList[0]);
@@ -226,9 +231,15 @@ class actionChangeDelCostsTest extends d3OrdermanagerActionIntegrationTestCase
*/
public function actionChangeConcernedOrderCommaPrice()
{
+ // prevent save trigger action in test
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+
$oExecute = $this->getExecuteMock($this->getConfiguredManagerComma());
$oExecute->startJobItemExecution();
+ // prevent save trigger action in test
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+
/** @var Order $oOrder */
$oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class);
$oOrder->load($this->aOrderIdList[0]);
diff --git a/src/tests/integration/Actions/actionChangeDiscountTest.php b/src/tests/integration/Actions/actionChangeDiscountTest.php
index 35998b8e..2a2e2466 100644
--- a/src/tests/integration/Actions/actionChangeDiscountTest.php
+++ b/src/tests/integration/Actions/actionChangeDiscountTest.php
@@ -19,6 +19,7 @@ namespace D3\Ordermanager\tests\integration\Actions;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Modules\Application\Model\d3_oxorder_ordermanager;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Application\Model\Order;
@@ -26,6 +27,7 @@ use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
use OxidEsales\Eshop\Core\Model\ListModel;
+use OxidEsales\Eshop\Core\Registry;
class actionChangeDiscountTest extends d3OrdermanagerActionIntegrationTestCase
{
@@ -93,9 +95,7 @@ class actionChangeDiscountTest extends d3OrdermanagerActionIntegrationTestCase
}
/**
- * @throws DatabaseConnectionException
- * @throws DatabaseErrorException
- * @throws Exception
+ * @throws DBALException
*/
public function cleanTestData()
{
@@ -170,9 +170,14 @@ class actionChangeDiscountTest extends d3OrdermanagerActionIntegrationTestCase
*/
public function actionChangeConcernedOrderDotPrice()
{
+ // prevent save trigger action in test
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+
$oExecute = $this->getExecuteMock($this->getConfiguredManagerDot());
$oExecute->startJobItemExecution();
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+
/** @var Order $oOrder */
$oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class);
$oOrder->load($this->aOrderIdList[0]);
@@ -202,9 +207,14 @@ class actionChangeDiscountTest extends d3OrdermanagerActionIntegrationTestCase
*/
public function actionChangeConcernedOrderCommaPrice()
{
+ // prevent save trigger action in test
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+
$oExecute = $this->getExecuteMock($this->getConfiguredManagerComma());
$oExecute->startJobItemExecution();
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+
/** @var Order $oOrder */
$oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class);
$oOrder->load($this->aOrderIdList[0]);
diff --git a/src/tests/integration/Actions/actionDeleteOrderTest.php b/src/tests/integration/Actions/actionDeleteOrderTest.php
index eebe14eb..71656503 100644
--- a/src/tests/integration/Actions/actionDeleteOrderTest.php
+++ b/src/tests/integration/Actions/actionDeleteOrderTest.php
@@ -102,9 +102,7 @@ class actionDeleteOrderTest extends d3OrdermanagerActionIntegrationTestCase
}
/**
- * @throws DatabaseConnectionException
- * @throws DatabaseErrorException
- * @throws Exception
+ * @throws DBALException
*/
public function cleanTestData()
{
diff --git a/src/tests/integration/Actions/actionExecuteMethodTest.php b/src/tests/integration/Actions/actionExecuteMethodTest.php
index 6cb45834..b3627d31 100644
--- a/src/tests/integration/Actions/actionExecuteMethodTest.php
+++ b/src/tests/integration/Actions/actionExecuteMethodTest.php
@@ -19,6 +19,7 @@ namespace D3\Ordermanager\tests\integration\Actions;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Modules\Application\Model\d3_oxorder_ordermanager;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Application\Model\Order;
@@ -26,6 +27,7 @@ use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
use OxidEsales\Eshop\Core\Model\ListModel;
+use OxidEsales\Eshop\Core\Registry;
class actionExecuteMethodTest extends d3OrdermanagerActionIntegrationTestCase
{
@@ -102,9 +104,7 @@ class actionExecuteMethodTest extends d3OrdermanagerActionIntegrationTestCase
}
/**
- * @throws DatabaseConnectionException
- * @throws DatabaseErrorException
- * @throws Exception
+ * @throws DBALException
*/
public function cleanTestData()
{
@@ -151,9 +151,14 @@ class actionExecuteMethodTest extends d3OrdermanagerActionIntegrationTestCase
*/
public function actionChangeConcernedOrder()
{
+ // prevent save trigger action in test
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+
$oExecute = $this->getExecuteMock($this->getConfiguredManager());
$oExecute->startJobItemExecution();
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+
/** @var Order $oOrder */
$oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class);
$oOrder->load($this->aOrderIdList[0]);
diff --git a/src/tests/integration/Actions/actionMoveOrderToFolderTest.php b/src/tests/integration/Actions/actionMoveOrderToFolderTest.php
index 2204a007..ee43e3c1 100644
--- a/src/tests/integration/Actions/actionMoveOrderToFolderTest.php
+++ b/src/tests/integration/Actions/actionMoveOrderToFolderTest.php
@@ -19,6 +19,7 @@ namespace D3\Ordermanager\tests\integration\Actions;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Modules\Application\Model\d3_oxorder_ordermanager;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Application\Model\Order;
@@ -27,6 +28,7 @@ use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
use OxidEsales\Eshop\Core\Model\ListModel;
+use OxidEsales\Eshop\Core\Registry;
class actionMoveOrderToFolderTest extends d3OrdermanagerActionIntegrationTestCase
{
@@ -66,9 +68,7 @@ class actionMoveOrderToFolderTest extends d3OrdermanagerActionIntegrationTestCas
}
/**
- * @throws DatabaseConnectionException
- * @throws DatabaseErrorException
- * @throws Exception
+ * @throws DBALException
*/
public function cleanTestData()
{
@@ -138,9 +138,14 @@ class actionMoveOrderToFolderTest extends d3OrdermanagerActionIntegrationTestCas
)
);
+ // prevent save trigger action in test
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+
$oExecute = $this->getExecuteMock($this->getConfiguredManagerExistingFolder());
$oExecute->startJobItemExecution();
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+
/** @var Order $oOrder */
$oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class);
$oOrder->load($this->aOrderIdList[0]);
@@ -179,9 +184,14 @@ class actionMoveOrderToFolderTest extends d3OrdermanagerActionIntegrationTestCas
)
);
+ // prevent save trigger action in test
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+
$oExecute = $this->getExecuteMock($this->getConfiguredManagerNotExistingFolder());
$oExecute->startJobItemExecution();
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+
/** @var Order $oOrder */
$oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class);
$oOrder->load($this->aOrderIdList[0]);
diff --git a/src/tests/integration/Actions/actionSetFieldValueTest.php b/src/tests/integration/Actions/actionSetFieldValueTest.php
index f038ddd6..01b0c68a 100644
--- a/src/tests/integration/Actions/actionSetFieldValueTest.php
+++ b/src/tests/integration/Actions/actionSetFieldValueTest.php
@@ -19,6 +19,7 @@ namespace D3\Ordermanager\tests\integration\Actions;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Modules\Application\Model\d3_oxorder_ordermanager;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Application\Model\Order;
@@ -26,6 +27,7 @@ use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
use OxidEsales\Eshop\Core\Model\ListModel;
+use OxidEsales\Eshop\Core\Registry;
class actionSetFieldValueTest extends d3OrdermanagerActionIntegrationTestCase
{
@@ -65,9 +67,7 @@ class actionSetFieldValueTest extends d3OrdermanagerActionIntegrationTestCase
}
/**
- * @throws DatabaseConnectionException
- * @throws DatabaseErrorException
- * @throws Exception
+ * @throws DBALException
*/
public function cleanTestData()
{
@@ -100,7 +100,7 @@ class actionSetFieldValueTest extends d3OrdermanagerActionIntegrationTestCase
{
$oManager = $this->getManagerMock($this->sManagerId);
- $oManager->setValue('blActionOrder2Folder_status', true);
+ $oManager->setValue('blActionOrderAddFieldValue_status', true);
$oManager->setValue('sActionAddField_field', 'd3TestField');
$oManager->setValue('sActionAddField_value', $this->sExpectedValue);
$oManager->setValue('blItemExecute', true);
@@ -116,7 +116,7 @@ class actionSetFieldValueTest extends d3OrdermanagerActionIntegrationTestCase
{
$oManager = $this->getManagerMock($this->sManagerId);
- $oManager->setValue('blActionOrder2Folder_status', true);
+ $oManager->setValue('blActionOrderAddFieldValue_status', true);
$oManager->setValue('sActionAddField_field', 'd3TestField_1');
$oManager->setValue('sActionAddField_value', $this->sExpectedValue);
$oManager->setValue('blItemExecute', true);
@@ -145,9 +145,14 @@ class actionSetFieldValueTest extends d3OrdermanagerActionIntegrationTestCase
*/
public function actionChangeConcernedOrderExistingSingleLangField()
{
+ // prevent save trigger action in test
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+
$oExecute = $this->getExecuteMock($this->getConfiguredManagerExistingSingleLangField());
$oExecute->startJobItemExecution();
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+
/** @var Order $oOrder */
$oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class);
$oOrder->load($this->aOrderIdList[0]);
@@ -177,9 +182,14 @@ class actionSetFieldValueTest extends d3OrdermanagerActionIntegrationTestCase
*/
public function actionChangeConcernedOrderNotExistingSingleLangField()
{
+ // prevent save trigger action in test
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+
$oExecute = $this->getExecuteMock($this->getConfiguredManagerNotExistingSingleLangField());
$oExecute->startJobItemExecution();
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+
/** @var Order $oOrder */
$oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class);
$oOrder->load($this->aOrderIdList[0]);
@@ -207,9 +217,14 @@ class actionSetFieldValueTest extends d3OrdermanagerActionIntegrationTestCase
*/
public function actionChangeConcernedOrderNotExistingMultiLangField()
{
+ // prevent save trigger action in test
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+
$oExecute = $this->getExecuteMock($this->getConfiguredManagerNotExistingMultiLangField());
$oExecute->startJobItemExecution();
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+
/** @var Order $oOrder */
$oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class);
$oOrder->load($this->aOrderIdList[0]);
diff --git a/src/tests/integration/Actions/actionSetPaidDateTest.php b/src/tests/integration/Actions/actionSetPaidDateTest.php
index 2db8a931..4eb6f71c 100644
--- a/src/tests/integration/Actions/actionSetPaidDateTest.php
+++ b/src/tests/integration/Actions/actionSetPaidDateTest.php
@@ -19,6 +19,7 @@ namespace D3\Ordermanager\tests\integration\Actions;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Modules\Application\Model\d3_oxorder_ordermanager;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Application\Model\Order;
@@ -26,6 +27,7 @@ use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
use OxidEsales\Eshop\Core\Model\ListModel;
+use OxidEsales\Eshop\Core\Registry;
class actionSetPaidDateTest extends d3OrdermanagerActionIntegrationTestCase
{
@@ -64,9 +66,7 @@ class actionSetPaidDateTest extends d3OrdermanagerActionIntegrationTestCase
}
/**
- * @throws DatabaseConnectionException
- * @throws DatabaseErrorException
- * @throws Exception
+ * @throws DBALException
*/
public function cleanTestData()
{
@@ -110,9 +110,14 @@ class actionSetPaidDateTest extends d3OrdermanagerActionIntegrationTestCase
*/
public function actionChangeConcernedOrder()
{
+ // prevent save trigger action in test
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+
$oExecute = $this->getExecuteMock($this->getConfiguredManager());
$oExecute->startJobItemExecution();
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+
/** @var Order $oOrder */
$oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class);
$oOrder->load($this->aOrderIdList[0]);
diff --git a/src/tests/integration/Actions/actionSetSendedNowDateTest.php b/src/tests/integration/Actions/actionSetSendedNowDateTest.php
index 2ffe7bff..7b495f8a 100644
--- a/src/tests/integration/Actions/actionSetSendedNowDateTest.php
+++ b/src/tests/integration/Actions/actionSetSendedNowDateTest.php
@@ -19,6 +19,7 @@ namespace D3\Ordermanager\tests\integration\Actions;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Modules\Application\Model\d3_oxorder_ordermanager;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Application\Model\Order;
@@ -26,6 +27,7 @@ use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
use OxidEsales\Eshop\Core\Model\ListModel;
+use OxidEsales\Eshop\Core\Registry;
class actionSetSendedNowDateTest extends d3OrdermanagerActionIntegrationTestCase
{
@@ -64,9 +66,7 @@ class actionSetSendedNowDateTest extends d3OrdermanagerActionIntegrationTestCase
}
/**
- * @throws DatabaseConnectionException
- * @throws DatabaseErrorException
- * @throws Exception
+ * @throws DBALException
*/
public function cleanTestData()
{
@@ -110,9 +110,14 @@ class actionSetSendedNowDateTest extends d3OrdermanagerActionIntegrationTestCase
*/
public function actionChangeConcernedOrder()
{
+ // prevent save trigger action in test
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+
$oExecute = $this->getExecuteMock($this->getConfiguredManager());
$oExecute->startJobItemExecution();
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+
/** @var Order $oOrder */
$oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class);
$oOrder->load($this->aOrderIdList[0]);
diff --git a/src/tests/integration/Actions/actionStornoOrderTest.php b/src/tests/integration/Actions/actionStornoOrderTest.php
index 787b303f..903de056 100644
--- a/src/tests/integration/Actions/actionStornoOrderTest.php
+++ b/src/tests/integration/Actions/actionStornoOrderTest.php
@@ -19,6 +19,7 @@ namespace D3\Ordermanager\tests\integration\Actions;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Modules\Application\Model\d3_oxorder_ordermanager;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Application\Model\Order;
@@ -27,6 +28,7 @@ use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
use OxidEsales\Eshop\Core\Model\ListModel;
+use OxidEsales\Eshop\Core\Registry;
use PHPUnit_Framework_MockObject_Matcher_InvokedCount;
class actionStornoOrderTest extends d3OrdermanagerActionIntegrationTestCase
@@ -109,9 +111,7 @@ class actionStornoOrderTest extends d3OrdermanagerActionIntegrationTestCase
}
/**
- * @throws DatabaseConnectionException
- * @throws DatabaseErrorException
- * @throws Exception
+ * @throws DBALException
*/
public function cleanTestData()
{
@@ -157,9 +157,14 @@ class actionStornoOrderTest extends d3OrdermanagerActionIntegrationTestCase
*/
public function actionChangeConcernedOrder()
{
+ // prevent save trigger action in test
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+
$oExecute = $this->getExecuteMock($this->getConfiguredManager());
$oExecute->startJobItemExecution();
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+
/** @var Order $oOrder */
$oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class);
$oOrder->load($this->aOrderIdList[0]);
diff --git a/src/tests/integration/Actions/d3OrdermanagerActionIntegrationTestCase.php b/src/tests/integration/Actions/d3OrdermanagerActionIntegrationTestCase.php
index 39ed8ad2..05c8cdfb 100644
--- a/src/tests/integration/Actions/d3OrdermanagerActionIntegrationTestCase.php
+++ b/src/tests/integration/Actions/d3OrdermanagerActionIntegrationTestCase.php
@@ -36,7 +36,7 @@ abstract class d3OrdermanagerActionIntegrationTestCase extends d3OrdermanagerInt
public function getResultList($aOrderIdList = array())
{
/** @var ListModel $oList */
- $oList = d3GetModCfgDIC()->get('d3ox.ordermanager.'.ListModel::class);;
+ $oList = d3GetModCfgDIC()->get('d3ox.ordermanager.'.ListModel::class);
$oList->init(Order::class);
foreach ($aOrderIdList as $sId) {
@@ -94,4 +94,4 @@ abstract class d3OrdermanagerActionIntegrationTestCase extends d3OrdermanagerInt
return $oExecute;
}
-}
\ No newline at end of file
+}
diff --git a/src/tests/integration/Admin/jobExecuteTest.php b/src/tests/integration/Admin/jobExecuteTest.php
new file mode 100644
index 00000000..c7399610
--- /dev/null
+++ b/src/tests/integration/Admin/jobExecuteTest.php
@@ -0,0 +1,389 @@
+
+ * @link https://www.oxidmodule.com
+ */
+
+namespace D3\Ordermanager\tests\integration\Admin;
+
+use D3\Ordermanager\Application\Controller\Admin\d3_ordermanager_jobs;
+use D3\Ordermanager\Application\Model\d3ordermanager as Manager;
+use D3\Ordermanager\Modules\Application\Model\d3_oxorder_ordermanager;
+use D3\Ordermanager\tests\integration\d3OrdermanagerIntegrationTestCase as d3IntegrationTestCase;
+use Exception;
+use OxidEsales\Eshop\Application\Model\Order as Item;
+use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
+use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
+use OxidEsales\Eshop\Core\Registry;
+use ReflectionException;
+
+class jobExecuteTest extends d3IntegrationTestCase
+{
+ /** @var d3_ordermanager_jobs */
+ public $_oController;
+ public $sManagerId = 'managerTestId';
+ public $aArticleIdList = array(
+ 'articleTestIdNo1'
+ );
+ public $aCountryIdList = [
+ 'testCountryId1Pass'
+ ];
+ public $aOrderIdList = array(
+ 'orderTestIdNo1'
+ );
+ public $aOrderArticleIdList = array(
+ 'orderTestIdNo1Article1'
+ );
+
+ public $dCurrentValue = 1.23;
+ public $dExpectedValue = 2.34;
+
+ public function setUp()
+ {
+ parent::setUp();
+
+ $this->_oController = oxNew(d3_ordermanager_jobs::class);
+ }
+
+ /**
+ * @throws Exception
+ */
+ public function createTestData()
+ {
+ $this->createManager($this->sManagerId);
+
+ foreach ($this->aCountryIdList as $sId) {
+ $this->createBaseModelObject( 'oxcountry', $sId, [ 'oxtitle' => __METHOD__ ] );
+ }
+
+ $this->createOrder(
+ $this->aOrderIdList[0],
+ array(
+ 'oxorderdate' => '2018-01-01 00:00:00',
+ 'oxdelcost' => $this->dCurrentValue,
+ 'oxcurrate' => 1,
+ 'oxbillcountryid' => $this->aCountryIdList[0],
+ 'oxdelcountryid' => '',
+ 'oxbillcompany' => __CLASS__,
+ ),
+ array(
+ $this->aOrderArticleIdList[0] => array(
+ 'oxartnum' => 'expArtNum1',
+ 'oxtitle' => 'expTitle1',
+ 'oxshortdesc' => 'expShortDesc1',
+ 'oxselvariant' => 'expSelVariant1',
+ 'oxpersparam' => 'expPersParam1',
+ 'oxstorno' => '0',
+ 'oxartid' => $this->aArticleIdList[0],
+ ),
+ )
+ );
+
+ $this->getConfiguredManager()->save();
+ }
+
+ /**
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws Exception
+ */
+ public function cleanTestData()
+ {
+ $this->deleteManager($this->sManagerId);
+
+ foreach ($this->aCountryIdList as $sId) {
+ $this->deleteBaseModelObject( 'oxcountry', $sId);
+ }
+
+ $this->deleteOrder($this->aOrderIdList[0]);
+ }
+
+ /**
+ * @return Manager
+ * @throws Exception
+ */
+ public function getConfiguredManager()
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->assign(
+ array(
+ 'D3_CRONJOBID' => 'testId'
+ )
+ );
+
+ $oManager->setValue('blActionOrderChangeDeliveryCost_status', true);
+ $oManager->setValue('sActionChangeDelCostValue', $this->dExpectedValue);
+
+ $oManager->setValue('blCheckCountry_status', true);
+ $oManager->setValue( 'sCustCountryId', [ $this->aCountryIdList[0] ] );
+
+ $oManager->setValue('blItemExecute', true);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @throws ReflectionException
+ * @dataProvider execMethodDataProvider
+ */
+ public function testExecOrdermanagerOk($methodname)
+ {
+ $_GET['ordermanagerid'] = $this->sManagerId;
+ $_GET['oxid'] = $this->aOrderIdList[0];
+
+ // prevent trigger action in test preparation
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_FINALIZEORDER, true);
+
+ $this->callMethod(
+ $this->_oController,
+ $methodname
+ );
+
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_FINALIZEORDER, false);
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[0]);
+ $this->assertSame(
+ round((float) $this->dExpectedValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+ }
+
+ /**
+ * @test
+ * @throws ReflectionException
+ * @dataProvider execMethodDataProvider
+ */
+ public function testExecOrdermanagerInvalidRequirementConfigUnchecked($methodname)
+ {
+ $_GET['ordermanagerid'] = $this->sManagerId;
+ $_GET['oxid'] = $this->aOrderIdList[0];
+
+ $manager = $this->getConfiguredManager();
+ $manager->setValue( 'sCustCountryId', [ 'notExistingCountryId' ] );
+ $manager->setValue( 'sManuallyExecMeetCondition', false );
+ $manager->save();
+
+ // prevent trigger action in test preparation
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_FINALIZEORDER, true);
+
+ $this->callMethod(
+ $this->_oController,
+ $methodname
+ );
+
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_FINALIZEORDER, false);
+
+ $this->getConfiguredManager()->save();
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[0]);
+ $this->assertSame(
+ round((float) $this->dExpectedValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+ }
+
+ /**
+ * @test
+ * @throws ReflectionException
+ * @dataProvider execMethodDataProvider
+ */
+ public function testExecOrdermanagerInvalidRequirementConfigChecked($methodname)
+ {
+ $_GET['ordermanagerid'] = $this->sManagerId;
+ $_GET['oxid'] = $this->aOrderIdList[0];
+
+ $manager = $this->getConfiguredManager();
+ $manager->setValue( 'sCustCountryId', [ 'notExistingCountryId' ] );
+ $manager->setValue( 'sManuallyExecMeetCondition', true );
+ $manager->save();
+
+ $this->callMethod(
+ $this->_oController,
+ $methodname
+ );
+
+ $this->getConfiguredManager()->save();
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[0]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+ }
+
+ /**
+ * @test
+ * @throws ReflectionException
+ * @dataProvider execMethodDataProvider
+ */
+ public function testExecOrdermanagerInvalidActionConfig($methodname)
+ {
+ $_GET['ordermanagerid'] = $this->sManagerId;
+ $_GET['oxid'] = $this->aOrderIdList[0];
+
+ $manager = $this->getConfiguredManager();
+ $manager->setValue('sActionChangeDelCostValue', 'invalid');
+ $manager->save();
+
+ $this->callMethod(
+ $this->_oController,
+ $methodname
+ );
+
+ $this->getConfiguredManager()->save();
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[0]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+ }
+
+ /**
+ * @return string[][]
+ */
+ public function execMethodDataProvider()
+ {
+ return [
+ 'instantExecute' => ['d3execordermanager'],
+ 'changedContentExecute' => ['d3ExecChangedOrderManager']
+ ];
+ }
+
+ /**
+ * @test
+ * @throws ReflectionException
+ */
+ public function testExecChangedContentsOk()
+ {
+ $_GET['ordermanagerid'] = $this->sManagerId;
+ $_GET['oxid'] = $this->aOrderIdList[0];
+
+ $this->callMethod(
+ $this->_oController,
+ 'execChangedContents'
+ );
+
+ $this->assertInternalType(
+ 'array',
+ $this->callMethod(
+ $this->_oController,
+ 'getViewDataElement',
+ ['aMailContent']
+ )
+ );
+ }
+
+ /**
+ * @test
+ * @throws ReflectionException
+ */
+ public function testExecChangedContentsInvalidRequirementConfigUnchecked()
+ {
+ $_GET['ordermanagerid'] = $this->sManagerId;
+ $_GET['oxid'] = $this->aOrderIdList[0];
+
+ $manager = $this->getConfiguredManager();
+ $manager->setValue( 'sCustCountryId', [ 'notExistingCountryId' ] );
+ $manager->setValue( 'sManuallyExecMeetCondition', false );
+ $manager->save();
+
+ $this->callMethod(
+ $this->_oController,
+ 'execChangedContents'
+ );
+
+ $this->getConfiguredManager()->save();
+
+ $this->assertInternalType(
+ 'array',
+ $this->callMethod(
+ $this->_oController,
+ 'getViewDataElement',
+ ['aMailContent']
+ )
+ );
+ }
+
+ /**
+ * @test
+ * @throws ReflectionException
+ */
+ public function testExecChangedContentsInvalidRequirementConfigChecked()
+ {
+ $_GET['ordermanagerid'] = $this->sManagerId;
+ $_GET['oxid'] = $this->aOrderIdList[0];
+
+ $manager = $this->getConfiguredManager();
+ $manager->setValue( 'sCustCountryId', [ 'notExistingCountryId' ] );
+ $manager->setValue( 'sManuallyExecMeetCondition', true );
+ $manager->save();
+
+ $this->callMethod(
+ $this->_oController,
+ 'execChangedContents'
+ );
+
+ $this->getConfiguredManager()->save();
+
+ $this->assertNull(
+ $this->callMethod(
+ $this->_oController,
+ 'getViewDataElement',
+ ['aMailContent']
+ )
+ );
+ }
+
+ /**
+ * @test
+ * @throws ReflectionException
+ */
+ public function testExecChangedContentsInvalidActionConfig()
+ {
+ $_GET['ordermanagerid'] = $this->sManagerId;
+ $_GET['oxid'] = $this->aOrderIdList[0];
+
+ $manager = $this->getConfiguredManager();
+ $manager->setValue('sActionChangeDelCostValue', 'invalid');
+ $manager->save();
+
+ $this->callMethod(
+ $this->_oController,
+ 'execChangedContents'
+ );
+
+ $this->getConfiguredManager()->save();
+
+ $this->assertNull(
+ $this->callMethod(
+ $this->_oController,
+ 'getViewDataElement',
+ ['aMailContent']
+ )
+ );
+ }
+}
diff --git a/src/tests/integration/Requirements/requirementArticleContentTest.php b/src/tests/integration/Requirements/requirementArticleContentTest.php
index 7c7d523c..956dd510 100644
--- a/src/tests/integration/Requirements/requirementArticleContentTest.php
+++ b/src/tests/integration/Requirements/requirementArticleContentTest.php
@@ -19,12 +19,14 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Application\Model\Object2Category;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
class requirementArticleContentTest extends d3OrdermanagerRequirementIntegrationTestCase
{
@@ -410,4 +412,55 @@ class requirementArticleContentTest extends d3OrdermanagerRequirementIntegration
&& false == $oOrderList->offsetExists($this->aOrderIdList[3])
);
}
+
+ /**
+ * @param $invalidValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function getConfiguredManagerNoValidConfig($invalidValue)
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->setValue('blCheckOrderArticle1_status', true);
+ $oManager->setValue('sArticleContent1Type', $invalidValue);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @param $orderNrValue
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
+ */
+ public function requirementsSelectsRightOrdersNoValidConfig($orderNrValue)
+ {
+ $this->setExpectedException(d3ordermanager_requirementException::class);
+
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($orderNrValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'unknown'=> ['unknownValue'],
+ 'space' => [' '],
+ 'empty' => [''],
+ 'false' => [false]
+ ];
+ }
}
diff --git a/src/tests/integration/Requirements/requirementCountryFilterTest.php b/src/tests/integration/Requirements/requirementCountryFilterTest.php
index f75c206d..642fbc44 100644
--- a/src/tests/integration/Requirements/requirementCountryFilterTest.php
+++ b/src/tests/integration/Requirements/requirementCountryFilterTest.php
@@ -19,27 +19,35 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
class requirementCountryFilterTest extends d3OrdermanagerRequirementIntegrationTestCase
{
public $sManagerId = 'managerTestId';
- public $aOrderIdList = array(
+ public $aCountryIdList = [
+ 'testCountryId1Pass',
+ 'testCountryId2Pass',
+ 'testCountryId3Pass',
+ 'testCountryIdDontPass',
+ ];
+ public $aOrderIdList = [
'orderTestIdNo1',
'orderTestIdNo2',
'orderTestIdNo3',
'orderTestIdNo4',
- );
- public $aOrderArticleIdList = array(
+ ];
+ public $aOrderArticleIdList = [
'orderTestIdNo1Article1',
'orderTestIdNo2Article1',
'orderTestIdNo3Article1',
'orderTestIdNo4Article1',
- );
+ ];
/**
* Set up fixture.
@@ -73,64 +81,74 @@ class requirementCountryFilterTest extends d3OrdermanagerRequirementIntegrationT
$this->sManagerId
);
+ foreach ($this->aCountryIdList as $sCountryId) {
+ $this->createBaseModelObject(
+ 'oxcountry',
+ $sCountryId,
+ [
+ 'oxtitle' => __METHOD__
+ ]
+ );
+ }
+
$this->createOrder(
$this->aOrderIdList[0],
- array(
+ [
'oxorderdate' => '2018-01-01 00:00:00',
'oxbillcompany' => __CLASS__,
- 'oxbillcountryid' => 'testCountryId1Pass',
+ 'oxbillcountryid' => $this->aCountryIdList[0], // passed
'oxdelcountryid' => '',
- ),
- array(
- $this->aOrderArticleIdList[0] => array(
+ ],
+ [
+ $this->aOrderArticleIdList[0] => [
'oxtitle' => __CLASS__,
- )
- )
+ ]
+ ]
);
$this->createOrder(
$this->aOrderIdList[1],
- array(
+ [
'oxorderdate' => '2018-01-01 00:00:00',
'oxbillcompany' => __CLASS__,
- 'oxbillcountryid' => 'testCountryIdDontPass',
- 'oxdelcountryid' => 'testCountryId2Pass',
- ),
- array(
- $this->aOrderArticleIdList[1] => array(
+ 'oxbillcountryid' => $this->aCountryIdList[3], // don't pass
+ 'oxdelcountryid' => $this->aCountryIdList[1], // passed
+ ],
+ [
+ $this->aOrderArticleIdList[1] => [
'oxtitle' => __CLASS__,
- )
- )
+ ]
+ ]
);
$this->createOrder(
$this->aOrderIdList[2],
- array(
+ [
'oxorderdate' => '2018-01-01 00:00:00',
'oxbillcompany' => __CLASS__,
- 'oxbillcountryid' => 'testCountryId3Pass',
- 'oxdelcountryid' => 'testCountryId3Pass',
- ),
- array(
- $this->aOrderArticleIdList[2] => array(
+ 'oxbillcountryid' => $this->aCountryIdList[2], // passed
+ 'oxdelcountryid' => $this->aCountryIdList[2] // passed
+ ],
+ [
+ $this->aOrderArticleIdList[2] => [
'oxtitle' => __CLASS__,
- )
- )
+ ]
+ ]
);
$this->createOrder(
$this->aOrderIdList[3],
- array(
+ [
'oxorderdate' => '2018-01-01 00:00:00',
'oxbillcompany' => __CLASS__,
- 'oxbillcountryid' => 'testCountryIdDontPass',
- 'oxdelcountryid' => 'testCountryIdDontPass',
- ),
- array(
- $this->aOrderArticleIdList[3] => array(
+ 'oxbillcountryid' => $this->aCountryIdList[3], // don't pass
+ 'oxdelcountryid' => $this->aCountryIdList[3], // don't pass
+ ],
+ [
+ $this->aOrderArticleIdList[3] => [
'oxtitle' => __CLASS__,
- )
- )
+ ]
+ ]
);
}
@@ -143,6 +161,13 @@ class requirementCountryFilterTest extends d3OrdermanagerRequirementIntegrationT
{
$this->deleteManager($this->sManagerId);
+ foreach ($this->aCountryIdList as $sCountryId) {
+ $this->deleteBaseModelObject(
+ 'oxcountry',
+ $sCountryId
+ );
+ }
+
foreach ($this->aOrderIdList as $sOrderId) {
$this->deleteOrder($sOrderId);
}
@@ -157,7 +182,7 @@ class requirementCountryFilterTest extends d3OrdermanagerRequirementIntegrationT
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckCountry_status', true);
- $oManager->setValue('sCustCountryId', array('testCountryId1Pass'));
+ $oManager->setValue('sCustCountryId', array($this->aCountryIdList[0]));
return $oManager;
}
@@ -178,7 +203,7 @@ class requirementCountryFilterTest extends d3OrdermanagerRequirementIntegrationT
$oOrderList = $oListGenerator->getConcernedOrders();
$this->assertTrue(
- $oOrderList->count() === 1
+ $oOrderList->count() >= 1
&& $oOrderList->offsetExists($this->aOrderIdList[0])
&& false == $oOrderList->offsetExists($this->aOrderIdList[1])
&& false == $oOrderList->offsetExists($this->aOrderIdList[2])
@@ -195,7 +220,7 @@ class requirementCountryFilterTest extends d3OrdermanagerRequirementIntegrationT
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckCountry_status', true);
- $oManager->setValue('sCustCountryId', array('testCountryId2Pass'));
+ $oManager->setValue('sCustCountryId', array($this->aCountryIdList[1]));
return $oManager;
}
@@ -216,7 +241,7 @@ class requirementCountryFilterTest extends d3OrdermanagerRequirementIntegrationT
$oOrderList = $oListGenerator->getConcernedOrders();
$this->assertTrue(
- $oOrderList->count() === 1
+ $oOrderList->count() >= 1
&& $oOrderList->offsetExists($this->aOrderIdList[1])
&& false == $oOrderList->offsetExists($this->aOrderIdList[0])
&& false == $oOrderList->offsetExists($this->aOrderIdList[2])
@@ -233,7 +258,7 @@ class requirementCountryFilterTest extends d3OrdermanagerRequirementIntegrationT
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckCountry_status', true);
- $oManager->setValue('sCustCountryId', array('testCountryId3Pass'));
+ $oManager->setValue('sCustCountryId', array($this->aCountryIdList[2]));
return $oManager;
}
@@ -254,7 +279,7 @@ class requirementCountryFilterTest extends d3OrdermanagerRequirementIntegrationT
$oOrderList = $oListGenerator->getConcernedOrders();
$this->assertTrue(
- $oOrderList->count() === 1
+ $oOrderList->count() >= 1
&& $oOrderList->offsetExists($this->aOrderIdList[2])
&& false == $oOrderList->offsetExists($this->aOrderIdList[0])
&& false == $oOrderList->offsetExists($this->aOrderIdList[1])
@@ -271,7 +296,7 @@ class requirementCountryFilterTest extends d3OrdermanagerRequirementIntegrationT
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckCountry_status', true);
- $oManager->setValue('sCustCountryId', array('testCountryId1Pass', 'testCountryId2Pass'));
+ $oManager->setValue('sCustCountryId', [$this->aCountryIdList[0], $this->aCountryIdList[1]]);
return $oManager;
}
@@ -292,11 +317,62 @@ class requirementCountryFilterTest extends d3OrdermanagerRequirementIntegrationT
$oOrderList = $oListGenerator->getConcernedOrders();
$this->assertTrue(
- $oOrderList->count() === 2
+ $oOrderList->count() >= 2
&& $oOrderList->offsetExists($this->aOrderIdList[0])
&& $oOrderList->offsetExists($this->aOrderIdList[1])
&& false == $oOrderList->offsetExists($this->aOrderIdList[2])
&& false == $oOrderList->offsetExists($this->aOrderIdList[3])
);
}
+
+ /**
+ * @param $invalidValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function getConfiguredManagerNoValidConfig($invalidValue)
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->setValue('blCheckCountry_status', true);
+ $oManager->setValue('sCustCountryId', $invalidValue);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @param $testValue
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
+ */
+ public function requirementsSelectsRightOrdersNoValidConfig($testValue)
+ {
+ $this->setExpectedException(d3ordermanager_requirementException::class);
+
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($testValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'unknown'=> [['unknownValue']],
+ 'space' => [' '],
+ 'empty' => [''],
+ 'false' => [false]
+ ];
+ }
}
diff --git a/src/tests/integration/Requirements/requirementCurrencyFilterTest.php b/src/tests/integration/Requirements/requirementCurrencyFilterTest.php
index ab8d0729..b9fcfbe7 100644
--- a/src/tests/integration/Requirements/requirementCurrencyFilterTest.php
+++ b/src/tests/integration/Requirements/requirementCurrencyFilterTest.php
@@ -19,11 +19,13 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
class requirementCurrencyFilterTest extends d3OrdermanagerRequirementIntegrationTestCase
{
@@ -147,4 +149,55 @@ class requirementCurrencyFilterTest extends d3OrdermanagerRequirementIntegration
&& false == $oOrderList->offsetExists($this->aOrderIdList[1])
);
}
+
+ /**
+ * @param $invalidValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function getConfiguredManagerNoValidConfig($invalidValue)
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->setValue('blCheckCurrency_status', true);
+ $oManager->setValue('sCurrencyISOValue', $invalidValue);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @param $testValue
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
+ */
+ public function requirementsSelectsRightOrdersNoValidConfig($testValue)
+ {
+ $this->setExpectedException(d3ordermanager_requirementException::class);
+
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($testValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'unknown'=> ['unknownValue'],
+ 'space' => ['12'],
+ 'empty' => [''],
+ 'false' => [false]
+ ];
+ }
}
diff --git a/src/tests/integration/Requirements/requirementDateNotSetTest.php b/src/tests/integration/Requirements/requirementDateNotSetTest.php
index 88207cbb..9f54ff27 100644
--- a/src/tests/integration/Requirements/requirementDateNotSetTest.php
+++ b/src/tests/integration/Requirements/requirementDateNotSetTest.php
@@ -19,11 +19,13 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
class requirementDateNotSetTest extends d3OrdermanagerRequirementIntegrationTestCase
{
@@ -223,4 +225,55 @@ class requirementDateNotSetTest extends d3OrdermanagerRequirementIntegrationTest
&& false == $oOrderList->offsetExists($this->aOrderIdList[3])
);
}
+
+ /**
+ * @param $invalidValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function getConfiguredManagerNoValidConfig($invalidValue)
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->setValue('blCheckNotSetDate_status', true);
+ $oManager->setValue('sNotSetDateType', $invalidValue);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @param $testValue
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
+ */
+ public function requirementsSelectsRightOrdersNoValidConfig($testValue)
+ {
+ $this->setExpectedException(d3ordermanager_requirementException::class);
+
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($testValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'unknown'=> ['unknownValue'],
+ 'space' => [' '],
+ 'empty' => [''],
+ 'false' => [false]
+ ];
+ }
}
diff --git a/src/tests/integration/Requirements/requirementDeliveryFilterTest.php b/src/tests/integration/Requirements/requirementDeliveryFilterTest.php
index a6959a70..c1c55ea7 100644
--- a/src/tests/integration/Requirements/requirementDeliveryFilterTest.php
+++ b/src/tests/integration/Requirements/requirementDeliveryFilterTest.php
@@ -19,15 +19,22 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
class requirementDeliveryFilterTest extends d3OrdermanagerRequirementIntegrationTestCase
{
public $sManagerId = 'managerTestId';
+ public $aDeliveryIdList = [
+ 'sDelId1Pass',
+ 'sDelId2Pass',
+ 'sDelIdDontPass'
+ ];
public $aOrderIdList = array(
'orderTestIdNo1',
'orderTestIdNo2',
@@ -71,12 +78,20 @@ class requirementDeliveryFilterTest extends d3OrdermanagerRequirementIntegration
$this->sManagerId
);
+ foreach ($this->aDeliveryIdList as $delId) {
+ $this->createBaseModelObject(
+ 'oxdelivery',
+ $delId,
+ ['oxtitle' => __METHOD__]
+ );
+ }
+
$this->createOrder(
$this->aOrderIdList[0],
array(
'oxorderdate' => '2018-01-01 00:00:00',
'oxbillcompany' => __CLASS__,
- 'oxdeltype' => 'sDelId1Pass',
+ 'oxdeltype' => $this->aDeliveryIdList[0], // pass
),
array(
$this->aOrderArticleIdList[0] => array(
@@ -90,7 +105,7 @@ class requirementDeliveryFilterTest extends d3OrdermanagerRequirementIntegration
array(
'oxorderdate' => '2018-01-01 00:00:00',
'oxbillcompany' => __CLASS__,
- 'oxdeltype' => 'sDelId2Pass',
+ 'oxdeltype' => $this->aDeliveryIdList[1], // pass
),
array(
$this->aOrderArticleIdList[1] => array(
@@ -104,7 +119,7 @@ class requirementDeliveryFilterTest extends d3OrdermanagerRequirementIntegration
array(
'oxorderdate' => '2018-01-01 00:00:00',
'oxbillcompany' => __CLASS__,
- 'oxdeltype' => 'sDelId3Pass',
+ 'oxdeltype' => $this->aDeliveryIdList[2], // don't pass
),
array(
$this->aOrderArticleIdList[2] => array(
@@ -123,6 +138,13 @@ class requirementDeliveryFilterTest extends d3OrdermanagerRequirementIntegration
{
$this->deleteManager($this->sManagerId);
+ foreach ($this->aDeliveryIdList as $delId) {
+ $this->deleteBaseModelObject(
+ 'oxdelivery',
+ $delId
+ );
+ }
+
foreach ($this->aOrderIdList as $sOrderId) {
$this->deleteOrder($sOrderId);
}
@@ -137,7 +159,7 @@ class requirementDeliveryFilterTest extends d3OrdermanagerRequirementIntegration
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckDelivery_status', true);
- $oManager->setValue('sDeliveryId', array('sDelId1Pass'));
+ $oManager->setValue('sDeliveryId', array($this->aDeliveryIdList[0]));
return $oManager;
}
@@ -151,7 +173,7 @@ class requirementDeliveryFilterTest extends d3OrdermanagerRequirementIntegration
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckDelivery_status', true);
- $oManager->setValue('sDeliveryId', array('sDelId1Pass', 'sDelId2Pass'));
+ $oManager->setValue('sDeliveryId', array($this->aDeliveryIdList[0], $this->aDeliveryIdList[1]));
return $oManager;
}
@@ -201,4 +223,55 @@ class requirementDeliveryFilterTest extends d3OrdermanagerRequirementIntegration
&& false == $oOrderList->offsetExists($this->aOrderIdList[2])
);
}
+
+ /**
+ * @param $invalidValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function getConfiguredManagerNoValidConfig($invalidValue)
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->setValue('blCheckDelivery_status', true);
+ $oManager->setValue('sDeliveryId', $invalidValue);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @param $testValue
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
+ */
+ public function requirementsSelectsRightOrdersNoValidConfig($testValue)
+ {
+ $this->setExpectedException(d3ordermanager_requirementException::class);
+
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($testValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'unknown'=> ['unknownValue'],
+ 'space' => [' '],
+ 'empty' => [''],
+ 'false' => [false]
+ ];
+ }
}
diff --git a/src/tests/integration/Requirements/requirementExecuteMethodFilterTest.php b/src/tests/integration/Requirements/requirementExecuteMethodFilterTest.php
index 4ff1c0f0..97e9ee9a 100644
--- a/src/tests/integration/Requirements/requirementExecuteMethodFilterTest.php
+++ b/src/tests/integration/Requirements/requirementExecuteMethodFilterTest.php
@@ -19,13 +19,14 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
use OxidEsales\Eshop\Core\Model\ListModel;
-use PHPUnit_Framework_MockObject_MockObject;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
class requirementExecuteMethodFilterTest extends d3OrdermanagerRequirementIntegrationTestCase
{
@@ -143,17 +144,73 @@ class requirementExecuteMethodFilterTest extends d3OrdermanagerRequirementIntegr
{
$oListGenerator = $this->getListGenerator($this->getConfiguredManager());
- /** @var ListModel|PHPUnit_Framework_MockObject_MockObject $oListMock */
+ $definitions = d3GetModCfgDIC()->getDefinitions();
+
+ /** @var ListModel|MockObject $oListMock */
$oListMock = $this->getMock(ListModel::class, array('testChangeOrderList'));
$oListMock->expects($this->once())->method('testChangeOrderList')->willReturn(null);
d3GetModCfgDIC()->set('d3ox.ordermanager.'.ListModel::class, $oListMock);
$oOrderList = $oListGenerator->getConcernedOrders();
+ d3GetModCfgDIC()->reset();
+ d3GetModCfgDIC()->setDefinitions($definitions);
+
$this->assertTrue(
$oOrderList->count() >= 2
&& $oOrderList->offsetExists($this->aOrderIdList[0])
&& $oOrderList->offsetExists($this->aOrderIdList[1])
);
}
+
+ /**
+ * @param $invalidValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function getConfiguredManagerNoValidConfig($invalidValue)
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->setValue('blCheckExecuteMethod_status', true);
+ $oManager->setValue('sRequirementExecuteMethod_name', $invalidValue);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @param $testValue
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
+ */
+ public function requirementsSelectsRightOrdersNoValidConfig($testValue)
+ {
+ $this->setExpectedException(d3ordermanager_requirementException::class);
+
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($testValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'unknown'=> ['unknownValue'],
+ 'space' => [' '],
+ 'empty' => [''],
+ 'false' => [false]
+ ];
+ }
}
diff --git a/src/tests/integration/Requirements/requirementFolderFilterTest.php b/src/tests/integration/Requirements/requirementFolderFilterTest.php
index 4c49f0f4..373ca8aa 100644
--- a/src/tests/integration/Requirements/requirementFolderFilterTest.php
+++ b/src/tests/integration/Requirements/requirementFolderFilterTest.php
@@ -19,11 +19,14 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use Doctrine\DBAL\DBALException;
use Exception;
+use OxidEsales\Eshop\Core\Config;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
class requirementFolderFilterTest extends d3OrdermanagerRequirementIntegrationTestCase
{
@@ -33,6 +36,11 @@ class requirementFolderFilterTest extends d3OrdermanagerRequirementIntegrationTe
'orderTestIdNo2',
'orderTestIdNo3',
);
+ public $aOrderFolderIdList = [
+ 'sFolderId1Pass',
+ 'sFolderId2Pass',
+ 'sFolderId3Pass',
+ ];
public $aOrderArticleIdList = array(
'orderTestIdNo1Article1',
'orderTestIdNo2Article1',
@@ -71,12 +79,19 @@ class requirementFolderFilterTest extends d3OrdermanagerRequirementIntegrationTe
$this->sManagerId
);
+ $config = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Config::class);
+ $folders = $config->getConfigParam('aOrderfolder');
+ foreach ($this->aOrderFolderIdList as $sId) {
+ $folders[$sId] = '#000000';
+ }
+ $config->setConfigParam('aOrderfolder', $folders);
+
$this->createOrder(
$this->aOrderIdList[0],
array(
'oxorderdate' => '2018-01-01 00:00:00',
'oxbillcompany' => __CLASS__,
- 'oxfolder' => 'sFolderId1Pass',
+ 'oxfolder' => $this->aOrderFolderIdList[0],
),
array(
$this->aOrderArticleIdList[0] => array(
@@ -90,7 +105,7 @@ class requirementFolderFilterTest extends d3OrdermanagerRequirementIntegrationTe
array(
'oxorderdate' => '2018-01-01 00:00:00',
'oxbillcompany' => __CLASS__,
- 'oxfolder' => 'sFolderId2Pass',
+ 'oxfolder' => $this->aOrderFolderIdList[1],
),
array(
$this->aOrderArticleIdList[1] => array(
@@ -104,7 +119,7 @@ class requirementFolderFilterTest extends d3OrdermanagerRequirementIntegrationTe
array(
'oxorderdate' => '2018-01-01 00:00:00',
'oxbillcompany' => __CLASS__,
- 'oxfolder' => 'sFolderId3Pass',
+ 'oxfolder' => $this->aOrderFolderIdList[2],
),
array(
$this->aOrderArticleIdList[2] => array(
@@ -115,14 +130,19 @@ class requirementFolderFilterTest extends d3OrdermanagerRequirementIntegrationTe
}
/**
- * @throws DatabaseConnectionException
- * @throws DatabaseErrorException
- * @throws Exception
+ * @throws DBALException
*/
public function cleanTestData()
{
$this->deleteManager($this->sManagerId);
+ $config = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Config::class);
+ $folders = $config->getConfigParam('aOrderfolder');
+ foreach ($this->aOrderFolderIdList as $sId) {
+ unset($folders[$sId]);
+ }
+ $config->setConfigParam('aOrderfolder', $folders);
+
foreach ($this->aOrderIdList as $sOrderId) {
$this->deleteOrder($sOrderId);
}
@@ -137,7 +157,7 @@ class requirementFolderFilterTest extends d3OrdermanagerRequirementIntegrationTe
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckInFolder_status', true);
- $oManager->setValue('sInFolderId', array('sFolderId1Pass'));
+ $oManager->setValue( 'sInFolderId', [ $this->aOrderFolderIdList[0] ] );
return $oManager;
}
@@ -151,7 +171,7 @@ class requirementFolderFilterTest extends d3OrdermanagerRequirementIntegrationTe
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckInFolder_status', true);
- $oManager->setValue('sInFolderId', array('sFolderId1Pass', 'sFolderId2Pass'));
+ $oManager->setValue( 'sInFolderId', [ $this->aOrderFolderIdList[0], $this->aOrderFolderIdList[1] ] );
return $oManager;
}
@@ -201,4 +221,55 @@ class requirementFolderFilterTest extends d3OrdermanagerRequirementIntegrationTe
&& false == $oOrderList->offsetExists($this->aOrderIdList[2])
);
}
+
+ /**
+ * @param $invalidValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function getConfiguredManagerNoValidConfig($invalidValue)
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->setValue('blCheckInFolder_status', true);
+ $oManager->setValue('sInFolderId', $invalidValue);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @param $testValue
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
+ */
+ public function requirementsSelectsRightOrdersNoValidConfig($testValue)
+ {
+ $this->setExpectedException(d3ordermanager_requirementException::class);
+
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($testValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'unknown'=> ['unknownValue'],
+ 'space' => [' '],
+ 'empty' => [''],
+ 'false' => [false]
+ ];
+ }
}
diff --git a/src/tests/integration/Requirements/requirementFromOrderNrTest.php b/src/tests/integration/Requirements/requirementFromOrderNrTest.php
index 121449f2..65724c58 100644
--- a/src/tests/integration/Requirements/requirementFromOrderNrTest.php
+++ b/src/tests/integration/Requirements/requirementFromOrderNrTest.php
@@ -19,11 +19,13 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
class requirementFromOrderNrTest extends d3OrdermanagerRequirementIntegrationTestCase
{
@@ -164,4 +166,55 @@ class requirementFromOrderNrTest extends d3OrdermanagerRequirementIntegrationTes
&& false == $oOrderList->offsetExists($this->aOrderIdList[2])
);
}
+
+ /**
+ * @param $invalidValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function getConfiguredManagerNoValidConfig($invalidValue)
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->setValue('blCheckFromOrderNr_status', true);
+ $oManager->setValue('sFromOrderNrValue', $invalidValue);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @param $testValue
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
+ */
+ public function requirementsSelectsRightOrdersNoValidConfig($testValue)
+ {
+ $this->setExpectedException(d3ordermanager_requirementException::class);
+
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($testValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'unknown'=> [null],
+ 'space' => [' '],
+ 'empty' => [''],
+ 'false' => [false]
+ ];
+ }
}
diff --git a/src/tests/integration/Requirements/requirementInGroupFilterTest.php b/src/tests/integration/Requirements/requirementInGroupFilterTest.php
index d4dec46f..29fc8f17 100644
--- a/src/tests/integration/Requirements/requirementInGroupFilterTest.php
+++ b/src/tests/integration/Requirements/requirementInGroupFilterTest.php
@@ -19,30 +19,37 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
class requirementInGroupFilterTest extends d3OrdermanagerRequirementIntegrationTestCase
{
public $sManagerId = 'managerTestId';
- public $aOrderIdList = array(
+ public $aOrderIdList = [
'orderTestIdNo1',
'orderTestIdNo2',
'orderTestIdNo3',
- );
- public $aOrderArticleIdList = array(
+ ];
+ public $aGroupsIdList = [
+ 'sGroupId1Pass',
+ 'sGroupId2Pass',
+ 'sGroupId3Pass',
+ ];
+ public $aOrderArticleIdList = [
'orderTestIdNo1Article1',
'orderTestIdNo2Article1',
'orderTestIdNo3Article1',
- );
- public $aGroupAssignIdList = array(
+ ];
+ public $aGroupAssignIdList = [
'groupAssignIdNo1',
'groupAssignIdNo2',
'groupAssignIdNo3',
- );
+ ];
/**
* Set up fixture.
@@ -76,6 +83,14 @@ class requirementInGroupFilterTest extends d3OrdermanagerRequirementIntegrationT
$this->sManagerId
);
+ foreach ($this->aGroupsIdList as $sId) {
+ $this->createBaseModelObject(
+ 'oxgroups',
+ $sId,
+ ['oxtitle' => __METHOD__]
+ );
+ }
+
$this->createOrder(
$this->aOrderIdList[0],
array(
@@ -95,7 +110,7 @@ class requirementInGroupFilterTest extends d3OrdermanagerRequirementIntegrationT
$this->aGroupAssignIdList[0],
array(
'oxobjectid' => 'sUserIdNo1',
- 'oxgroupsid' => 'sGroupId1Pass',
+ 'oxgroupsid' => $this->aGroupsIdList[0],
)
);
@@ -118,7 +133,7 @@ class requirementInGroupFilterTest extends d3OrdermanagerRequirementIntegrationT
$this->aGroupAssignIdList[1],
array(
'oxobjectid' => 'sUserIdNo2',
- 'oxgroupsid' => 'sGroupId2Pass',
+ 'oxgroupsid' => $this->aGroupsIdList[1],
)
);
@@ -141,7 +156,7 @@ class requirementInGroupFilterTest extends d3OrdermanagerRequirementIntegrationT
$this->aGroupAssignIdList[2],
array(
'oxobjectid' => 'sUserIdNo3',
- 'oxgroupsid' => 'sGroupId3Pass',
+ 'oxgroupsid' => $this->aGroupsIdList[2],
)
);
}
@@ -155,6 +170,13 @@ class requirementInGroupFilterTest extends d3OrdermanagerRequirementIntegrationT
{
$this->deleteManager($this->sManagerId);
+ foreach ($this->aGroupsIdList as $sId) {
+ $this->deleteBaseModelObject(
+ 'oxgroups',
+ $sId
+ );
+ }
+
foreach ($this->aOrderIdList as $sOrderId) {
$this->deleteOrder($sOrderId);
}
@@ -173,7 +195,7 @@ class requirementInGroupFilterTest extends d3OrdermanagerRequirementIntegrationT
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckInGroup_status', true);
- $oManager->setValue('sCustInGroupId', array('sGroupId1Pass'));
+ $oManager->setValue('sCustInGroupId', [$this->aGroupsIdList[0]]);
return $oManager;
}
@@ -187,7 +209,7 @@ class requirementInGroupFilterTest extends d3OrdermanagerRequirementIntegrationT
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckInGroup_status', true);
- $oManager->setValue('sCustInGroupId', array('sGroupId1Pass', 'sGroupId2Pass'));
+ $oManager->setValue('sCustInGroupId', [$this->aGroupsIdList[0], $this->aGroupsIdList[1]]);
return $oManager;
}
@@ -237,4 +259,55 @@ class requirementInGroupFilterTest extends d3OrdermanagerRequirementIntegrationT
&& false == $oOrderList->offsetExists($this->aOrderIdList[2])
);
}
+
+ /**
+ * @param $invalidValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function getConfiguredManagerNoValidConfig($invalidValue)
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->setValue('blCheckInGroup_status', true);
+ $oManager->setValue('sCustInGroupId', $invalidValue);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @param $testValue
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
+ */
+ public function requirementsSelectsRightOrdersNoValidConfig($testValue)
+ {
+ $this->setExpectedException(d3ordermanager_requirementException::class);
+
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($testValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'unknown'=> ['unknownValue'],
+ 'space' => [' '],
+ 'empty' => [''],
+ 'false' => [false]
+ ];
+ }
}
diff --git a/src/tests/integration/Requirements/requirementInvoiceNoTest.php b/src/tests/integration/Requirements/requirementInvoiceNoTest.php
index 8c24a336..b68f69e3 100644
--- a/src/tests/integration/Requirements/requirementInvoiceNoTest.php
+++ b/src/tests/integration/Requirements/requirementInvoiceNoTest.php
@@ -31,10 +31,12 @@ class requirementInvoiceNoTest extends d3OrdermanagerRequirementIntegrationTestC
public $aOrderIdList = array(
'orderTestIdNo1',
'orderTestIdNo2',
+ 'orderTestIdNo3',
);
public $aOrderArticleIdList = array(
'orderTestIdNo1Article1',
'orderTestIdNo2Article1',
+ 'orderTestIdNo3Article1',
);
/**
@@ -96,6 +98,20 @@ class requirementInvoiceNoTest extends d3OrdermanagerRequirementIntegrationTestC
)
)
);
+
+ $this->createOrder(
+ $this->aOrderIdList[2],
+ array(
+ 'oxorderdate' => '2018-01-01 00:00:00',
+ 'oxbillcompany' => __CLASS__,
+ 'oxbillnr' => '',
+ ),
+ array(
+ $this->aOrderArticleIdList[2] => array(
+ 'oxtitle' => __CLASS__,
+ )
+ )
+ );
}
/**
@@ -141,9 +157,10 @@ class requirementInvoiceNoTest extends d3OrdermanagerRequirementIntegrationTestC
$oOrderList = $oListGenerator->getConcernedOrders();
$this->assertTrue(
- $oOrderList->count() >= 1
+ $oOrderList->count() >= 2
&& $oOrderList->offsetExists($this->aOrderIdList[0])
- && false == $oOrderList->offsetExists($this->aOrderIdList[1])
+ && $oOrderList->offsetExists($this->aOrderIdList[1])
+ && false === $oOrderList->offsetExists($this->aOrderIdList[2])
);
}
}
diff --git a/src/tests/integration/Requirements/requirementLanguageFilterTest.php b/src/tests/integration/Requirements/requirementLanguageFilterTest.php
index efe2932d..0a2c117f 100644
--- a/src/tests/integration/Requirements/requirementLanguageFilterTest.php
+++ b/src/tests/integration/Requirements/requirementLanguageFilterTest.php
@@ -19,25 +19,35 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
+use OxidEsales\Eshop\Core\Language;
+use OxidEsales\Eshop\Core\Registry;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
+use stdClass;
class requirementLanguageFilterTest extends d3OrdermanagerRequirementIntegrationTestCase
{
public $sManagerId = 'managerTestId';
- public $aOrderIdList = array(
+ public $aOrderIdList = [
'orderTestIdNo1',
'orderTestIdNo2',
'orderTestIdNo3',
- );
- public $aOrderArticleIdList = array(
+ ];
+ public $aLanguageId = [
+ '52',
+ '53',
+ '54',
+ ];
+ public $aOrderArticleIdList = [
'orderTestIdNo1Article1',
'orderTestIdNo2Article1',
'orderTestIdNo3Article1',
- );
+ ];
/**
* Set up fixture.
@@ -76,7 +86,7 @@ class requirementLanguageFilterTest extends d3OrdermanagerRequirementIntegration
array(
'oxorderdate' => '2018-01-01 00:00:00',
'oxbillcompany' => __CLASS__,
- 'oxlang' => '12',
+ 'oxlang' => $this->aLanguageId[0],
),
array(
$this->aOrderArticleIdList[0] => array(
@@ -90,7 +100,7 @@ class requirementLanguageFilterTest extends d3OrdermanagerRequirementIntegration
array(
'oxorderdate' => '2018-01-01 00:00:00',
'oxbillcompany' => __CLASS__,
- 'oxlang' => '23',
+ 'oxlang' => $this->aLanguageId[1],
),
array(
$this->aOrderArticleIdList[1] => array(
@@ -104,7 +114,7 @@ class requirementLanguageFilterTest extends d3OrdermanagerRequirementIntegration
array(
'oxorderdate' => '2018-01-01 00:00:00',
'oxbillcompany' => __CLASS__,
- 'oxlang' => '34',
+ 'oxlang' => $this->aLanguageId[2],
),
array(
$this->aOrderArticleIdList[2] => array(
@@ -137,7 +147,7 @@ class requirementLanguageFilterTest extends d3OrdermanagerRequirementIntegration
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckLanguage_status', true);
- $oManager->setValue('sInLanguageId', array('12'));
+ $oManager->setValue('sInLanguageId', [$this->aLanguageId[0]]);
return $oManager;
}
@@ -151,7 +161,7 @@ class requirementLanguageFilterTest extends d3OrdermanagerRequirementIntegration
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckLanguage_status', true);
- $oManager->setValue('sInLanguageId', array('12', '23'));
+ $oManager->setValue('sInLanguageId', [$this->aLanguageId[0], $this->aLanguageId[1]]);
return $oManager;
}
@@ -168,9 +178,40 @@ class requirementLanguageFilterTest extends d3OrdermanagerRequirementIntegration
*/
public function requirementsSelectsRightOrdersSingle()
{
+ /** @var Language $oLang */
+ $oLang = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Language::class);
+ $langBackup = $oLang;
+ $aLangs = $oLang->getLanguageArray();
+
+ foreach ($this->aLanguageId as $sId) {
+ $oLang = oxNew(stdClass::class);
+ $oLang->id = $sId;
+ $oLang->oxid = $sId.'_oxid';
+ $oLang->abbr = $sId.'_abbr';
+ $oLang->name = $sId.'_name';
+ $oLang->active = '1';
+ $oLang->sort = $sId;
+ $oLang->selected = 0;
+ $aLangs[$sId] = $oLang;
+ }
+
+ /** @var Language|MockObject $oLangMock */
+ $oLangMock = $this->getMockBuilder(Language::class)
+ ->setMethods(['getLanguageArray'])
+ ->getMock();
+ $oLangMock->method('getLanguageArray')->willReturn($aLangs);
+
+ $definitions = d3GetModCfgDIC()->getDefinitions();
+
+ d3GetModCfgDIC()->set('d3ox.ordermanager.'.Language::class, $oLangMock);
+
$oListGenerator = $this->getListGenerator($this->getConfiguredManagerSingle());
$oOrderList = $oListGenerator->getConcernedOrders();
+ d3GetModCfgDIC()->reset();
+ d3GetModCfgDIC()->setDefinitions($definitions);
+ Registry::set(Language::class, $langBackup);
+
$this->assertTrue(
$oOrderList->count() === 1
&& $oOrderList->offsetExists($this->aOrderIdList[0])
@@ -191,9 +232,40 @@ class requirementLanguageFilterTest extends d3OrdermanagerRequirementIntegration
*/
public function requirementsSelectsRightOrdersMulti()
{
+ /** @var Language $oLang */
+ $oLang = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Language::class);
+ $langBackup = $oLang;
+ $aLangs = $oLang->getLanguageArray();
+
+ foreach ($this->aLanguageId as $sId) {
+ $oLang = oxNew(stdClass::class);
+ $oLang->id = $sId;
+ $oLang->oxid = $sId.'_oxid';
+ $oLang->abbr = $sId.'_abbr';
+ $oLang->name = $sId.'_name';
+ $oLang->active = '1';
+ $oLang->sort = $sId;
+ $oLang->selected = 0;
+ $aLangs[$sId] = $oLang;
+ }
+
+ /** @var Language|MockObject $oLangMock */
+ $oLangMock = $this->getMockBuilder(Language::class)
+ ->setMethods(['getLanguageArray'])
+ ->getMock();
+ $oLangMock->method('getLanguageArray')->willReturn($aLangs);
+
+ $definitions = d3GetModCfgDIC()->getDefinitions();
+
+ d3GetModCfgDIC()->set('d3ox.ordermanager.'.Language::class, $oLangMock);
+
$oListGenerator = $this->getListGenerator($this->getConfiguredManagerMulti());
$oOrderList = $oListGenerator->getConcernedOrders();
+ d3GetModCfgDIC()->reset();
+ d3GetModCfgDIC()->setDefinitions($definitions);
+ Registry::set(Language::class, $langBackup);
+
$this->assertTrue(
$oOrderList->count() === 2
&& $oOrderList->offsetExists($this->aOrderIdList[0])
@@ -201,4 +273,55 @@ class requirementLanguageFilterTest extends d3OrdermanagerRequirementIntegration
&& false == $oOrderList->offsetExists($this->aOrderIdList[2])
);
}
+
+ /**
+ * @param $invalidValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function getConfiguredManagerNoValidConfig($invalidValue)
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->setValue('blCheckLanguage_status', true);
+ $oManager->setValue('sInLanguageId', $invalidValue);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @param $testValue
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
+ */
+ public function requirementsSelectsRightOrdersNoValidConfig($testValue)
+ {
+ $this->setExpectedException(d3ordermanager_requirementException::class);
+
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($testValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'unknown'=> ['unknownValue'],
+ 'space' => [' '],
+ 'empty' => [''],
+ 'false' => [false]
+ ];
+ }
}
diff --git a/src/tests/integration/Requirements/requirementMailRegexpFilterTest.php b/src/tests/integration/Requirements/requirementMailRegexpFilterTest.php
index 1a18c559..311b61d8 100644
--- a/src/tests/integration/Requirements/requirementMailRegexpFilterTest.php
+++ b/src/tests/integration/Requirements/requirementMailRegexpFilterTest.php
@@ -19,11 +19,13 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
class requirementMailRegexpFilterTest extends d3OrdermanagerRequirementIntegrationTestCase
{
@@ -147,4 +149,55 @@ class requirementMailRegexpFilterTest extends d3OrdermanagerRequirementIntegrati
&& false == $oOrderList->offsetExists($this->aOrderIdList[1])
);
}
+
+ /**
+ * @param $invalidValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function getConfiguredManagerNoValidConfig($invalidValue)
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->setValue('blCheckMail_status', true);
+ $oManager->setValue('sMailValue', $invalidValue);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @param $testValue
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
+ */
+ public function requirementsSelectsRightOrdersNoValidConfig($testValue)
+ {
+ $this->setExpectedException(d3ordermanager_requirementException::class);
+
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($testValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'unknown'=> [null],
+ 'space' => [' '],
+ 'empty' => [''],
+ 'false' => [false]
+ ];
+ }
}
diff --git a/src/tests/integration/Requirements/requirementNoArticleContentTest.php b/src/tests/integration/Requirements/requirementNoArticleContentTest.php
index 413b13af..9fb7dd9f 100644
--- a/src/tests/integration/Requirements/requirementNoArticleContentTest.php
+++ b/src/tests/integration/Requirements/requirementNoArticleContentTest.php
@@ -19,12 +19,14 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Application\Model\Object2Category;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
class requirementNoArticleContentTest extends d3OrdermanagerRequirementIntegrationTestCase
{
@@ -410,4 +412,55 @@ class requirementNoArticleContentTest extends d3OrdermanagerRequirementIntegrati
&& $oOrderList->offsetExists($this->aOrderIdList[3])
);
}
+
+ /**
+ * @param $invalidValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function getConfiguredManagerNoValidConfig($invalidValue)
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->setValue('blCheckNoOrderArticle1_status', true);
+ $oManager->setValue('sNoArticleContent1Type', $invalidValue);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @param $testValue
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
+ */
+ public function requirementsSelectsRightOrdersNoValidConfig($testValue)
+ {
+ $this->setExpectedException(d3ordermanager_requirementException::class);
+
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($testValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'unknown'=> ['unknownValue'],
+ 'space' => [' '],
+ 'empty' => [''],
+ 'false' => [false]
+ ];
+ }
}
diff --git a/src/tests/integration/Requirements/requirementNotInFolderFilterTest.php b/src/tests/integration/Requirements/requirementNotInFolderFilterTest.php
index 1fd53be9..e2cb9149 100644
--- a/src/tests/integration/Requirements/requirementNotInFolderFilterTest.php
+++ b/src/tests/integration/Requirements/requirementNotInFolderFilterTest.php
@@ -19,25 +19,33 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use Doctrine\DBAL\DBALException;
use Exception;
+use OxidEsales\Eshop\Core\Config;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
class requirementNotInFolderFilterTest extends d3OrdermanagerRequirementIntegrationTestCase
{
public $sManagerId = 'managerTestId';
- public $aOrderIdList = array(
+ public $aOrderIdList = [
'orderTestIdNo1',
'orderTestIdNo2',
'orderTestIdNo3',
- );
- public $aOrderArticleIdList = array(
+ ];
+ public $aOrderFolders = [
+ 'sFolderId1Pass',
+ 'sFolderId2Pass',
+ 'sFolderId3Pass',
+ ];
+ public $aOrderArticleIdList = [
'orderTestIdNo1Article1',
'orderTestIdNo2Article1',
'orderTestIdNo3Article1',
- );
+ ];
/**
* Set up fixture.
@@ -71,12 +79,19 @@ class requirementNotInFolderFilterTest extends d3OrdermanagerRequirementIntegrat
$this->sManagerId
);
+ $config = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Config::class);
+ $folders = $config->getConfigParam('aOrderfolder');
+ foreach ($this->aOrderFolders as $sId) {
+ $folders[$sId] = '#000000';
+ }
+ $config->setConfigParam('aOrderfolder', $folders);
+
$this->createOrder(
$this->aOrderIdList[0],
array(
'oxorderdate' => '2018-01-01 00:00:00',
'oxbillcompany' => __CLASS__,
- 'oxfolder' => 'sFolderId3Pass',
+ 'oxfolder' => $this->aOrderFolders[2],
),
array(
$this->aOrderArticleIdList[0] => array(
@@ -90,7 +105,7 @@ class requirementNotInFolderFilterTest extends d3OrdermanagerRequirementIntegrat
array(
'oxorderdate' => '2018-01-01 00:00:00',
'oxbillcompany' => __CLASS__,
- 'oxfolder' => 'sFolderId2Pass',
+ 'oxfolder' => $this->aOrderFolders[1],
),
array(
$this->aOrderArticleIdList[1] => array(
@@ -104,7 +119,7 @@ class requirementNotInFolderFilterTest extends d3OrdermanagerRequirementIntegrat
array(
'oxorderdate' => '2018-01-01 00:00:00',
'oxbillcompany' => __CLASS__,
- 'oxfolder' => 'sFolderId1Pass',
+ 'oxfolder' => $this->aOrderFolders[0],
),
array(
$this->aOrderArticleIdList[2] => array(
@@ -115,14 +130,19 @@ class requirementNotInFolderFilterTest extends d3OrdermanagerRequirementIntegrat
}
/**
- * @throws DatabaseConnectionException
- * @throws DatabaseErrorException
- * @throws Exception
+ * @throws DBALException
*/
public function cleanTestData()
{
$this->deleteManager($this->sManagerId);
+ $config = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Config::class);
+ $folders = $config->getConfigParam('aOrderfolder');
+ foreach ($this->aOrderFolders as $sId) {
+ unset($folders[$sId]);
+ }
+ $config->setConfigParam('aOrderfolder', $folders);
+
foreach ($this->aOrderIdList as $sOrderId) {
$this->deleteOrder($sOrderId);
}
@@ -137,7 +157,7 @@ class requirementNotInFolderFilterTest extends d3OrdermanagerRequirementIntegrat
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckNotInFolder_status', true);
- $oManager->setValue('sNotInFolderId', array('sFolderId1Pass'));
+ $oManager->setValue( 'sNotInFolderId', [ $this->aOrderFolders[0] ] );
return $oManager;
}
@@ -151,7 +171,7 @@ class requirementNotInFolderFilterTest extends d3OrdermanagerRequirementIntegrat
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckNotInFolder_status', true);
- $oManager->setValue('sNotInFolderId', array('sFolderId1Pass', 'sFolderId2Pass'));
+ $oManager->setValue('sNotInFolderId', array($this->aOrderFolders[0], $this->aOrderFolders[1]));
return $oManager;
}
@@ -201,4 +221,55 @@ class requirementNotInFolderFilterTest extends d3OrdermanagerRequirementIntegrat
&& false == $oOrderList->offsetExists($this->aOrderIdList[2])
);
}
+
+ /**
+ * @param $invalidValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function getConfiguredManagerNoValidConfig($invalidValue)
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->setValue('blCheckNotInFolder_status', true);
+ $oManager->setValue('sNotInFolderId', $invalidValue);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @param $testValue
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
+ */
+ public function requirementsSelectsRightOrdersNoValidConfig($testValue)
+ {
+ $this->setExpectedException(d3ordermanager_requirementException::class);
+
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($testValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'unknown'=> ['unknownValue'],
+ 'space' => [' '],
+ 'empty' => [''],
+ 'false' => [false]
+ ];
+ }
}
diff --git a/src/tests/integration/Requirements/requirementNotInGroupFilterTest.php b/src/tests/integration/Requirements/requirementNotInGroupFilterTest.php
index 1790af57..03f0a730 100644
--- a/src/tests/integration/Requirements/requirementNotInGroupFilterTest.php
+++ b/src/tests/integration/Requirements/requirementNotInGroupFilterTest.php
@@ -19,11 +19,13 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
class requirementNotInGroupFilterTest extends d3OrdermanagerRequirementIntegrationTestCase
{
@@ -33,6 +35,11 @@ class requirementNotInGroupFilterTest extends d3OrdermanagerRequirementIntegrati
'orderTestIdNo2',
'orderTestIdNo3',
);
+ public $aGroupsIdList = [
+ 'sGroupId1Pass',
+ 'sGroupId2Pass',
+ 'sGroupId3Pass',
+ ];
public $aOrderArticleIdList = array(
'orderTestIdNo1Article1',
'orderTestIdNo2Article1',
@@ -76,6 +83,14 @@ class requirementNotInGroupFilterTest extends d3OrdermanagerRequirementIntegrati
$this->sManagerId
);
+ foreach ($this->aGroupsIdList as $sId) {
+ $this->createBaseModelObject(
+ 'oxgroups',
+ $sId,
+ ['oxtitle' => __METHOD__]
+ );
+ }
+
$this->createOrder(
$this->aOrderIdList[0],
array(
@@ -95,7 +110,7 @@ class requirementNotInGroupFilterTest extends d3OrdermanagerRequirementIntegrati
$this->aGroupAssignIdList[0],
array(
'oxobjectid' => 'sUserIdNo1',
- 'oxgroupsid' => 'sGroupId3Pass',
+ 'oxgroupsid' => $this->aGroupsIdList[2],
)
);
@@ -118,7 +133,7 @@ class requirementNotInGroupFilterTest extends d3OrdermanagerRequirementIntegrati
$this->aGroupAssignIdList[1],
array(
'oxobjectid' => 'sUserIdNo2',
- 'oxgroupsid' => 'sGroupId2Pass',
+ 'oxgroupsid' => $this->aGroupsIdList[1],
)
);
@@ -141,7 +156,7 @@ class requirementNotInGroupFilterTest extends d3OrdermanagerRequirementIntegrati
$this->aGroupAssignIdList[2],
array(
'oxobjectid' => 'sUserIdNo3',
- 'oxgroupsid' => 'sGroupId1Pass',
+ 'oxgroupsid' => $this->aGroupsIdList[0],
)
);
}
@@ -155,6 +170,13 @@ class requirementNotInGroupFilterTest extends d3OrdermanagerRequirementIntegrati
{
$this->deleteManager($this->sManagerId);
+ foreach ($this->aGroupsIdList as $sId) {
+ $this->deleteBaseModelObject(
+ 'oxgroups',
+ $sId
+ );
+ }
+
foreach ($this->aOrderIdList as $sOrderId) {
$this->deleteOrder($sOrderId);
}
@@ -173,7 +195,7 @@ class requirementNotInGroupFilterTest extends d3OrdermanagerRequirementIntegrati
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckNotInGroup_status', true);
- $oManager->setValue('sCustNotInGroupId', array('sGroupId1Pass'));
+ $oManager->setValue('sCustNotInGroupId', [$this->aGroupsIdList[0]]);
return $oManager;
}
@@ -187,7 +209,7 @@ class requirementNotInGroupFilterTest extends d3OrdermanagerRequirementIntegrati
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckNotInGroup_status', true);
- $oManager->setValue('sCustNotInGroupId', array('sGroupId1Pass', 'sGroupId2Pass'));
+ $oManager->setValue('sCustNotInGroupId', [$this->aGroupsIdList[0], $this->aGroupsIdList[1]]);
return $oManager;
}
@@ -237,4 +259,55 @@ class requirementNotInGroupFilterTest extends d3OrdermanagerRequirementIntegrati
&& false == $oOrderList->offsetExists($this->aOrderIdList[2])
);
}
+
+ /**
+ * @param $invalidValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function getConfiguredManagerNoValidConfig($invalidValue)
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->setValue('blCheckNotInGroup_status', true);
+ $oManager->setValue('sCustNotInGroupId', $invalidValue);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @param $testValue
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
+ */
+ public function requirementsSelectsRightOrdersNoValidConfig($testValue)
+ {
+ $this->setExpectedException(d3ordermanager_requirementException::class);
+
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($testValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'unknown'=> ['unknownValue'],
+ 'space' => [' '],
+ 'empty' => [''],
+ 'false' => [false]
+ ];
+ }
}
diff --git a/src/tests/integration/Requirements/requirementOrderFieldTest.php b/src/tests/integration/Requirements/requirementOrderFieldTest.php
index 29990290..8bff0d67 100644
--- a/src/tests/integration/Requirements/requirementOrderFieldTest.php
+++ b/src/tests/integration/Requirements/requirementOrderFieldTest.php
@@ -19,11 +19,13 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
class requirementOrderFieldTest extends d3OrdermanagerRequirementIntegrationTestCase
{
@@ -182,7 +184,7 @@ class requirementOrderFieldTest extends d3OrdermanagerRequirementIntegrationTest
$oOrderList = $oListGenerator->getConcernedOrders();
$this->assertTrue(
- $oOrderList->count() === 1
+ $oOrderList->count() >= 1
&& $oOrderList->offsetExists($this->aOrderIdList[0])
&& false == $oOrderList->offsetExists($this->aOrderIdList[1])
);
@@ -225,4 +227,55 @@ class requirementOrderFieldTest extends d3OrdermanagerRequirementIntegrationTest
&& false == $oOrderList->offsetExists($this->aOrderIdList[0])
);
}
+
+ /**
+ * @param $invalidValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function getConfiguredManagerNoValidConfig($invalidValue)
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->setValue('blCheckOrderField_status', true);
+ $oManager->setValue('sOrderField_FieldName', $invalidValue);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @param $testValue
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
+ */
+ public function requirementsSelectsRightOrdersNoValidConfig($testValue)
+ {
+ $this->setExpectedException(d3ordermanager_requirementException::class);
+
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($testValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'unknown'=> ['unknownValue'],
+ 'space' => [' '],
+ 'empty' => [''],
+ 'false' => [false]
+ ];
+ }
}
diff --git a/src/tests/integration/Requirements/requirementOrderSumTest.php b/src/tests/integration/Requirements/requirementOrderSumTest.php
index e54ffea1..e4485330 100644
--- a/src/tests/integration/Requirements/requirementOrderSumTest.php
+++ b/src/tests/integration/Requirements/requirementOrderSumTest.php
@@ -19,11 +19,13 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
class requirementOrderSumTest extends d3OrdermanagerRequirementIntegrationTestCase
{
@@ -267,4 +269,55 @@ class requirementOrderSumTest extends d3OrdermanagerRequirementIntegrationTestCa
&& false == $oOrderList->offsetExists($this->aOrderIdList[1])
);
}
+
+ /**
+ * @param $invalidValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function getConfiguredManagerNoValidConfig($invalidValue)
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->setValue('blCheckOrderSum_status', true);
+ $oManager->setValue('sOrderSumType', $invalidValue);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @param $testValue
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
+ */
+ public function requirementsSelectsRightOrdersNoValidConfig($testValue)
+ {
+ $this->setExpectedException(d3ordermanager_requirementException::class);
+
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($testValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'unknown'=> ['unknownValue'],
+ 'space' => [' '],
+ 'empty' => [''],
+ 'false' => [false]
+ ];
+ }
}
diff --git a/src/tests/integration/Requirements/requirementOtherJobTest.php b/src/tests/integration/Requirements/requirementOtherJobTest.php
index 6c823488..cf679dea 100644
--- a/src/tests/integration/Requirements/requirementOtherJobTest.php
+++ b/src/tests/integration/Requirements/requirementOtherJobTest.php
@@ -19,11 +19,13 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
class requirementOtherJobTest extends d3OrdermanagerRequirementIntegrationTestCase
{
@@ -224,4 +226,55 @@ class requirementOtherJobTest extends d3OrdermanagerRequirementIntegrationTestCa
$this->assertFalse($oOrderList->offsetExists($this->aOrderIdList[1]));
$this->assertFalse($oOrderList->offsetExists($this->aOrderIdList[2]));
}
+
+ /**
+ * @param $invalidValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function getConfiguredManagerNoValidConfig($invalidValue)
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->setValue('blCheckOtherJob_status', true);
+ $oManager->setValue('sOtherJob_Type', $invalidValue);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @param $testValue
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
+ */
+ public function requirementsSelectsRightOrdersNoValidConfig($testValue)
+ {
+ $this->setExpectedException(d3ordermanager_requirementException::class);
+
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($testValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'unknown'=> ['unknownValue'],
+ 'space' => [' '],
+ 'empty' => [''],
+ 'false' => [false]
+ ];
+ }
}
diff --git a/src/tests/integration/Requirements/requirementPaymentFilterTest.php b/src/tests/integration/Requirements/requirementPaymentFilterTest.php
index cdd74c0b..9f6df4ef 100644
--- a/src/tests/integration/Requirements/requirementPaymentFilterTest.php
+++ b/src/tests/integration/Requirements/requirementPaymentFilterTest.php
@@ -19,25 +19,32 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
class requirementPaymentFilterTest extends d3OrdermanagerRequirementIntegrationTestCase
{
public $sManagerId = 'managerTestId';
- public $aOrderIdList = array(
+ public $aPaymentIdList = [
+ 'sPayId1Pass',
+ 'sPayId2Pass',
+ 'sPayId3Pass',
+ ];
+ public $aOrderIdList = [
'orderTestIdNo1',
'orderTestIdNo2',
'orderTestIdNo3',
- );
- public $aOrderArticleIdList = array(
+ ];
+ public $aOrderArticleIdList = [
'orderTestIdNo1Article1',
'orderTestIdNo2Article1',
'orderTestIdNo3Article1',
- );
+ ];
/**
* Set up fixture.
@@ -71,12 +78,16 @@ class requirementPaymentFilterTest extends d3OrdermanagerRequirementIntegrationT
$this->sManagerId
);
+ foreach ($this->aPaymentIdList as $sId) {
+ $this->createBaseModelObject( 'oxpayments', $sId, ['oxdesc' => __METHOD__] );
+ }
+
$this->createOrder(
$this->aOrderIdList[0],
array(
'oxorderdate' => '2018-01-01 00:00:00',
'oxbillcompany' => __CLASS__,
- 'oxpaymenttype' => 'sPayId1Pass',
+ 'oxpaymenttype' => $this->aPaymentIdList[0], // pass
),
array(
$this->aOrderArticleIdList[0] => array(
@@ -90,7 +101,7 @@ class requirementPaymentFilterTest extends d3OrdermanagerRequirementIntegrationT
array(
'oxorderdate' => '2018-01-01 00:00:00',
'oxbillcompany' => __CLASS__,
- 'oxpaymenttype' => 'sPayId2Pass',
+ 'oxpaymenttype' => $this->aPaymentIdList[1], // pass
),
array(
$this->aOrderArticleIdList[1] => array(
@@ -104,7 +115,7 @@ class requirementPaymentFilterTest extends d3OrdermanagerRequirementIntegrationT
array(
'oxorderdate' => '2018-01-01 00:00:00',
'oxbillcompany' => __CLASS__,
- 'oxpaymenttype' => 'sPayId3Pass',
+ 'oxpaymenttype' => $this->aPaymentIdList[2], // pass
),
array(
$this->aOrderArticleIdList[2] => array(
@@ -115,14 +126,16 @@ class requirementPaymentFilterTest extends d3OrdermanagerRequirementIntegrationT
}
/**
- * @throws DatabaseConnectionException
- * @throws DatabaseErrorException
- * @throws Exception
+ * @throws DBALException
*/
public function cleanTestData()
{
$this->deleteManager($this->sManagerId);
+ foreach ($this->aPaymentIdList as $sId) {
+ $this->deleteBaseModelObject( 'oxpayments', $sId);
+ }
+
foreach ($this->aOrderIdList as $sOrderId) {
$this->deleteOrder($sOrderId);
}
@@ -137,7 +150,7 @@ class requirementPaymentFilterTest extends d3OrdermanagerRequirementIntegrationT
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckPayment_status', true);
- $oManager->setValue('sPaymentId', array('sPayId1Pass'));
+ $oManager->setValue( 'sPaymentId', [$this->aPaymentIdList[0]]); // pass
return $oManager;
}
@@ -151,7 +164,7 @@ class requirementPaymentFilterTest extends d3OrdermanagerRequirementIntegrationT
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckPayment_status', true);
- $oManager->setValue('sPaymentId', array('sPayId1Pass', 'sPayId2Pass'));
+ $oManager->setValue( 'sPaymentId', [ $this->aPaymentIdList[0], $this->aPaymentIdList[1] ] ); // pass
return $oManager;
}
@@ -201,4 +214,55 @@ class requirementPaymentFilterTest extends d3OrdermanagerRequirementIntegrationT
&& false == $oOrderList->offsetExists($this->aOrderIdList[2])
);
}
+
+ /**
+ * @param $invalidValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function getConfiguredManagerNoValidConfig($invalidValue)
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->setValue('blCheckPayment_status', true);
+ $oManager->setValue('sPaymentId', $invalidValue);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @param $testValue
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
+ */
+ public function requirementsSelectsRightOrdersNoValidConfig($testValue)
+ {
+ $this->setExpectedException(d3ordermanager_requirementException::class);
+
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($testValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'unknown'=> ['unknownValue'],
+ 'space' => [' '],
+ 'empty' => [''],
+ 'false' => [false]
+ ];
+ }
}
diff --git a/src/tests/integration/Requirements/requirementTimespanFilterTest.php b/src/tests/integration/Requirements/requirementTimespanFilterTest.php
index db101442..9683d86b 100644
--- a/src/tests/integration/Requirements/requirementTimespanFilterTest.php
+++ b/src/tests/integration/Requirements/requirementTimespanFilterTest.php
@@ -19,11 +19,13 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
class requirementTimespanFilterTest extends d3OrdermanagerRequirementIntegrationTestCase
{
@@ -596,4 +598,55 @@ class requirementTimespanFilterTest extends d3OrdermanagerRequirementIntegration
&& false == $oOrderList->offsetExists($this->aOrderIdList[2])
);
}
+
+ /**
+ * @param $invalidValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function getConfiguredManagerNoValidConfig($invalidValue)
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->setValue('blCheckTimespan1_status', true);
+ $oManager->setValue('sTimespan1Type', $invalidValue);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @param $testValue
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
+ */
+ public function requirementsSelectsRightOrdersNoValidConfig($testValue)
+ {
+ $this->setExpectedException(d3ordermanager_requirementException::class);
+
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($testValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'unknown'=> ['unknownValue'],
+ 'space' => [' '],
+ 'empty' => [''],
+ 'false' => [false]
+ ];
+ }
}
diff --git a/src/tests/integration/Requirements/requirementToOrderNrTest.php b/src/tests/integration/Requirements/requirementToOrderNrTest.php
index 52cc7786..e8c02f84 100644
--- a/src/tests/integration/Requirements/requirementToOrderNrTest.php
+++ b/src/tests/integration/Requirements/requirementToOrderNrTest.php
@@ -19,11 +19,14 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\d3ordermanager_listgenerator;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
class requirementToOrderNrTest extends d3OrdermanagerRequirementIntegrationTestCase
{
@@ -52,6 +55,8 @@ class requirementToOrderNrTest extends d3OrdermanagerRequirementIntegrationTestC
/**
* Tear down fixture.
+ *
+ * @throws DBALException
* @throws DatabaseConnectionException
* @throws DatabaseErrorException
*/
@@ -115,9 +120,7 @@ class requirementToOrderNrTest extends d3OrdermanagerRequirementIntegrationTestC
}
/**
- * @throws DatabaseConnectionException
- * @throws DatabaseErrorException
- * @throws Exception
+ * @throws DBALException
*/
public function cleanTestData()
{
@@ -166,21 +169,26 @@ class requirementToOrderNrTest extends d3OrdermanagerRequirementIntegrationTestC
}
/**
- * @return d3ordermanager
- * @throws Exception
+ * @param $orderNrValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
*/
- public function getConfiguredManagerNoValidConfig()
+ public function getConfiguredManagerNoValidConfig($orderNrValue)
{
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckToOrderNr_status', true);
- $oManager->setValue('sToOrderNrValue', ' ');
+ $oManager->setValue('sToOrderNrValue', $orderNrValue);
return $oManager;
}
/**
* @test
+ * @param $orderNrValue
* @throws DBALException
* @throws DatabaseConnectionException
* @throws DatabaseErrorException
@@ -188,17 +196,26 @@ class requirementToOrderNrTest extends d3OrdermanagerRequirementIntegrationTestC
* @throws d3ShopCompatibilityAdapterException
* @throws d3_cfg_mod_exception
* @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
*/
- public function requirementsSelectsRightOrdersNoValidConfig()
+ public function requirementsSelectsRightOrdersNoValidConfig($orderNrValue)
{
- $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig());
- $oOrderList = $oListGenerator->getConcernedOrders();
+ $this->setExpectedException(d3ordermanager_requirementException::class);
- $this->assertTrue(
- $oOrderList->count() >= 3
- && $oOrderList->offsetExists($this->aOrderIdList[0])
- && $oOrderList->offsetExists($this->aOrderIdList[2])
- && $oOrderList->offsetExists($this->aOrderIdList[1])
- );
+ /** @var d3ordermanager_listgenerator $oListGenerator */
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($orderNrValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'spaceOrderNr' => [' '],
+ 'emptyOrderNr' => [''],
+ 'falseOrderNr' => [false]
+ ];
}
}
diff --git a/src/tests/integration/Requirements/requirementTransactionFilterTest.php b/src/tests/integration/Requirements/requirementTransactionFilterTest.php
index b65ca2f9..77868169 100644
--- a/src/tests/integration/Requirements/requirementTransactionFilterTest.php
+++ b/src/tests/integration/Requirements/requirementTransactionFilterTest.php
@@ -19,11 +19,13 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
class requirementTransactionFilterTest extends d3OrdermanagerRequirementIntegrationTestCase
{
@@ -201,4 +203,55 @@ class requirementTransactionFilterTest extends d3OrdermanagerRequirementIntegrat
&& false == $oOrderList->offsetExists($this->aOrderIdList[2])
);
}
+
+ /**
+ * @param $invalidValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function getConfiguredManagerNoValidConfig($invalidValue)
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->setValue('blCheckTransaction_status', true);
+ $oManager->setValue('sOrderTransStatus', $invalidValue);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @param $testValue
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
+ */
+ public function requirementsSelectsRightOrdersNoValidConfig($testValue)
+ {
+ $this->setExpectedException(d3ordermanager_requirementException::class);
+
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($testValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'unknown'=> [null],
+ 'space' => [' '],
+ 'empty' => [''],
+ 'false' => [false]
+ ];
+ }
}
diff --git a/src/tests/integration/Requirements/requirementWeekdayFilterTest.php b/src/tests/integration/Requirements/requirementWeekdayFilterTest.php
index a68584f1..2d3adc27 100644
--- a/src/tests/integration/Requirements/requirementWeekdayFilterTest.php
+++ b/src/tests/integration/Requirements/requirementWeekdayFilterTest.php
@@ -19,25 +19,28 @@ namespace D3\Ordermanager\tests\integration\Requirements;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
+use D3\Ordermanager\Application\Model\Requirements\d3ordermanager_requirement_weekdayfilter;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
class requirementWeekdayFilterTest extends d3OrdermanagerRequirementIntegrationTestCase
{
public $sManagerId = 'managerTestId';
- public $aOrderIdList = array(
+ public $aOrderIdList = [
'orderTestIdNo1',
'orderTestIdNo2',
'orderTestIdNo3',
- );
- public $aOrderArticleIdList = array(
+ ];
+ public $aOrderArticleIdList = [
'orderTestIdNo1Article1',
'orderTestIdNo2Article1',
'orderTestIdNo3Article1',
- );
+ ];
/**
* Set up fixture.
@@ -73,47 +76,47 @@ class requirementWeekdayFilterTest extends d3OrdermanagerRequirementIntegrationT
$this->createOrder(
$this->aOrderIdList[0],
- array(
+ [
'oxorderdate' => '2018-01-01 00:00:00',
'oxbillcompany' => __CLASS__,
'oxsenddate' => '2018-01-04 00:00:00',
'oxpaid' => '2018-01-07 00:00:00',
- ),
- array(
- $this->aOrderArticleIdList[0] => array(
+ ],
+ [
+ $this->aOrderArticleIdList[0] => [
'oxtitle' => __CLASS__,
- )
- )
+ ]
+ ]
);
$this->createOrder(
$this->aOrderIdList[1],
- array(
+ [
'oxorderdate' => '2018-01-02 00:00:00',
'oxbillcompany' => __CLASS__,
'oxsenddate' => '2018-01-05 00:00:00',
'oxpaid' => '2018-01-08 00:00:00',
- ),
- array(
- $this->aOrderArticleIdList[1] => array(
+ ],
+ [
+ $this->aOrderArticleIdList[1] => [
'oxtitle' => __CLASS__,
- )
- )
+ ]
+ ]
);
$this->createOrder(
$this->aOrderIdList[2],
- array(
+ [
'oxorderdate' => '2018-01-03 00:00:00',
'oxbillcompany' => __CLASS__,
'oxsenddate' => '2018-01-06 00:00:00',
'oxpaid' => '2018-01-09 00:00:00',
- ),
- array(
- $this->aOrderArticleIdList[2] => array(
+ ],
+ [
+ $this->aOrderArticleIdList[2] => [
'oxtitle' => __CLASS__,
- )
- )
+ ]
+ ]
);
}
@@ -140,8 +143,8 @@ class requirementWeekdayFilterTest extends d3OrdermanagerRequirementIntegrationT
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckWeekdays_status', true);
- $oManager->setValue('sWeekdaysType', 'orderdate');
- $oManager->setValue('sWeekdayDays', array('Mon'));
+ $oManager->setValue('sWeekdaysType', d3ordermanager_requirement_weekdayfilter::TYPE_ORDERDATE);
+ $oManager->setValue('sWeekdayDays', [d3ordermanager_requirement_weekdayfilter::WEEKDAY_MON]);
return $oManager;
}
@@ -155,8 +158,8 @@ class requirementWeekdayFilterTest extends d3OrdermanagerRequirementIntegrationT
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckWeekdays_status', true);
- $oManager->setValue('sWeekdaysType', 'orderdate');
- $oManager->setValue('sWeekdayDays', array('Tue', 'Wed'));
+ $oManager->setValue('sWeekdaysType', d3ordermanager_requirement_weekdayfilter::TYPE_ORDERDATE);
+ $oManager->setValue('sWeekdayDays', [d3ordermanager_requirement_weekdayfilter::WEEKDAY_TUE, d3ordermanager_requirement_weekdayfilter::WEEKDAY_WED]);
return $oManager;
}
@@ -170,8 +173,8 @@ class requirementWeekdayFilterTest extends d3OrdermanagerRequirementIntegrationT
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckWeekdays_status', true);
- $oManager->setValue('sWeekdaysType', 'deldate');
- $oManager->setValue('sWeekdayDays', array('Fri'));
+ $oManager->setValue('sWeekdaysType', d3ordermanager_requirement_weekdayfilter::TYPE_DELDATE);
+ $oManager->setValue('sWeekdayDays', [d3ordermanager_requirement_weekdayfilter::WEEKDAY_FRI]);
return $oManager;
}
@@ -185,8 +188,8 @@ class requirementWeekdayFilterTest extends d3OrdermanagerRequirementIntegrationT
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckWeekdays_status', true);
- $oManager->setValue('sWeekdaysType', 'deldate');
- $oManager->setValue('sWeekdayDays', array('Thu', 'Sat'));
+ $oManager->setValue('sWeekdaysType', d3ordermanager_requirement_weekdayfilter::TYPE_DELDATE);
+ $oManager->setValue('sWeekdayDays', [d3ordermanager_requirement_weekdayfilter::WEEKDAY_THU, d3ordermanager_requirement_weekdayfilter::WEEKDAY_SAT]);
return $oManager;
}
@@ -200,8 +203,8 @@ class requirementWeekdayFilterTest extends d3OrdermanagerRequirementIntegrationT
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckWeekdays_status', true);
- $oManager->setValue('sWeekdaysType', 'paiddate');
- $oManager->setValue('sWeekdayDays', array('Tue'));
+ $oManager->setValue('sWeekdaysType', d3ordermanager_requirement_weekdayfilter::TYPE_PAIDDATE);
+ $oManager->setValue('sWeekdayDays', [d3ordermanager_requirement_weekdayfilter::WEEKDAY_TUE]);
return $oManager;
}
@@ -215,8 +218,8 @@ class requirementWeekdayFilterTest extends d3OrdermanagerRequirementIntegrationT
$oManager = $this->getManagerMock($this->sManagerId);
$oManager->setValue('blCheckWeekdays_status', true);
- $oManager->setValue('sWeekdaysType', 'paiddate');
- $oManager->setValue('sWeekdayDays', array('Sun', 'Mon'));
+ $oManager->setValue('sWeekdaysType', d3ordermanager_requirement_weekdayfilter::TYPE_PAIDDATE);
+ $oManager->setValue('sWeekdayDays', [d3ordermanager_requirement_weekdayfilter::WEEKDAY_SUN, d3ordermanager_requirement_weekdayfilter::WEEKDAY_MON]);
return $oManager;
}
@@ -358,4 +361,55 @@ class requirementWeekdayFilterTest extends d3OrdermanagerRequirementIntegrationT
&& false == $oOrderList->offsetExists($this->aOrderIdList[2])
);
}
+
+ /**
+ * @param $invalidValue
+ *
+ * @return d3ordermanager|MockObject
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ */
+ public function getConfiguredManagerNoValidConfig($invalidValue)
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->setValue('blCheckWeekdays_status', true);
+ $oManager->setValue('sWeekdayDays', $invalidValue);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @param $testValue
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider requirementsSelectsRightOrdersNoValidConfigDataProvider
+ */
+ public function requirementsSelectsRightOrdersNoValidConfig($testValue)
+ {
+ $this->setExpectedException(d3ordermanager_requirementException::class);
+
+ $oListGenerator = $this->getListGenerator($this->getConfiguredManagerNoValidConfig($testValue));
+ $oListGenerator->getConcernedOrders();
+ }
+
+ /**
+ * @return array
+ */
+ public function requirementsSelectsRightOrdersNoValidConfigDataProvider()
+ {
+ return [
+ 'unknown'=> ['unknownValue'],
+ 'space' => [' '],
+ 'empty' => [''],
+ 'false' => [false]
+ ];
+ }
}
diff --git a/src/tests/integration/Trigger/executeCLICronTest.php b/src/tests/integration/Trigger/executeCLICronTest.php
new file mode 100644
index 00000000..29622701
--- /dev/null
+++ b/src/tests/integration/Trigger/executeCLICronTest.php
@@ -0,0 +1,494 @@
+
+ * @link http://www.oxidmodule.com
+ */
+
+namespace D3\Ordermanager\tests\integration\Trigger;
+
+
+use D3\ModCfg\Application\Model\Configuration\d3_cfg_mod;
+use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
+use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
+use D3\Ordermanager\Application\Model\d3ordermanager as Manager;
+use D3\Ordermanager\Application\Model\Output\d3ordermanager_debugoutput;
+use D3\Ordermanager\Application\Model\Output\d3ordermanager_nulloutput;
+use D3\Ordermanager\Modules\Application\Model\d3_oxorder_ordermanager;
+use D3\Ordermanager\publicDir\d3_ordermanager_cron;
+use D3\Ordermanager\tests\tools\Intercept;
+use D3\Ordermanager\tests\integration\d3OrdermanagerIntegrationTestCase as d3IntegrationTestCase;
+use Doctrine\DBAL\DBALException;
+use Exception;
+use OxidEsales\Eshop\Application\Model\Order as Item;
+use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
+use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
+use OxidEsales\Eshop\Core\Exception\StandardException;
+use OxidEsales\Eshop\Core\Registry;
+
+class executeCLICronTest extends d3IntegrationTestCase
+{
+ public $sManagerId = 'managerTestId';
+ public $aArticleIdList = array(
+ 'articleTestIdNo1',
+ 'articleTestIdNo2',
+ );
+ public $aCountryIdList = [
+ 'testCountryId1Pass',
+ 'testCountryId2Pass',
+ 'testCountryIdDontPass',
+ ];
+ public $aOrderIdList = array(
+ 'orderTestIdNo1',
+ 'orderTestIdNo2',
+ );
+ public $aOrderArticleIdList = array(
+ 'orderTestIdNo1Article1',
+ 'orderTestIdNo2Article1',
+ );
+
+ public $dCurrentValue = 1.23;
+ public $dExpectedValue = 2.34;
+
+ public function setUp()
+ {
+ parent::setUp();
+
+ d3GetModCfgDIC()->set(
+ d3ordermanager_debugoutput::class,
+ oxNew(d3ordermanager_nulloutput::class)
+ );
+ }
+
+ /**
+ * @throws Exception
+ */
+ public function createTestData()
+ {
+ $this->createManager($this->sManagerId);
+
+ $this->createArticle(
+ $this->aArticleIdList[0],
+ array(
+ 'oxtitle' => __CLASS__,
+ 'oxparentid' => null,
+ 'oxstock' => 20
+ )
+ );
+
+ foreach ($this->aCountryIdList as $sId) {
+ $this->createBaseModelObject( 'oxcountry', $sId, [ 'oxtitle' => __METHOD__ ] );
+ }
+
+ $this->createOrder(
+ $this->aOrderIdList[0],
+ array(
+ 'oxorderdate' => '2018-01-01 00:00:00',
+ 'oxdelcost' => $this->dCurrentValue,
+ 'oxcurrate' => 1,
+ 'oxbillcountryid' => $this->aCountryIdList[0],
+ 'oxdelcountryid' => '',
+ 'oxbillcompany' => __CLASS__,
+ ),
+ array(
+ $this->aOrderArticleIdList[0] => array(
+ 'oxartnum' => 'expArtNum1',
+ 'oxtitle' => 'expTitle1',
+ 'oxshortdesc' => 'expShortDesc1',
+ 'oxselvariant' => 'expSelVariant1',
+ 'oxpersparam' => 'expPersParam1',
+ 'oxstorno' => '0',
+ 'oxartid' => $this->aArticleIdList[0],
+ ),
+ )
+ );
+
+ $this->createArticle(
+ $this->aArticleIdList[1],
+ array(
+ 'oxtitle' => __CLASS__,
+ 'oxparentid' => null,
+ 'oxstock' => 20
+ )
+ );
+
+ $this->createOrder(
+ $this->aOrderIdList[1],
+ array(
+ 'oxorderdate' => '2018-01-01 00:00:00',
+ 'oxdelcost' => $this->dCurrentValue,
+ 'oxcurrate' => 1,
+ 'oxbillcountryid' => $this->aCountryIdList[2],
+ 'oxdelcountryid' => $this->aCountryIdList[1],
+ 'oxbillcompany' => __CLASS__,
+ ),
+ array(
+ $this->aOrderArticleIdList[1] => array(
+ 'oxartnum' => 'expArtNum2',
+ 'oxtitle' => 'expTitle2',
+ 'oxshortdesc' => 'expShortDesc2',
+ 'oxselvariant' => 'expSelVariant2',
+ 'oxpersparam' => 'expPersParam2',
+ 'oxstorno' => '0',
+ 'oxartid' => $this->aArticleIdList[1],
+ ),
+ )
+ );
+
+ $this->getConfiguredManager()->save();
+ }
+
+ /**
+ * @throws DBALException
+ */
+ public function cleanTestData()
+ {
+ $this->deleteManager($this->sManagerId);
+
+ foreach ($this->aCountryIdList as $sId) {
+ $this->deleteBaseModelObject( 'oxcountry', $sId);
+ }
+
+ $this->deleteOrder($this->aOrderIdList[0]);
+ $this->deleteOrder($this->aOrderIdList[1]);
+ $this->deleteArticle($this->aArticleIdList[0]);
+ $this->deleteArticle($this->aArticleIdList[1]);
+ }
+
+ /**
+ * @return Manager
+ * @throws Exception
+ */
+ public function getConfiguredManager()
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->assign(
+ array(
+ 'D3_CRONJOBID' => 'testId'
+ )
+ );
+
+ $oManager->setValue('blActionOrderChangeDeliveryCost_status', true);
+ $oManager->setValue('sActionChangeDelCostValue', $this->dExpectedValue);
+
+ $oManager->setValue('blCheckCountry_status', true);
+ $oManager->setValue( 'sCustCountryId', [ $this->aCountryIdList[0] ] );
+
+ $oManager->setValue('blItemExecute', true);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ */
+ public function runCronOk()
+ {
+ $set = d3_cfg_mod::get('d3_ordermanager');
+ $blCurrentCronStatus = $set->getValue('blCronActive');
+ $set->setValue('blCronActive', true);
+ $set->assign( [ 'oxactive' => 1 ] );
+ $set->saveNoLicenseRefresh();
+
+ $_GET['shp'] = 1;
+ $_GET['cjid'] = 'testId';
+
+ $this->setCLIArguments(['script', '-q', 'run', 1, 'testId']);
+
+ // prevent save trigger action in test preparation
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_FINALIZEORDER, true);
+
+ /** @var d3_ordermanager_cron $cron */
+ $cron = oxNew(d3_ordermanager_cron::class);
+ $cron->run();
+
+ // prevent save trigger action in test preparation
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_FINALIZEORDER, false);
+
+ $set->setValue('blCronActive', $blCurrentCronStatus);
+ $set->assign( [ 'oxactive' => 1 ] );
+ $set->saveNoLicenseRefresh();
+
+ /** @var Item $oOrder */
+ $oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'. Item::class);
+ $oOrder->load($this->aOrderIdList[0]);
+ $this->assertSame(
+ round((float) $this->dExpectedValue * 100),
+ round((float) $oOrder->getFieldData('oxdelcost') * 100)
+ );
+
+ /** @var Item $oOrder */
+ $oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'. Item::class);
+ $oOrder->load($this->aOrderIdList[1]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oOrder->getFieldData('oxdelcost') * 100)
+ );
+ }
+
+ /**
+ * @test
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ */
+ public function runCronCanceledInvalidRequirementConfig()
+ {
+ $set = d3_cfg_mod::get('d3_ordermanager');
+ $blCurrentCronStatus = $set->getValue('blCronActive');
+ $set->setValue('blCronActive', true);
+ $set->assign( [ 'oxactive' => 1 ] );
+ $set->saveNoLicenseRefresh();
+
+ $manager = $this->getConfiguredManager();
+ $manager->setValue( 'sCustCountryId', [ 'notExistingCountryId' ] );
+ $manager->save();
+
+ $_GET['shp'] = 1;
+ $_GET['cjid'] = 'testId';
+
+ $this->setCLIArguments(['script', 'run', 1, 'testId']);
+
+ stream_filter_register("intercept", Intercept::class);
+ stream_filter_append(STDERR, "intercept"); // for warning messages and above
+ //stream_filter_append(STDOUT, "intercept"); // for messages below warning level
+
+ /** @var d3_ordermanager_cron $cron */
+ $cron = oxNew(d3_ordermanager_cron::class);
+ $cron->run();
+
+ $this->getConfiguredManager()->save();
+
+ $this->assertTrue(
+ (bool) strlen(trim(Intercept::$cache))
+ );
+ Intercept::clearCache();
+
+ $set->setValue('blCronActive', $blCurrentCronStatus);
+ $set->assign( [ 'oxactive' => 1 ] );
+ $set->saveNoLicenseRefresh();
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[0]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[1]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+ }
+
+ /**
+ * @test
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ */
+ public function runCronCanceledInvalidActionConfig()
+ {
+ $set = d3_cfg_mod::get('d3_ordermanager');
+ $blCurrentCronStatus = $set->getValue('blCronActive');
+ $set->setValue('blCronActive', true);
+ $set->assign( [ 'oxactive' => 1 ] );
+ $set->saveNoLicenseRefresh();
+
+ $manager = $this->getConfiguredManager();
+ $manager->setValue('sActionChangeDelCostValue', 'invalid');
+ $manager->save();
+
+ $_GET['shp'] = 1;
+ $_GET['cjid'] = 'testId';
+
+ $this->setCLIArguments(['script', 'run', 1, 'testId']);
+
+ stream_filter_register("intercept", Intercept::class);
+ stream_filter_append(STDERR, "intercept"); // for warning messages and above
+ //stream_filter_append(STDOUT, "intercept"); // for messages below warning level
+
+ /** @var d3_ordermanager_cron $cron */
+ $cron = oxNew(d3_ordermanager_cron::class);
+ $cron->run();
+
+ $this->getConfiguredManager()->save();
+
+ $this->assertTrue(
+ (bool) strlen(trim(Intercept::$cache))
+ );
+ Intercept::clearCache();
+
+ $set->setValue('blCronActive', $blCurrentCronStatus);
+ $set->assign( [ 'oxactive' => 1 ] );
+ $set->saveNoLicenseRefresh();
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[0]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[1]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+ }
+
+ /**
+ * @test
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ */
+ public function runCronInactiveModule()
+ {
+ $set = d3_cfg_mod::get('d3_ordermanager');
+ $blCurrentCronStatus = $set->getValue('blCronActive');
+
+ $set->setValue('blCronActive', true);
+ $set->assign(array('oxactive' => 0));
+ $set->saveNoLicenseRefresh();
+
+ $_GET['shp'] = 1;
+ $_GET['cjid'] = 'testId';
+
+ $this->setCLIArguments(['script', 'run', 1, 'testId']);
+
+ stream_filter_register("intercept", Intercept::class);
+ stream_filter_append(STDERR, "intercept"); // for warning messages and above
+ //stream_filter_append(STDOUT, "intercept"); // for messages below warning level
+
+ /** @var d3_ordermanager_cron $cron */
+ $cron = oxNew(d3_ordermanager_cron::class);
+ $cron->run();
+
+ $this->assertRegExp(
+ '@.*MODULEDISABLED.*@',
+ Intercept::$cache
+ );
+
+ $set->setValue('blCronActive', $blCurrentCronStatus);
+ $set->assign(array('oxactive' => 1));
+ $set->saveNoLicenseRefresh();
+
+ /** @var Item $oOrder */
+ $oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'. Item::class);
+ $oOrder->load($this->aOrderIdList[0]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oOrder->getFieldData('oxdelcost') * 100)
+ );
+
+ /** @var Item $oOrder */
+ $oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'. Item::class);
+ $oOrder->load($this->aOrderIdList[1]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oOrder->getFieldData('oxdelcost') * 100)
+ );
+ }
+
+ /**
+ * @test
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ */
+ public function runDisabledCron()
+ {
+ $set = d3_cfg_mod::get('d3_ordermanager');
+ $blCurrentCronStatus = $set->getValue('blCronActive');
+ $set->setValue('blCronActive', false);
+ $set->assign(array('oxactive' => 1));
+ $set->saveNoLicenseRefresh();
+
+ $this->setCLIArguments(['script', 'run', 1, 'testId']);
+
+ stream_filter_register("intercept", Intercept::class);
+ stream_filter_append(STDERR, "intercept"); // for warning messages and above
+ //stream_filter_append(STDOUT, "intercept"); // for messages below warning level
+
+ /** @var d3_ordermanager_cron $cron */
+ $cron = oxNew(d3_ordermanager_cron::class);
+ $cron->run();
+
+ $this->assertRegExp(
+ '@.*UNAVAILABLE.*@',
+ Intercept::$cache
+ );
+
+ $set->setValue('blCronActive', $blCurrentCronStatus);
+ $set->assign(array('oxactive' => 1));
+ $set->saveNoLicenseRefresh();
+
+ /** @var Item $oOrder */
+ $oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'. Item::class);
+ $oOrder->load($this->aOrderIdList[0]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oOrder->getFieldData('oxdelcost') * 100)
+ );
+
+ /** @var Item $oOrder */
+ $oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'. Item::class);
+ $oOrder->load($this->aOrderIdList[1]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oOrder->getFieldData('oxdelcost') * 100)
+ );
+ }
+
+ /**
+ * @param array $arguments
+ */
+ public function setCLIArguments($arguments)
+ {
+ global $argv;
+ $argv = $_SERVER['argv'] = $GLOBALS['HTTP_SERVER_VARS']['argv'] = $arguments;
+ }
+}
diff --git a/src/tests/integration/Trigger/executeGUICronTest.php b/src/tests/integration/Trigger/executeGUICronTest.php
new file mode 100644
index 00000000..570b1b51
--- /dev/null
+++ b/src/tests/integration/Trigger/executeGUICronTest.php
@@ -0,0 +1,556 @@
+
+ * @link http://www.oxidmodule.com
+ */
+
+namespace D3\Ordermanager\tests\integration\Trigger;
+
+use D3\ModCfg\Application\Model\Configuration\d3_cfg_mod;
+use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
+use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
+use D3\ModCfg\Application\Model\Log\d3NullLogger;
+use D3\Ordermanager\Application\Controller\d3ordermanager_response as ResponseController;
+use D3\Ordermanager\Application\Model\d3ordermanager as Manager;
+use D3\Ordermanager\Modules\Application\Model\d3_oxorder_ordermanager;
+use D3\Ordermanager\tests\integration\d3OrdermanagerIntegrationTestCase as d3IntegrationTestCase;
+use Doctrine\DBAL\DBALException;
+use Exception;
+use OxidEsales\Eshop\Application\Model\Order as Item;
+use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
+use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
+use OxidEsales\Eshop\Core\Exception\StandardException;
+use OxidEsales\Eshop\Core\Registry;
+
+class executeGUICronTest extends d3IntegrationTestCase
+{
+ public $sManagerId = 'managerTestId';
+ public $aArticleIdList = array(
+ 'articleTestIdNo1',
+ 'articleTestIdNo2',
+ );
+ public $aCountryIdList = [
+ 'testCountryId1Pass',
+ 'testCountryId2Pass',
+ 'testCountryIdDontPass',
+ ];
+ public $aOrderIdList = array(
+ 'orderTestIdNo1',
+ 'orderTestIdNo2',
+ );
+ public $aOrderArticleIdList = array(
+ 'orderTestIdNo1Article1',
+ 'orderTestIdNo2Article1',
+ );
+
+ public $dCurrentValue = 1.23;
+ public $dExpectedValue = 2.34;
+
+ /**
+ * @throws Exception
+ */
+ public function createTestData()
+ {
+ $_SERVER['REMOTE_ADDR'] = '127.0.0.1';
+
+ $this->createManager($this->sManagerId);
+
+ $this->createArticle(
+ $this->aArticleIdList[0],
+ array(
+ 'oxtitle' => __CLASS__,
+ 'oxparentid' => null,
+ 'oxstock' => 20
+ )
+ );
+
+ foreach ($this->aCountryIdList as $sId) {
+ $this->createBaseModelObject( 'oxcountry', $sId, [ 'oxtitle' => __METHOD__ ] );
+ }
+
+ $this->createOrder(
+ $this->aOrderIdList[0],
+ array(
+ 'oxorderdate' => '2018-01-01 00:00:00',
+ 'oxdelcost' => $this->dCurrentValue,
+ 'oxcurrate' => 1,
+ 'oxbillcountryid' => $this->aCountryIdList[0],
+ 'oxdelcountryid' => '',
+ 'oxbillcompany' => __CLASS__,
+ ),
+ array(
+ $this->aOrderArticleIdList[0] => array(
+ 'oxartnum' => 'expArtNum1',
+ 'oxtitle' => 'expTitle1',
+ 'oxshortdesc' => 'expShortDesc1',
+ 'oxselvariant' => 'expSelVariant1',
+ 'oxpersparam' => 'expPersParam1',
+ 'oxstorno' => '0',
+ 'oxartid' => $this->aArticleIdList[0],
+ ),
+ )
+ );
+
+ $this->createArticle(
+ $this->aArticleIdList[1],
+ array(
+ 'oxtitle' => __CLASS__,
+ 'oxparentid' => null,
+ 'oxstock' => 20
+ )
+ );
+
+ $this->createOrder(
+ $this->aOrderIdList[1],
+ array(
+ 'oxorderdate' => '2018-01-01 00:00:00',
+ 'oxdelcost' => $this->dCurrentValue,
+ 'oxcurrate' => 1,
+ 'oxbillcountryid' => $this->aCountryIdList[2],
+ 'oxdelcountryid' => $this->aCountryIdList[1],
+ 'oxbillcompany' => __CLASS__,
+ ),
+ array(
+ $this->aOrderArticleIdList[1] => array(
+ 'oxartnum' => 'expArtNum2',
+ 'oxtitle' => 'expTitle2',
+ 'oxshortdesc' => 'expShortDesc2',
+ 'oxselvariant' => 'expSelVariant2',
+ 'oxpersparam' => 'expPersParam2',
+ 'oxstorno' => '0',
+ 'oxartid' => $this->aArticleIdList[1],
+ ),
+ )
+ );
+
+ $this->getConfiguredManager()->save();
+ }
+
+ /**
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws Exception
+ */
+ public function cleanTestData()
+ {
+ $this->deleteManager($this->sManagerId);
+
+ foreach ($this->aCountryIdList as $sId) {
+ $this->deleteBaseModelObject( 'oxcountry', $sId);
+ }
+
+ $this->deleteOrder($this->aOrderIdList[0]);
+ $this->deleteOrder($this->aOrderIdList[1]);
+ $this->deleteArticle($this->aArticleIdList[0]);
+ $this->deleteArticle($this->aArticleIdList[1]);
+ }
+
+ /**
+ * @return Manager
+ * @throws Exception
+ */
+ public function getConfiguredManager()
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->assign(
+ array(
+ 'D3_CRONJOBID' => 'testId'
+ )
+ );
+
+ $oManager->setValue('blActionOrderChangeDeliveryCost_status', true);
+ $oManager->setValue('sActionChangeDelCostValue', $this->dExpectedValue);
+
+ $oManager->setValue('blCheckCountry_status', true);
+ $oManager->setValue( 'sCustCountryId', [ $this->aCountryIdList[0] ] );
+
+ $oManager->setValue('blItemExecute', true);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ */
+ public function runCronOk()
+ {
+ $set = d3_cfg_mod::get('d3_ordermanager');
+ $blCurrentCronStatus = $set->getValue('blCronActive');
+ $set->setValue('blCronActive', true);
+ $set->assign( [ 'oxactive' => 1 ] );
+ $set->saveNoLicenseRefresh();
+
+ $_GET['shp'] = 1;
+ $_GET['cjid'] = 'testId';
+ $_GET['key'] = $set->getValue('sCronPassword');
+
+ $this->setCLIArguments(['script', '-q', 'run', 1, 'testId']);
+
+ // prevent save trigger action in test preparation
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_FINALIZEORDER, true);
+
+ ob_start();
+ /** @var ResponseController $cron */
+ $cron = oxNew(ResponseController::class);
+ $cron->init();
+ ob_end_clean();
+
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_FINALIZEORDER, false);
+
+ $set->setValue('blCronActive', $blCurrentCronStatus);
+ $set->assign( [ 'oxactive' => 1 ] );
+ $set->saveNoLicenseRefresh();
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[0]);
+ $this->assertSame(
+ round((float) $this->dExpectedValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[1]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+ }
+
+ /**
+ * @test
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ * @dataProvider runCronCanceledWrongPasswordConfigDataProvider
+ */
+ public function runCronCanceledWrongPasswordConfig($password)
+ {
+ $set = d3_cfg_mod::get('d3_ordermanager');
+ $blCurrentCronStatus = $set->getValue('blCronActive');
+ $set->setValue('blCronActive', true);
+ $set->assign( [ 'oxactive' => 1 ] );
+ $set->saveNoLicenseRefresh();
+
+ $_GET['shp'] = 1;
+ $_GET['cjid'] = 'testId';
+ $_GET['key'] = $password;
+
+ $this->setCLIArguments(['script', 'run', 1, 'testId']);
+
+ ob_start();
+ /** @var ResponseController $cron */
+ $cron = oxNew(ResponseController::class);
+ $cron->init();
+ $msg = ob_get_clean();
+
+ $this->getConfiguredManager()->save();
+
+ $this->assertRegExp(
+ '@WRONGPASSWORD@',
+ $msg
+ );
+
+ $set->setValue('blCronActive', $blCurrentCronStatus);
+ $set->assign( [ 'oxactive' => 1 ] );
+ $set->saveNoLicenseRefresh();
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[0]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[1]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+ }
+
+ /**
+ * @return string[][]
+ */
+ public function runCronCanceledWrongPasswordConfigDataProvider()
+ {
+ return [
+ 'unset password' => [''],
+ 'wrong password' => ['wrongpassword']
+ ];
+ }
+
+ /**
+ * @test
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ */
+ public function runCronCanceledInvalidRequirementConfig()
+ {
+ $set = d3_cfg_mod::get('d3_ordermanager');
+ $blCurrentCronStatus = $set->getValue('blCronActive');
+ $set->setValue('blCronActive', true);
+ $set->assign( [ 'oxactive' => 1 ] );
+ $set->saveNoLicenseRefresh();
+
+ $manager = $this->getConfiguredManager();
+ $manager->setValue( 'sCustCountryId', [ 'notExistingCountryId' ] );
+ $manager->save();
+
+ $_GET['shp'] = 1;
+ $_GET['cjid'] = 'testId';
+ $_GET['key'] = $set->getValue('sCronPassword');
+
+ $this->setCLIArguments(['script', 'run', 1, 'testId']);
+ Registry::set('logger', oxNew(d3NullLogger::class));
+
+ ob_start();
+ /** @var ResponseController $cron */
+ $cron = oxNew(ResponseController::class);
+ $cron->init();
+ $msg = ob_get_clean();
+
+ $this->getConfiguredManager()->save();
+
+ $this->assertTrue(
+ (bool) strlen(trim($msg))
+ );
+
+ $set->setValue('blCronActive', $blCurrentCronStatus);
+ $set->assign( [ 'oxactive' => 1 ] );
+ $set->saveNoLicenseRefresh();
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[0]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[1]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+ }
+
+ /**
+ * @test
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ */
+ public function runCronCanceledInvalidActionConfig()
+ {
+ $set = d3_cfg_mod::get('d3_ordermanager');
+ $blCurrentCronStatus = $set->getValue('blCronActive');
+ $set->setValue('blCronActive', true);
+ $set->assign( [ 'oxactive' => 1 ] );
+ $set->saveNoLicenseRefresh();
+
+ $manager = $this->getConfiguredManager();
+ $manager->setValue('sActionChangeDelCostValue', 'invalid');
+ $manager->save();
+
+ $_GET['shp'] = 1;
+ $_GET['cjid'] = 'testId';
+ $_GET['key'] = $set->getValue('sCronPassword');
+
+ $this->setCLIArguments(['script', 'run', 1, 'testId']);
+ Registry::set('logger', oxNew(d3NullLogger::class));
+
+ ob_start();
+ /** @var ResponseController $cron */
+ $cron = oxNew(ResponseController::class);
+ $cron->init();
+ $msg = ob_get_clean();
+
+ $this->getConfiguredManager()->save();
+
+ $this->assertTrue(
+ (bool) strlen(trim($msg))
+ );
+
+ $set->setValue('blCronActive', $blCurrentCronStatus);
+ $set->assign( [ 'oxactive' => 1 ] );
+ $set->saveNoLicenseRefresh();
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[0]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[1]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+ }
+
+ /**
+ * @test
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ */
+ public function runCronInactiveModule()
+ {
+ $set = d3_cfg_mod::get('d3_ordermanager');
+ $blCurrentCronStatus = $set->getValue('blCronActive');
+
+ $set->setValue('blCronActive', true);
+ $set->assign(array('oxactive' => 0));
+ $set->saveNoLicenseRefresh();
+
+ $_GET['shp'] = 1;
+ $_GET['cjid'] = 'testId';
+ $_GET['key'] = $set->getValue('sCronPassword');
+
+ $this->setCLIArguments(['script', 'run', 1, 'testId']);
+
+ ob_start();
+ /** @var ResponseController $cron */
+ $cron = oxNew(ResponseController::class);
+ $cron->init();
+ $msg = ob_get_clean();
+
+ $this->assertRegExp(
+ '@.*MODULEDISABLED.*@',
+ $msg
+ );
+
+ $set->setValue('blCronActive', $blCurrentCronStatus);
+ $set->assign(array('oxactive' => 1));
+ $set->saveNoLicenseRefresh();
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[0]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[1]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+ }
+
+ /**
+ * @test
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ */
+ public function runDisabledCron()
+ {
+ $set = d3_cfg_mod::get('d3_ordermanager');
+ $blCurrentCronStatus = $set->getValue('blCronActive');
+ $set->setValue('blCronActive', false);
+ $set->assign(array('oxactive' => 1));
+ $set->saveNoLicenseRefresh();
+
+ $_GET['shp'] = 1;
+ $_GET['cjid'] = 'testId';
+ $_GET['key'] = $set->getValue('sCronPassword');
+
+ $this->setCLIArguments(['script', 'run', 1, 'testId']);
+
+ ob_start();
+ /** @var ResponseController $cron */
+ $cron = oxNew(ResponseController::class);
+ $cron->init();
+ $msg = ob_get_clean();
+
+ $this->assertRegExp(
+ '@.*UNAVAILABLE.*@',
+ $msg
+ );
+
+ $set->setValue('blCronActive', $blCurrentCronStatus);
+ $set->assign(array('oxactive' => 1));
+ $set->saveNoLicenseRefresh();
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[0]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[1]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+ }
+
+ /**
+ * @param array $arguments
+ */
+ public function setCLIArguments($arguments)
+ {
+ global $argv;
+ $argv = $_SERVER['argv'] = $GLOBALS['HTTP_SERVER_VARS']['argv'] = $arguments;
+ }
+}
diff --git a/src/tests/integration/Trigger/finalizeOrderTest.php b/src/tests/integration/Trigger/finalizeOrderTest.php
new file mode 100644
index 00000000..37fa0226
--- /dev/null
+++ b/src/tests/integration/Trigger/finalizeOrderTest.php
@@ -0,0 +1,449 @@
+
+ * @link http://www.oxidmodule.com
+ */
+
+namespace D3\Ordermanager\tests\integration\Trigger;
+
+use D3\ModCfg\Application\Model\Configuration\d3_cfg_mod;
+use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
+use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
+use D3\Ordermanager\Application\Model\d3ordermanager as Manager;
+use D3\Ordermanager\Application\Model\d3ordermanagerlist;
+use D3\Ordermanager\Modules\Application\Model\d3_oxorder_ordermanager;
+use D3\Ordermanager\tests\integration\d3OrdermanagerIntegrationTestCase as d3IntegrationTestCase;
+use Doctrine\DBAL\DBALException;
+use Exception;
+use OxidEsales\Eshop\Application\Model\Basket;
+use OxidEsales\Eshop\Application\Model\Order as Item;
+use OxidEsales\Eshop\Application\Model\User;
+use OxidEsales\Eshop\Core\Exception\ArticleInputException;
+use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
+use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
+use OxidEsales\Eshop\Core\Exception\NoArticleException;
+use OxidEsales\Eshop\Core\Exception\OutOfStockException;
+use OxidEsales\Eshop\Core\Exception\StandardException;
+use OxidEsales\Eshop\Core\Registry;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
+
+class finalizeOrderTest extends d3IntegrationTestCase
+{
+ public $sManagerId = 'managerTestId';
+ public $aArticleIdList = [
+ 'articleTestIdNo1'
+ ];
+ public $aCountryIdList = [
+ 'testCountryId1Pass'
+ ];
+ public $aOrderIdList = [
+ 'orderTestIdNo1'
+ ];
+ public $aOrderArticleIdList = [
+ 'orderTestIdNo1Article1'
+ ];
+ public $aPaymentIdList = [
+ 'paymentTestIdNo1'
+ ];
+ public $aUserIdList = [
+ 'userTestIdNo1'
+ ];
+
+ public $dCurrentValue = 1.23;
+ public $dExpectedValue = 2.34;
+
+ /**
+ * @throws Exception
+ */
+ public function createTestData()
+ {
+ $this->createManager($this->sManagerId);
+
+ $this->createArticle(
+ $this->aArticleIdList[0],
+ array(
+ 'oxtitle' => __CLASS__,
+ 'oxparentid' => null,
+ 'oxstock' => 20
+ )
+ );
+
+ foreach ($this->aCountryIdList as $sId) {
+ $this->createBaseModelObject( 'oxcountry', $sId, [ 'oxtitle' => __METHOD__ ] );
+ }
+
+ $this->createOrder(
+ $this->aOrderIdList[0],
+ array(
+ 'oxorderdate' => '2018-01-01 00:00:00',
+ 'oxdelcost' => $this->dCurrentValue,
+ 'oxcurrate' => 1,
+ 'oxbillcountryid' => $this->aCountryIdList[0],
+ 'oxdelcountryid' => '',
+ 'oxbillcompany' => __CLASS__,
+ ),
+ array(
+ $this->aOrderArticleIdList[0] => array(
+ 'oxartnum' => 'expArtNum1',
+ 'oxtitle' => 'expTitle1',
+ 'oxshortdesc' => 'expShortDesc1',
+ 'oxselvariant' => 'expSelVariant1',
+ 'oxpersparam' => 'expPersParam1',
+ 'oxstorno' => '0',
+ 'oxartid' => $this->aArticleIdList[0],
+ ),
+ )
+ );
+
+ $this->createUser(
+ $this->aUserIdList[0],
+ [
+ 'oxcountryid' => $this->aCountryIdList[0]
+ ]
+ );
+
+ $this->createBaseModelObject('oxpayments', $this->aPaymentIdList[0]);
+
+ $this->getConfiguredManager()->save();
+ }
+
+ /**
+ * @throws DBALException
+ */
+ public function cleanTestData()
+ {
+ $this->deleteManager($this->sManagerId);
+
+ foreach ($this->aCountryIdList as $sId) {
+ $this->deleteBaseModelObject( 'oxcountry', $sId);
+ }
+
+ $this->deleteOrder($this->aOrderIdList[0]);
+ $this->deleteArticle($this->aArticleIdList[0]);
+ $this->deleteBaseModelObject('oxpayments', $this->aPaymentIdList[0]);
+ $this->deleteUser($this->aUserIdList[0]);
+ }
+
+ /**
+ * @return mixed|Basket
+ * @throws ArticleInputException
+ * @throws NoArticleException
+ * @throws OutOfStockException
+ */
+ public function getBasket()
+ {
+ $basket = oxNew(Basket::class);
+ $basket->addToBasket($this->aArticleIdList[0], 1);
+ $basket->setPayment($this->aPaymentIdList[0]);
+
+ return $basket;
+ }
+
+ /**
+ * @return Manager
+ * @throws Exception
+ */
+ public function getConfiguredManager()
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->assign(
+ array(
+ 'D3_CRONJOBID' => 'testId',
+ 'D3_OM_ORDERFINISHTRIGGERED' => '1'
+ )
+ );
+
+ $oManager->setValue('blActionOrderChangeDeliveryCost_status', true);
+ $oManager->setValue('sActionChangeDelCostValue', $this->dExpectedValue);
+
+ $oManager->setValue('blCheckCountry_status', true);
+ $oManager->setValue( 'sCustCountryId', [ $this->aCountryIdList[0] ] );
+
+ $oManager->setValue('blItemExecute', true);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ */
+ public function runTriggerOk()
+ {
+ $set = d3_cfg_mod::get('d3_ordermanager');
+ $set->assign( [ 'oxactive' => 1 ] );
+ $set->saveNoLicenseRefresh();
+
+ $user = oxNew(User::class);
+ $user->load($this->aUserIdList[0]);
+
+ /** @var Item|MockObject $oItem */
+ $oItem = $this->getMockBuilder(Item::class)
+ ->setMethods(
+ ['validateOrder', '_loadFromBasket', '_executePayment', '_sendOrderByEmail']
+ )
+ ->getMock();
+ $oItem->method('validateOrder')->willReturn(null);
+ $oItem->method('_loadFromBasket')->willReturn(null);
+ $oItem->method('_executePayment')->willReturn(true);
+ $oItem->method('_sendOrderByEmail')->willReturn(Item::ORDER_STATE_OK);
+
+ $manager = $this->getConfiguredManager();
+
+ /** @var d3ordermanagerlist|MockObject $managerListMock */
+ $managerListMock = $this->getMockBuilder(d3ordermanagerlist::class)
+ ->setMethods(['d3GetOrderFinishTriggeredManagerTasks'])
+ ->getMock();
+ $managerListMock->offsetSet($manager->getId(), $manager);
+ $managerListMock->method('d3GetOrderFinishTriggeredManagerTasks')->willReturnSelf();
+
+ $definitions = d3GetModCfgDIC()->getDefinitions();
+
+ d3GetModCfgDIC()->set(d3ordermanagerlist::class, $managerListMock);
+
+ // prevent save trigger action in test preparation
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+
+ $oItem->load($this->aOrderIdList[0]);
+ $oItem->finalizeOrder(
+ $this->getBasket(),
+ $user
+ );
+
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+
+ $sId = $oItem->getId();
+
+ d3GetModCfgDIC()->reset();
+ d3GetModCfgDIC()->setDefinitions($definitions);
+
+ // require reload
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($sId);
+ $this->assertSame(
+ round((float) $this->dExpectedValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+ $oItem->delete();
+ }
+
+ /**
+ * @test
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ */
+ public function runTriggerCanceledInvalidRequirementConfig()
+ {
+ $set = d3_cfg_mod::get('d3_ordermanager');
+ $set->assign( [ 'oxactive' => 1 ] );
+ $set->saveNoLicenseRefresh();
+
+ $user = oxNew(User::class);
+ $user->load($this->aUserIdList[0]);
+
+ /** @var Item|MockObject $oItem */
+ $oItem = $this->getMockBuilder(Item::class)
+ ->setMethods(
+ ['validateOrder', '_loadFromBasket', '_executePayment', '_sendOrderByEmail']
+ )
+ ->getMock();
+ $oItem->method('validateOrder')->willReturn(null);
+ $oItem->method('_loadFromBasket')->willReturn(null);
+ $oItem->method('_executePayment')->willReturn(true);
+ $oItem->method('_sendOrderByEmail')->willReturn(Item::ORDER_STATE_OK);
+
+ $manager = $this->getConfiguredManager();
+ $manager->setValue( 'sCustCountryId', [ 'notExistingCountryId' ] );
+ $manager->save();
+
+ /** @var d3ordermanagerlist|MockObject $managerListMock */
+ $managerListMock = $this->getMockBuilder(d3ordermanagerlist::class)
+ ->setMethods(['d3GetOrderFinishTriggeredManagerTasks'])
+ ->getMock();
+ $managerListMock->method('d3GetOrderFinishTriggeredManagerTasks')->willReturnSelf();
+
+ $definitions = d3GetModCfgDIC()->getDefinitions();
+
+ d3GetModCfgDIC()->set(d3ordermanagerlist::class, $managerListMock);
+
+ // prevent save trigger action in test preparation
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+
+ $oItem->load($this->aOrderIdList[0]);
+ $oItem->finalizeOrder(
+ oxNew(Basket::class),
+ $user
+ );
+
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+
+ $sId = $oItem->getId();
+
+ d3GetModCfgDIC()->reset();
+ d3GetModCfgDIC()->setDefinitions($definitions);
+
+ $this->getConfiguredManager()->save();
+
+ // require reload
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($sId);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+ $oItem->delete();
+ }
+
+ /**
+ * @test
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ */
+ public function runTriggerCanceledInvalidActionConfig()
+ {
+ $set = d3_cfg_mod::get('d3_ordermanager');
+ $set->assign( [ 'oxactive' => 1 ] );
+ $set->saveNoLicenseRefresh();
+
+ $user = oxNew(User::class);
+ $user->load($this->aUserIdList[0]);
+
+ /** @var Item|MockObject $oItem */
+ $oItem = $this->getMockBuilder(Item::class)
+ ->setMethods(
+ ['validateOrder', '_loadFromBasket', '_executePayment', '_sendOrderByEmail']
+ )
+ ->getMock();
+ $oItem->method('validateOrder')->willReturn(null);
+ $oItem->method('_loadFromBasket')->willReturn(null);
+ $oItem->method('_executePayment')->willReturn(true);
+ $oItem->method('_sendOrderByEmail')->willReturn(Item::ORDER_STATE_OK);
+
+ $manager = $this->getConfiguredManager();
+ $manager->setValue('sActionChangeDelCostValue', 'invalid');
+ $manager->save();
+
+ /** @var d3ordermanagerlist|MockObject $managerListMock */
+ $managerListMock = $this->getMockBuilder(d3ordermanagerlist::class)
+ ->setMethods(['d3GetOrderFinishTriggeredManagerTasks'])
+ ->getMock();
+ $managerListMock->method('d3GetOrderFinishTriggeredManagerTasks')->willReturnSelf();
+
+ $definitions = d3GetModCfgDIC()->getDefinitions();
+
+ d3GetModCfgDIC()->set(d3ordermanagerlist::class, $managerListMock);
+
+ // prevent save trigger action in test preparation
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+
+ $oItem->load($this->aOrderIdList[0]);
+ $oItem->finalizeOrder(
+ oxNew(Basket::class),
+ $user
+ );
+
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+
+ $sId = $oItem->getId();
+
+ d3GetModCfgDIC()->reset();
+ d3GetModCfgDIC()->setDefinitions($definitions);
+
+ $this->getConfiguredManager()->save();
+
+ // require reload
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($sId);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+ $oItem->delete();
+ }
+
+ /**
+ * @test
+ * @throws Exception
+ */
+ public function runDisabledTrigger()
+ {
+ $manager = $this->getConfiguredManager();
+ $manager->assign(['D3_OM_ORDERFINISHTRIGGERED' => '0']);
+ $manager->save();
+
+ /** @var d3ordermanagerlist|MockObject $managerListMock */
+ $managerListMock = $this->getMockBuilder(d3ordermanagerlist::class)
+ ->setMethods(['d3GetOrderFinishTriggeredManagerTasks'])
+ ->getMock();
+ $managerListMock->method('d3GetOrderFinishTriggeredManagerTasks')->willReturnSelf();
+
+ $definitions = d3GetModCfgDIC()->getDefinitions();
+
+ d3GetModCfgDIC()->set(d3ordermanagerlist::class, $managerListMock);
+
+ $user = oxNew(User::class);
+ $user->load($this->aUserIdList[0]);
+
+ /** @var Item|MockObject $oItem */
+ $oItem = $this->getMockBuilder(Item::class)
+ ->setMethods(
+ ['validateOrder', '_loadFromBasket', '_executePayment', '_sendOrderByEmail']
+ )
+ ->getMock();
+ $oItem->method('validateOrder')->willReturn(null);
+ $oItem->method('_loadFromBasket')->willReturn(null);
+ $oItem->method('_executePayment')->willReturn(true);
+ $oItem->method('_sendOrderByEmail')->willReturn(Item::ORDER_STATE_OK);
+
+ // prevent save trigger action in test preparation
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+
+ $oItem->load($this->aOrderIdList[0]);
+ $oItem->finalizeOrder(
+ oxNew(Basket::class),
+ $user
+ );
+ $sId = $oItem->getId();
+
+ d3GetModCfgDIC()->reset();
+ d3GetModCfgDIC()->setDefinitions($definitions);
+
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+
+ // require reload
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($sId);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+ $oItem->delete();
+ }
+}
diff --git a/src/tests/integration/Trigger/orderSaveTest.php b/src/tests/integration/Trigger/orderSaveTest.php
new file mode 100644
index 00000000..999e47dc
--- /dev/null
+++ b/src/tests/integration/Trigger/orderSaveTest.php
@@ -0,0 +1,317 @@
+
+ * @link http://www.oxidmodule.com
+ */
+
+namespace D3\Ordermanager\tests\integration\Trigger;
+
+use D3\ModCfg\Application\Model\Configuration\d3_cfg_mod;
+use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
+use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
+use D3\Ordermanager\Application\Model\d3ordermanager as Manager;
+use D3\Ordermanager\Application\Model\d3ordermanagerlist;
+use D3\Ordermanager\tests\integration\d3OrdermanagerIntegrationTestCase as d3IntegrationTestCase;
+use Doctrine\DBAL\DBALException;
+use Exception;
+use OxidEsales\Eshop\Application\Model\Order as Item;
+use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
+use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
+use OxidEsales\Eshop\Core\Exception\StandardException;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
+
+class orderSaveTest extends d3IntegrationTestCase
+{
+ public $sManagerId = 'managerTestId';
+ public $aArticleIdList = array(
+ 'articleTestIdNo1'
+ );
+ public $aCountryIdList = [
+ 'testCountryId1Pass'
+ ];
+ public $aOrderIdList = array(
+ 'orderTestIdNo1'
+ );
+ public $aOrderArticleIdList = array(
+ 'orderTestIdNo1Article1'
+ );
+
+ public $dCurrentValue = 1.23;
+ public $dExpectedValue = 2.34;
+
+ /**
+ * @throws Exception
+ */
+ public function createTestData()
+ {
+ $this->createManager($this->sManagerId);
+
+ $this->createArticle(
+ $this->aArticleIdList[0],
+ array(
+ 'oxtitle' => __CLASS__,
+ 'oxparentid' => null,
+ 'oxstock' => 20
+ )
+ );
+
+ foreach ($this->aCountryIdList as $sId) {
+ $this->createBaseModelObject( 'oxcountry', $sId, [ 'oxtitle' => __METHOD__ ] );
+ }
+
+ $this->createOrder(
+ $this->aOrderIdList[0],
+ array(
+ 'oxorderdate' => '2018-01-01 00:00:00',
+ 'oxdelcost' => $this->dCurrentValue,
+ 'oxcurrate' => 1,
+ 'oxbillcountryid' => $this->aCountryIdList[0],
+ 'oxdelcountryid' => '',
+ 'oxbillcompany' => __CLASS__,
+ ),
+ array(
+ $this->aOrderArticleIdList[0] => array(
+ 'oxartnum' => 'expArtNum1',
+ 'oxtitle' => 'expTitle1',
+ 'oxshortdesc' => 'expShortDesc1',
+ 'oxselvariant' => 'expSelVariant1',
+ 'oxpersparam' => 'expPersParam1',
+ 'oxstorno' => '0',
+ 'oxartid' => $this->aArticleIdList[0],
+ ),
+ )
+ );
+
+ $this->getConfiguredManager()->save();
+ }
+
+ /**
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws Exception
+ */
+ public function cleanTestData()
+ {
+ $this->deleteManager($this->sManagerId);
+
+ foreach ($this->aCountryIdList as $sId) {
+ $this->deleteBaseModelObject( 'oxcountry', $sId);
+ }
+
+ $this->deleteOrder($this->aOrderIdList[0]);
+ $this->deleteArticle($this->aArticleIdList[0]);
+ }
+
+ /**
+ * @return Manager
+ * @throws Exception
+ */
+ public function getConfiguredManager()
+ {
+ $oManager = $this->getManagerMock($this->sManagerId);
+
+ $oManager->assign(
+ array(
+ 'D3_CRONJOBID' => 'testId',
+ 'd3_om_ordersavetriggered' => '1'
+ )
+ );
+
+ $oManager->setValue('blActionOrderChangeDeliveryCost_status', true);
+ $oManager->setValue('sActionChangeDelCostValue', $this->dExpectedValue);
+
+ $oManager->setValue('blCheckCountry_status', true);
+ $oManager->setValue( 'sCustCountryId', [ $this->aCountryIdList[0] ] );
+
+ $oManager->setValue('blItemExecute', true);
+
+ return $oManager;
+ }
+
+ /**
+ * @test
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ */
+ public function runTriggerOk()
+ {
+ $set = d3_cfg_mod::get('d3_ordermanager');
+ $set->assign( [ 'oxactive' => 1 ] );
+ $set->saveNoLicenseRefresh();
+
+ $manager = $this->getConfiguredManager();
+ /** @var d3ordermanagerlist|MockObject $managerListMock */
+ $managerListMock = $this->getMockBuilder(d3ordermanagerlist::class)
+ ->setMethods(['d3GetOrderSaveTriggeredManagerTasks'])
+ ->getMock();
+ $managerListMock->offsetSet($manager->getId(), $manager);
+ $managerListMock->method('d3GetOrderSaveTriggeredManagerTasks')->willReturnSelf();
+
+ $definitions = d3GetModCfgDIC()->getDefinitions();
+
+ d3GetModCfgDIC()->set(d3ordermanagerlist::class, $managerListMock);
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[0]);
+ $oItem->save();
+
+ d3GetModCfgDIC()->reset();
+ d3GetModCfgDIC()->setDefinitions($definitions);
+
+ // require reload
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[0]);
+ $this->assertSame(
+ round((float) $this->dExpectedValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+ }
+
+ /**
+ * @test
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ */
+ public function runTriggerCanceledInvalidRequirementConfig()
+ {
+ $set = d3_cfg_mod::get('d3_ordermanager');
+ $set->assign( [ 'oxactive' => 1 ] );
+ $set->saveNoLicenseRefresh();
+
+ $manager = $this->getConfiguredManager();
+ $manager->setValue( 'sCustCountryId', [ 'notExistingCountryId' ] );
+ $manager->save();
+
+ /** @var d3ordermanagerlist|MockObject $managerListMock */
+ $managerListMock = $this->getMockBuilder(d3ordermanagerlist::class)
+ ->setMethods(['d3GetOrderSaveTriggeredManagerTasks'])
+ ->getMock();
+ $managerListMock->offsetSet($manager->getId(), $manager);
+ $managerListMock->method('d3GetOrderSaveTriggeredManagerTasks')->willReturnSelf();
+
+ $definitions = d3GetModCfgDIC()->getDefinitions();
+
+ d3GetModCfgDIC()->set(d3ordermanagerlist::class, $managerListMock);
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[0]);
+ $oItem->save();
+
+ d3GetModCfgDIC()->reset();
+ d3GetModCfgDIC()->setDefinitions($definitions);
+
+ // require reload
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[0]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+ }
+
+ /**
+ * @test
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws Exception
+ */
+ public function runTriggerCanceledInvalidActionConfig()
+ {
+ $set = d3_cfg_mod::get('d3_ordermanager');
+ $set->assign( [ 'oxactive' => 1 ] );
+ $set->saveNoLicenseRefresh();
+
+ $manager = $this->getConfiguredManager();
+ $manager->setValue('sActionChangeDelCostValue', 'invalid');
+ $manager->save();
+
+ /** @var d3ordermanagerlist|MockObject $managerListMock */
+ $managerListMock = $this->getMockBuilder(d3ordermanagerlist::class)
+ ->setMethods(['d3GetOrderSaveTriggeredManagerTasks'])
+ ->getMock();
+ $managerListMock->method('d3GetOrderSaveTriggeredManagerTasks')->willReturnSelf();
+
+ $definitions = d3GetModCfgDIC()->getDefinitions();
+
+ d3GetModCfgDIC()->set(d3ordermanagerlist::class, $managerListMock);
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[0]);
+ $oItem->save();
+
+ d3GetModCfgDIC()->reset();
+ d3GetModCfgDIC()->setDefinitions($definitions);
+
+ // require reload
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[0]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+ }
+
+ /**
+ * @test
+ * @throws Exception
+ */
+ public function runDisabledTrigger()
+ {
+ $manager = $this->getConfiguredManager();
+ $manager->assign(['D3_OM_ORDERSAVETRIGGERED' => '0']);
+ $manager->save();
+
+ /** @var d3ordermanagerlist|MockObject $managerListMock */
+ $managerListMock = $this->getMockBuilder(d3ordermanagerlist::class)
+ ->setMethods(['d3GetOrderSaveTriggeredManagerTasks'])
+ ->getMock();
+ $managerListMock->method('d3GetOrderSaveTriggeredManagerTasks')->willReturnSelf();
+
+ $definitions = d3GetModCfgDIC()->getDefinitions();
+
+ d3GetModCfgDIC()->set(d3ordermanagerlist::class, $managerListMock);
+
+ /** @var Item $oItem */
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[0]);
+ $oItem->save();
+
+ d3GetModCfgDIC()->reset();
+ d3GetModCfgDIC()->setDefinitions($definitions);
+
+ // require reload
+ $oItem = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Item::class);
+ $oItem->load($this->aOrderIdList[0]);
+ $this->assertSame(
+ round((float) $this->dCurrentValue * 100),
+ round((float) $oItem->getFieldData('oxdelcost') * 100)
+ );
+ }
+}
diff --git a/src/tests/integration/d3OrdermanagerIntegrationTestCase.php b/src/tests/integration/d3OrdermanagerIntegrationTestCase.php
index f28c7cb1..6b2f1008 100644
--- a/src/tests/integration/d3OrdermanagerIntegrationTestCase.php
+++ b/src/tests/integration/d3OrdermanagerIntegrationTestCase.php
@@ -17,9 +17,11 @@
namespace D3\Ordermanager\tests\integration;
use D3\ModCfg\Application\Model\Log\d3log;
+use D3\ModCfg\Application\Model\Log\d3NullLogger;
use D3\ModCfg\Tests\unit\d3ModCfgUnitTestCase;
use D3\Ordermanager\Application\Model\d3ordermanager;
use D3\Ordermanager\Application\Model\d3ordermanager_listgenerator;
+use D3\Ordermanager\Modules\Application\Model\d3_oxorder_ordermanager;
use Exception;
use OxidEsales\Eshop\Application\Model\Article;
use OxidEsales\Eshop\Application\Model\Groups;
@@ -30,10 +32,13 @@ use OxidEsales\Eshop\Core\DatabaseProvider;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Model\BaseModel;
+use OxidEsales\Eshop\Core\Registry;
use PHPUnit_Framework_MockObject_MockObject;
abstract class d3OrdermanagerIntegrationTestCase extends d3ModCfgUnitTestCase
{
+ protected $DICdefinitions;
+
/**
* Set up fixture.
* @throws Exception
@@ -42,6 +47,10 @@ abstract class d3OrdermanagerIntegrationTestCase extends d3ModCfgUnitTestCase
{
parent::setUp();
+ $this->DICdefinitions = d3GetModCfgDIC()->getDefinitions();
+
+ d3GetModCfgDIC()->set('d3.ordermanager.log', d3GetModCfgDIC()->get(d3NullLogger::class));
+
$this->createTestData();
}
@@ -53,6 +62,9 @@ abstract class d3OrdermanagerIntegrationTestCase extends d3ModCfgUnitTestCase
$this->cleanTestData();
parent::tearDown();
+
+ d3GetModCfgDIC()->reset();
+ d3GetModCfgDIC()->setDefinitions($this->DICdefinitions);
}
abstract public function createTestData();
@@ -133,8 +145,13 @@ abstract class d3OrdermanagerIntegrationTestCase extends d3ModCfgUnitTestCase
*/
public function createOrder($sId, $aFields = array(), $aOrderArticles = array())
{
+ // prevent trigger action in test preparation
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, true);
+
$this->createObject('d3ox.ordermanager.'.Order::class, $sId, $aFields);
+ Registry::getSession()->setVariable(d3_oxorder_ordermanager::PREVENTION_SAVEORDER, false);
+
if (is_array($aOrderArticles) && count($aOrderArticles)) {
foreach ($aOrderArticles as $sOArtId => $aOArtFields) {
$this->createObject('d3ox.ordermanager.'.OrderArticle::class, $sOArtId, array_merge(array('oxorderid' => $sId), $aOArtFields));
@@ -152,7 +169,7 @@ abstract class d3OrdermanagerIntegrationTestCase extends d3ModCfgUnitTestCase
$this->createObject(
'd3ox.ordermanager.'.User::class,
$sId,
- array_merge(array('oxusername' => $sId, $aFields))
+ array_merge(array('oxusername' => $sId), $aFields)
);
}
@@ -175,6 +192,9 @@ abstract class d3OrdermanagerIntegrationTestCase extends d3ModCfgUnitTestCase
{
/** @var BaseModel $oObject */
$oObject = d3GetModCfgDIC()->get($sClass);
+ if (method_exists($oObject, 'setRights')) {
+ $oObject->setRights(null);
+ }
if ($oObject->exists($sId)) {
$oObject->delete($sId);
}
@@ -190,6 +210,9 @@ abstract class d3OrdermanagerIntegrationTestCase extends d3ModCfgUnitTestCase
/** @var BaseModel $oObject */
$oObject = d3GetModCfgDIC()->get('d3ox.ordermanager.'.BaseModel::class);
$oObject->init($sTableName);
+ if (method_exists($oObject, 'setRights')) {
+ $oObject->setRights(null);
+ }
if ($oObject->exists($sId)) {
$oObject->delete($sId);
}
@@ -288,4 +311,4 @@ abstract class d3OrdermanagerIntegrationTestCase extends d3ModCfgUnitTestCase
return d3GetModCfgDIC()->get(d3ordermanager_listgenerator::class);
}
-}
\ No newline at end of file
+}
diff --git a/src/tests/integration/executeCronTest.php b/src/tests/integration/executeCronTest.php
deleted file mode 100644
index a3c761dc..00000000
--- a/src/tests/integration/executeCronTest.php
+++ /dev/null
@@ -1,308 +0,0 @@
-createManager($this->sManagerId);
-
- $this->createArticle(
- $this->aArticleIdList[0],
- array(
- 'oxtitle' => __CLASS__,
- 'oxparentid' => null,
- 'oxstock' => 20
- )
- );
-
- $this->createOrder(
- $this->aOrderIdList[0],
- array(
- 'oxorderdate' => '2018-01-01 00:00:00',
- 'oxdelcost' => $this->dCurrentValue,
- 'oxcurrate' => 1,
- 'oxbillcountryid' => 'testCountryId1Pass',
- 'oxdelcountryid' => '',
- 'oxbillcompany' => __CLASS__,
- ),
- array(
- $this->aOrderArticleIdList[0] => array(
- 'oxartnum' => 'expArtNum1',
- 'oxtitle' => 'expTitle1',
- 'oxshortdesc' => 'expShortDesc1',
- 'oxselvariant' => 'expSelVariant1',
- 'oxpersparam' => 'expPersParam1',
- 'oxstorno' => '0',
- 'oxartid' => $this->aArticleIdList[0],
- ),
- )
- );
-
- $this->createArticle(
- $this->aArticleIdList[1],
- array(
- 'oxtitle' => __CLASS__,
- 'oxparentid' => null,
- 'oxstock' => 20
- )
- );
-
- $this->createOrder(
- $this->aOrderIdList[1],
- array(
- 'oxorderdate' => '2018-01-01 00:00:00',
- 'oxdelcost' => $this->dCurrentValue,
- 'oxcurrate' => 1,
- 'oxbillcountryid' => 'testCountryIdDontPass',
- 'oxdelcountryid' => 'testCountryId2Pass',
- 'oxbillcompany' => __CLASS__,
- ),
- array(
- $this->aOrderArticleIdList[1] => array(
- 'oxartnum' => 'expArtNum2',
- 'oxtitle' => 'expTitle2',
- 'oxshortdesc' => 'expShortDesc2',
- 'oxselvariant' => 'expSelVariant2',
- 'oxpersparam' => 'expPersParam2',
- 'oxstorno' => '0',
- 'oxartid' => $this->aArticleIdList[1],
- ),
- )
- );
-
- $oManager = $this->getManagerMock($this->sManagerId);
- $oManager->assign(
- array(
- 'D3_CRONJOBID' => 'testId'
- )
- );
-
- $oManager->setValue('blActionOrderChangeDeliveryCost_status', true);
- $oManager->setValue('sActionChangeDelCostValue', $this->dExpectedValue);
-
- $oManager->setValue('blCheckCountry_status', true);
- $oManager->setValue('sCustCountryId', array('testCountryId1Pass'));
-
- $oManager->setValue('blItemExecute', true);
-
- $oManager->save();
- }
-
- /**
- * @throws DatabaseConnectionException
- * @throws DatabaseErrorException
- * @throws Exception
- */
- public function cleanTestData()
- {
- $this->deleteManager($this->sManagerId);
- $this->deleteOrder($this->aOrderIdList[0]);
- $this->deleteOrder($this->aOrderIdList[1]);
- $this->deleteArticle($this->aArticleIdList[0]);
- $this->deleteArticle($this->aArticleIdList[1]);
- }
-
- /**
- * @return d3ordermanager
- * @throws Exception
- */
- public function getConfiguredManager()
- {
- $oManager = $this->getManagerMock($this->sManagerId);
-
- $oManager->setValue('blActionOrderChangeDeliveryCost_status', true);
- $oManager->setValue('sActionChangeDelCostValue', $this->dExpectedValue);
-
- $oManager->setValue('blCheckCountry_status', true);
- $oManager->setValue('sCustCountryId', array('testCountryId1Pass'));
-
- $oManager->setValue('blItemExecute', true);
-
- return $oManager;
- }
-
- /**
- * @test
- * @throws DBALException
- * @throws DatabaseConnectionException
- * @throws DatabaseErrorException
- * @throws StandardException
- * @throws d3ShopCompatibilityAdapterException
- * @throws d3_cfg_mod_exception
- * @throws Exception
- */
- public function runCronOk()
- {
- $set = d3_cfg_mod::get('d3_ordermanager');
- $blCurrentCronStatus = $set->getValue('blCronActive');
- $set->setValue('blCronActive', true);
- $set->assign(array('oxactive' => 1));
- $set->saveNoLicenseRefresh();
-
- /** @var $oResponse d3ordermanager_response */
- $oResponse = d3GetModCfgDIC()->get(d3ordermanager_response::class);
-
- $_GET['shp'] = 1;
- $_GET['cjid'] = 'testId';
-
- $oResponse->init();
-
- $set->setValue('blCronActive', $blCurrentCronStatus);
- $set->assign(array('oxactive' => 1));
- $set->saveNoLicenseRefresh();
-
- /** @var Order $oOrder */
- $oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class);
- $oOrder->load($this->aOrderIdList[0]);
- $this->assertSame(
- round((float) $this->dExpectedValue * 100),
- round((float) $oOrder->getFieldData('oxdelcost') * 100)
- );
-
- /** @var Order $oOrder */
- $oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class);
- $oOrder->load($this->aOrderIdList[1]);
- $this->assertSame(
- round((float) $this->dCurrentValue * 100),
- round((float) $oOrder->getFieldData('oxdelcost') * 100)
- );
- }
-
- /**
- * @test
- * @throws DBALException
- * @throws DatabaseConnectionException
- * @throws DatabaseErrorException
- * @throws StandardException
- * @throws d3ShopCompatibilityAdapterException
- * @throws d3_cfg_mod_exception
- * @throws Exception
- */
- public function runCronInactiveModule()
- {
- $set = d3_cfg_mod::get('d3_ordermanager');
- $blCurrentCronStatus = $set->getValue('blCronActive');
-
- $set->setValue('blCronActive', true);
- $set->assign(array('oxactive' => 0));
- $set->saveNoLicenseRefresh();
-
- /** @var $oResponse d3ordermanager_response */
- $oResponse = d3GetModCfgDIC()->get(d3ordermanager_response::class);
-
- $_GET['shp'] = 1;
- $_GET['cjid'] = 'testId';
-
- ob_start();
- $oResponse->init();
- ob_end_clean();
-
- $set->setValue('blCronActive', $blCurrentCronStatus);
- $set->assign(array('oxactive' => 1));
- $set->saveNoLicenseRefresh();
-
- /** @var Order $oOrder */
- $oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class);
- $oOrder->load($this->aOrderIdList[0]);
- $this->assertSame(
- round((float) $this->dCurrentValue * 100),
- round((float) $oOrder->getFieldData('oxdelcost') * 100)
- );
-
- /** @var Order $oOrder */
- $oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class);
- $oOrder->load($this->aOrderIdList[1]);
- $this->assertSame(
- round((float) $this->dCurrentValue * 100),
- round((float) $oOrder->getFieldData('oxdelcost') * 100)
- );
- }
-
- /**
- * @test
- * @throws DBALException
- * @throws DatabaseConnectionException
- * @throws DatabaseErrorException
- * @throws StandardException
- * @throws d3ShopCompatibilityAdapterException
- * @throws d3_cfg_mod_exception
- * @throws Exception
- */
- public function runDisabledCron()
- {
- $set = d3_cfg_mod::get('d3_ordermanager');
- $blCurrentCronStatus = $set->getValue('blCronActive');
- $set->setValue('blCronActive', false);
- $set->assign(array('oxactive' => 1));
- $set->saveNoLicenseRefresh();
-
- /** @var $oResponse d3ordermanager_response */
- $oResponse = d3GetModCfgDIC()->get(d3ordermanager_response::class);
-
- $_GET['shp'] = 1;
- $_GET['cjid'] = 'testId';
-
- $oResponse->init();
-
- $set->setValue('blCronActive', $blCurrentCronStatus);
- $set->assign(array('oxactive' => 1));
- $set->saveNoLicenseRefresh();
-
- /** @var Order $oOrder */
- $oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class);
- $oOrder->load($this->aOrderIdList[0]);
- $this->assertSame(
- round((float) $this->dCurrentValue * 100),
- round((float) $oOrder->getFieldData('oxdelcost') * 100)
- );
-
- /** @var Order $oOrder */
- $oOrder = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class);
- $oOrder->load($this->aOrderIdList[1]);
- $this->assertSame(
- round((float) $this->dCurrentValue * 100),
- round((float) $oOrder->getFieldData('oxdelcost') * 100)
- );
- }
-}
\ No newline at end of file
diff --git a/src/tests/tools/Intercept.php b/src/tests/tools/Intercept.php
new file mode 100644
index 00000000..3ae7779e
--- /dev/null
+++ b/src/tests/tools/Intercept.php
@@ -0,0 +1,30 @@
+1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
+?>
+HR+cPpiWiCk93GdiL90bwDzRwvJpyZkkz3RVRVzRHYNM48w0MHeovV88AOiPKdFbFssl10svyyO+
+SGyEvlg+10vb3gXztVhuQNU5tOBV1mnLYaru2fdM/MMLzzPqZoC0jS/oMaZadiuMbiQhnRsjTm+z
+6iQeEMt1STWb8kfUo7RTtAT4R9FVAc6l21aNig7a4gaSckhT0UnQ2jc/uD55sRasOq7WvljlP+RQ
+djm8c0lDg1WwnqegnbDlJ27H00aieKFFRky0A49aX5QWsNgwDFIYpP3PRBInwspA1iPjOqKOjAWF
+FcKZionvEatoOC0Yz1Xo2pbLclgDdV7TBTKRnz/xLUnprEvJd4jQItostouNW8ypaGg/3FzhdDmm
+si2WD+q8P/AOAvFFYnJWPPdS7uxji8220U44nOMbp+5prLP4VTCH2kAguWsfTh9Z7WEEtwPIVMLZ
+CLu+kTpgyzS8gtJMPumpKeK5HM7j5zZ5ZdSKrf6kx8+KnFC2AKPhUmOhxjB3D4Lxd1ZNAEvtycBK
+lwDILUoxUd3psntCM7D4RkonfMK7cptlfsyu2QhXP5t6NnnKaE3MURlljVwAnYdXl1CFjrMuI6sG
+JXFpwa6hoyUyIdWoFYClLg2KoNXzpGT+TS+TWBB7/7zks/ipC6vxz6sLO95dVB4moMKk8snuxTUk
+Y0BbbqXFUIMl6kIwvioBRvu/5zcKIrPd07J2Y7jWqla3+Ua/hmCQlSC0n+N0wpTTBVHnlk/beLpr
++yl4bHIZPVL94Vo1zWdmGLhgTKDdQA6U5Ai53tb4i09hev3uK6IV0Ij68LZ3Ib4A9wVgqx5lJv3s
+6CvHc+umU1oJ3e5G6u0YIB4VQOGfWfr3+db1AmemgnD6UyjtN8IJUjT3iiQD/9b5+bt+MKMkpXge
+6VPA7TrFwVsMXoEwupHhb3XJpJDxxwiZa0LEAz8adsh21PSr57n+SOCAkshVvHHE1zNRZRBtL4LO
+/4m3DHn3/RAqOiks83XG//1lzxLd++fXyZV1wZ9EkwB5+AtV587a0ssfD5PZrlOzJgcjOD5YAe1x
+mIbdIaUH9AsDMRG5MFxi/4GbQBvYkgWAfVXcwpPB5WcvMzoVt7xe2WHcJ0PHvoesSpBP3icnmdyc
+JvUxIoRQfb3tzMell9wnckhBCpwwALGelLzA5d+EXb003OK77Tpd3m8wJsZUhtVBV7cVbiFhRzd0
+Ki2uk5pkhjvH5pjVQmLt80eC9M875fyfRewDSXWpSowOVk19naepeozFHkPx3m2Nnv+HhtghE8i6
+l0FVTsdbM50P04Y8Qp+vnNaosftgWgS9e5VQj52oPUlmXj7Cy8hKR/pX9nR/ax/55Rd7wAupCmrN
+ZdqUd+oPIaWngmqVA0wAbwG83of0tSqgwJgmn58+JqiO5n/RBbNr2az475pC/VUcOJfAQATWL3kY
+o5OsasoyxH4eIRZ6m3jGeeE4VyVu2eb9CZ9cm86mUbfjQHKqTniYgEGBQf0lYKL5E3+K+8Mkp7wM
+gsXXsnhfxrvvnpCr7kib8MIZew1gFHL4i8rZUmv3ngk0bIpteUjX5g+FuZ4Ia+WPnNN+HntzlPF3
+xcXCtD3DSkqIhuHo7MLxwIkbFmfTv2fJvKmfcuK3hlfV6LGoAoS9hxQUwRmFLCZTSefZeeVNTmBp
+QTOcv55p2MkIsKxpXzh7GQ798P1SsAweALs9iyDDZLFIdnaJpjn8vK51p4CUGslcgEvqjvpBS+nr
+Lr6P5dDASOzLiI6Sh0n7jjCHCNAXeI8RGDry/5UnZ8WXJOaeiT9G9Jh7YCsw7uBLUhH1dBajLUyB
+50fHcF6QHu7oSNLBgK/g91a4ObPMWG8cBrxLUwBaFnzNvlKRsVhAfPMz1UfENk/BBTnZkKlwM1xv
+xtHkpGmxqRjFKatV
\ No newline at end of file
diff --git a/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritemTest.php b/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritemTest.php
index 734cc634..5da056be 100644
--- a/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritemTest.php
+++ b/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritemTest.php
@@ -23,6 +23,7 @@ use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
+use OxidEsales\Eshop\Core\Registry;
use ReflectionException;
class d3_cfg_ordermanageritemTest extends d3OrdermanagerUnitTestCase
@@ -41,6 +42,8 @@ class d3_cfg_ordermanageritemTest extends d3OrdermanagerUnitTestCase
{
parent::setUp();
+ // required because error if test is executed with intergration tests
+ Registry::getConfig()->getActiveShop();
$this->_oController = d3GetModCfgDIC()->get(d3_cfg_ordermanageritem::class);
}
@@ -75,4 +78,4 @@ class d3_cfg_ordermanageritemTest extends d3OrdermanagerUnitTestCase
{
return null;
}
-}
\ No newline at end of file
+}
diff --git a/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritem_actionTest.php b/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritem_actionTest.php
index 6d1b78ba..668f7099 100644
--- a/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritem_actionTest.php
+++ b/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritem_actionTest.php
@@ -476,17 +476,18 @@ class d3_cfg_ordermanageritem_actionTest extends d3OrdermanagerUnitTestCase
}
/**
+ * @covers \D3\Ordermanager\Application\Controller\Admin\d3_cfg_ordermanageritem_action::canGenerateOxidPdf
* @test
* @throws ReflectionException
* @throws Exception
*/
- public function canGeneratePdfStatusPass()
+ public function canGenerateOxidPdfStatusPass()
{
/** @var d3ordermanager_pdfhandler|PHPUnit_Framework_MockObject_MockObject $oPdfHandlerMock */
$oPdfHandlerMock = $this->getMock(d3ordermanager_pdfhandler::class, array(
- 'canGeneratePdf',
+ 'canGenerateOxidPdf',
), array(d3GetModCfgDIC()->get(d3ordermanager::class), d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class)));
- $oPdfHandlerMock->method('canGeneratePdf')->willReturn(true);
+ $oPdfHandlerMock->method('canGenerateOxidPdf')->willReturn(true);
/** @var d3_cfg_ordermanageritem_action|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_action::class, array(
@@ -497,22 +498,23 @@ class d3_cfg_ordermanageritem_actionTest extends d3OrdermanagerUnitTestCase
$this->_oController = $oControllerMock;
$this->assertTrue(
- $this->callMethod($this->_oController, 'canGeneratePdf')
+ $this->callMethod($this->_oController, 'canGenerateOxidPdf')
);
}
/**
+ * @covers \D3\Ordermanager\Application\Controller\Admin\d3_cfg_ordermanageritem_action::canGenerateOxidPdf
* @test
* @throws ReflectionException
* @throws Exception
*/
- public function canGeneratePdfStatusDontPass()
+ public function canGenerateOxidPdfStatusDontPass()
{
/** @var d3ordermanager_pdfhandler|PHPUnit_Framework_MockObject_MockObject $oPdfHandlerMock */
$oPdfHandlerMock = $this->getMock(d3ordermanager_pdfhandler::class, array(
- 'canGeneratePdf',
+ 'canGenerateOxidPdf',
), array(d3GetModCfgDIC()->get(d3ordermanager::class), d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class)));
- $oPdfHandlerMock->method('canGeneratePdf')->willReturn(false);
+ $oPdfHandlerMock->method('canGenerateOxidPdf')->willReturn(false);
/** @var d3_cfg_ordermanageritem_action|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_action::class, array(
@@ -523,7 +525,61 @@ class d3_cfg_ordermanageritem_actionTest extends d3OrdermanagerUnitTestCase
$this->_oController = $oControllerMock;
$this->assertFalse(
- $this->callMethod($this->_oController, 'canGeneratePdf')
+ $this->callMethod($this->_oController, 'canGenerateOxidPdf')
+ );
+ }
+
+ /**
+ * @covers \D3\Ordermanager\Application\Controller\Admin\d3_cfg_ordermanageritem_action::canGeneratePdfDocuments
+ * @test
+ * @throws ReflectionException
+ * @throws Exception
+ */
+ public function canGeneratePdfDocumentsStatusPass()
+ {
+ /** @var d3ordermanager_pdfhandler|PHPUnit_Framework_MockObject_MockObject $oPdfHandlerMock */
+ $oPdfHandlerMock = $this->getMock(d3ordermanager_pdfhandler::class, array(
+ 'canGeneratePdfDocuments',
+ ), array(d3GetModCfgDIC()->get(d3ordermanager::class), d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class)));
+ $oPdfHandlerMock->method('canGeneratePdfDocuments')->willReturn(true);
+
+ /** @var d3_cfg_ordermanageritem_action|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ $oControllerMock = $this->getMock(d3_cfg_ordermanageritem_action::class, array(
+ 'getPdfHandler',
+ ));
+ $oControllerMock->method('getPdfHandler')->willReturn($oPdfHandlerMock);
+
+ $this->_oController = $oControllerMock;
+
+ $this->assertTrue(
+ $this->callMethod($this->_oController, 'canGeneratePdfDocuments')
+ );
+ }
+
+ /**
+ * @covers \D3\Ordermanager\Application\Controller\Admin\d3_cfg_ordermanageritem_action::canGeneratePdfDocuments
+ * @test
+ * @throws ReflectionException
+ * @throws Exception
+ */
+ public function canGeneratePdfDocumentsStatusDontPass()
+ {
+ /** @var d3ordermanager_pdfhandler|PHPUnit_Framework_MockObject_MockObject $oPdfHandlerMock */
+ $oPdfHandlerMock = $this->getMock(d3ordermanager_pdfhandler::class, array(
+ 'canGeneratePdfDocuments',
+ ), array(d3GetModCfgDIC()->get(d3ordermanager::class), d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class)));
+ $oPdfHandlerMock->method('canGeneratePdfDocuments')->willReturn(false);
+
+ /** @var d3_cfg_ordermanageritem_action|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ $oControllerMock = $this->getMock(d3_cfg_ordermanageritem_action::class, array(
+ 'getPdfHandler',
+ ));
+ $oControllerMock->method('getPdfHandler')->willReturn($oPdfHandlerMock);
+
+ $this->_oController = $oControllerMock;
+
+ $this->assertFalse(
+ $this->callMethod($this->_oController, 'canGeneratePdfDocuments')
);
}
diff --git a/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritem_listTest.php b/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritem_listTest.php
index e291afa5..77262c7a 100644
--- a/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritem_listTest.php
+++ b/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritem_listTest.php
@@ -73,10 +73,13 @@ class d3_cfg_ordermanageritem_listTest extends d3OrdermanagerUnitTestCase
$this->_oController = $oControllerMock;
+ /** @var d3ordermanager $ordermanager */
+ $ordermanager = d3GetModCfgDIC()->get(d3ordermanager::class);
+
$this->assertSame(
array(
- 'd3modprofile.oxsort' => '%5000%',
- 'd3modprofile.oxtitle' => '%foo%'
+ $ordermanager->getViewName().'.oxsort' => '%5000%',
+ $ordermanager->getViewName().'.oxtitle' => '%foo%'
),
$this->callMethod($this->_oController, 'buildWhere')
);
diff --git a/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritem_mallTest.php b/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritem_mallTest.php
index 0e14da2c..5a7f69e8 100644
--- a/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritem_mallTest.php
+++ b/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritem_mallTest.php
@@ -172,6 +172,8 @@ class d3_cfg_ordermanageritem_mallTest extends d3OrdermanagerUnitTestCase
$oFileSystemMock->method('splitFilename')->willReturn(
array('name' => 'filename', 'ext' => 'html')
);
+
+ $definitions = d3GetModCfgDIC()->getDefinitions();
d3GetModCfgDIC()->set(d3filesystem::class, $oFileSystemMock);
/** @var Language|PHPUnit_Framework_MockObject_MockObject $oLangMock */
@@ -202,6 +204,9 @@ class d3_cfg_ordermanageritem_mallTest extends d3OrdermanagerUnitTestCase
'https://faq.d3data.de/module/modulepath',
$this->callMethod($this->_oController, 'getHelpURL')
);
+
+ d3GetModCfgDIC()->reset();
+ d3GetModCfgDIC()->setDefinitions($definitions);
}
/**
@@ -218,6 +223,7 @@ class d3_cfg_ordermanageritem_mallTest extends d3OrdermanagerUnitTestCase
array('name' => 'filename', 'ext' => '')
);
+ $definitions = d3GetModCfgDIC()->getDefinitions();
d3GetModCfgDIC()->set(d3filesystem::class, $oFileSystemMock);
/** @var d3str|PHPUnit_Framework_MockObject_MockObject $oD3StrMock */
@@ -258,6 +264,9 @@ class d3_cfg_ordermanageritem_mallTest extends d3OrdermanagerUnitTestCase
'https://faq.d3data.de/module/modulepath',
$this->callMethod($this->_oController, 'getHelpURL')
);
+
+ d3GetModCfgDIC()->reset();
+ d3GetModCfgDIC()->setDefinitions($definitions);
}
/**
@@ -373,4 +382,4 @@ class d3_cfg_ordermanageritem_mallTest extends d3OrdermanagerUnitTestCase
{
return null;
}
-}
\ No newline at end of file
+}
diff --git a/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritem_overviewTest.php b/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritem_overviewTest.php
index c51c34c0..3b8c2d0b 100644
--- a/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritem_overviewTest.php
+++ b/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritem_overviewTest.php
@@ -22,7 +22,9 @@ use D3\Ordermanager\Application\Controller\Admin\d3_cfg_ordermanageritem_requ;
use D3\Ordermanager\Application\Model\Actions\d3ordermanager_actionlist;
use D3\Ordermanager\Application\Model\d3ordermanager;
use D3\Ordermanager\Application\Model\d3ordermanager_conf;
+use D3\Ordermanager\Application\Model\d3ordermanager_configurationcheck;
use D3\Ordermanager\Application\Model\d3ordermanager_listgenerator;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use D3\Ordermanager\Application\Model\Requirements\d3ordermanager_requirementlist;
use D3\Ordermanager\tests\unit\d3OrdermanagerUnitTestCase;
use Doctrine\DBAL\DBALException;
@@ -32,7 +34,8 @@ use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\SystemComponentException;
use OxidEsales\Eshop\Core\Language;
-use PHPUnit_Framework_MockObject_MockObject;
+use OxidEsales\Eshop\Core\UtilsView;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
use ReflectionException;
use stdClass;
@@ -62,6 +65,71 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
unset($this->_oController);
}
+ /**
+ * @covers \D3\Ordermanager\Application\Controller\Admin\d3_cfg_ordermanageritem_overview::render
+ * @test
+ * @throws ReflectionException
+ */
+ public function renderThrowsException()
+ {
+ /** @var d3ordermanager_requirementException|MockObject $excMock */
+ $excMock = $this->getMockBuilder(d3ordermanager_requirementException::class)
+ ->disableOriginalConstructor()
+ ->getMock();
+
+ /** @var d3ordermanager_configurationcheck|MockObject $confCheckMock */
+ $confCheckMock = $this->getMockBuilder(d3ordermanager_configurationcheck::class)
+ ->setMethods(['checkThrowingExceptions'])
+ ->disableOriginalConstructor()
+ ->getMock();
+ $confCheckMock->method('checkThrowingExceptions')->willThrowException($excMock);
+
+ d3GetModCfgDIC()->set(d3ordermanager_configurationcheck::class, $confCheckMock);
+
+ /** @var UtilsView|MockObject $utilsViewMock */
+ $utilsViewMock = $this->getMockBuilder(UtilsView::class)
+ ->setMethods(['addErrorToDisplay'])
+ ->getMock();
+ $utilsViewMock->expects($this->atLeastOnce())->method('addErrorToDisplay')->willReturn(true);
+
+ d3GetModCfgDIC()->set('d3ox.ordermanager.'.UtilsView::class, $utilsViewMock);
+
+ $this->callMethod(
+ $this->_oController,
+ 'render'
+ );
+ }
+
+ /**
+ * @covers \D3\Ordermanager\Application\Controller\Admin\d3_cfg_ordermanageritem_overview::render
+ * @test
+ * @throws ReflectionException
+ */
+ public function renderDontThrowsException()
+ {
+ /** @var d3ordermanager_configurationcheck|MockObject $confCheckMock */
+ $confCheckMock = $this->getMockBuilder(d3ordermanager_configurationcheck::class)
+ ->setMethods(['checkThrowingExceptions'])
+ ->disableOriginalConstructor()
+ ->getMock();
+ $confCheckMock->method('checkThrowingExceptions')->willReturn(true);
+
+ d3GetModCfgDIC()->set(d3ordermanager_configurationcheck::class, $confCheckMock);
+
+ /** @var UtilsView|MockObject $utilsViewMock */
+ $utilsViewMock = $this->getMockBuilder(UtilsView::class)
+ ->setMethods(['addErrorToDisplay'])
+ ->getMock();
+ $utilsViewMock->expects($this->never())->method('addErrorToDisplay')->willReturn(true);
+
+ d3GetModCfgDIC()->set('d3ox.ordermanager.'.UtilsView::class, $utilsViewMock);
+
+ $this->callMethod(
+ $this->_oController,
+ 'render'
+ );
+ }
+
/**
* @test
* @throws ReflectionException
@@ -104,7 +172,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
$mExpectedRequ = 'returnValueRequ';
$mExpectedController = 'returnValueController';
- /** @var d3_cfg_ordermanageritem_action|PHPUnit_Framework_MockObject_MockObject $oActionAdminControllerMock */
+ /** @var d3_cfg_ordermanageritem_action|MockObject $oActionAdminControllerMock */
$oActionAdminControllerMock = $this->getMock(d3_cfg_ordermanageritem_action::class, array(
$sMethodName
));
@@ -116,7 +184,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
)
->willReturn($mExpectedAction);
- /** @var d3_cfg_ordermanageritem_requ|PHPUnit_Framework_MockObject_MockObject $oRequirementAdminControllerMock */
+ /** @var d3_cfg_ordermanageritem_requ|MockObject $oRequirementAdminControllerMock */
$oRequirementAdminControllerMock = $this->getMock(d3_cfg_ordermanageritem_action::class, array(
$sOtherMethodName
));
@@ -128,7 +196,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
)
->willReturn($mExpectedRequ);
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'getActionAdminController',
'getRequirementAdminController',
@@ -168,7 +236,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
$mExpectedRequ = 'returnValueRequ';
$mExpectedController = 'returnValueController';
- /** @var d3_cfg_ordermanageritem_action|PHPUnit_Framework_MockObject_MockObject $oActionAdminControllerMock */
+ /** @var d3_cfg_ordermanageritem_action|MockObject $oActionAdminControllerMock */
$oActionAdminControllerMock = $this->getMock(d3_cfg_ordermanageritem_action::class, array(
$sOtherMethodName
));
@@ -180,7 +248,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
)
->willReturn($mExpectedAction);
- /** @var d3_cfg_ordermanageritem_requ|PHPUnit_Framework_MockObject_MockObject $oRequirementAdminControllerMock */
+ /** @var d3_cfg_ordermanageritem_requ|MockObject $oRequirementAdminControllerMock */
$oRequirementAdminControllerMock = $this->getMock(d3_cfg_ordermanageritem_action::class, array(
$sMethodName
));
@@ -192,7 +260,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
)
->willReturn($mExpectedRequ);
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'getActionAdminController',
'getRequirementAdminController',
@@ -232,7 +300,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
$mExpectedRequ = 'returnValueRequ';
$mExpectedController = 'returnValueController';
- /** @var d3_cfg_ordermanageritem_action|PHPUnit_Framework_MockObject_MockObject $oActionAdminControllerMock */
+ /** @var d3_cfg_ordermanageritem_action|MockObject $oActionAdminControllerMock */
$oActionAdminControllerMock = $this->getMock(d3_cfg_ordermanageritem_action::class, array(
$sOtherMethodName
));
@@ -244,7 +312,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
)
->willReturn($mExpectedAction);
- /** @var d3_cfg_ordermanageritem_requ|PHPUnit_Framework_MockObject_MockObject $oRequirementAdminControllerMock */
+ /** @var d3_cfg_ordermanageritem_requ|MockObject $oRequirementAdminControllerMock */
$oRequirementAdminControllerMock = $this->getMock(d3_cfg_ordermanageritem_action::class, array(
$sOtherMethodName
));
@@ -256,7 +324,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
)
->willReturn($mExpectedRequ);
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'getActionAdminController',
'getRequirementAdminController',
@@ -296,7 +364,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
$mExpectedRequ = 'returnValueRequ';
$mExpectedController = 'returnValueController';
- /** @var d3_cfg_ordermanageritem_action|PHPUnit_Framework_MockObject_MockObject $oActionAdminControllerMock */
+ /** @var d3_cfg_ordermanageritem_action|MockObject $oActionAdminControllerMock */
$oActionAdminControllerMock = $this->getMock(d3_cfg_ordermanageritem_action::class, array(
$sOtherMethodName
));
@@ -308,7 +376,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
)
->willReturn($mExpectedAction);
- /** @var d3_cfg_ordermanageritem_requ|PHPUnit_Framework_MockObject_MockObject $oRequirementAdminControllerMock */
+ /** @var d3_cfg_ordermanageritem_requ|MockObject $oRequirementAdminControllerMock */
$oRequirementAdminControllerMock = $this->getMock(d3_cfg_ordermanageritem_action::class, array(
$sOtherMethodName
));
@@ -320,7 +388,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
)
->willReturn($mExpectedRequ);
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'getActionAdminController',
'getRequirementAdminController',
@@ -373,27 +441,31 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
*/
public function canGetRequirementList()
{
- /** @var d3ordermanager_conf|PHPUnit_Framework_MockObject_MockObject $oManagerConfMock */
+ $expected = [
+ 'test' => 'item'
+ ];
+
+ /** @var d3ordermanager_conf|MockObject $oManagerConfMock */
$oManagerConfMock = $this->getMock(d3ordermanager_conf::class, array(
'getRequirementIdList'
));
- $oManagerConfMock->method('getRequirementIdList')->willReturn(true);
+ $oManagerConfMock->method('getRequirementIdList')->willReturn([]);
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oProfileMock */
+ /** @var d3ordermanager|MockObject $oProfileMock */
$oProfileMock = $this->getMock(d3ordermanager::class, array(
'getConfiguration'
));
$oProfileMock->method('getConfiguration')->willReturn($oManagerConfMock);
- /** @var d3ordermanager_requirementlist|PHPUnit_Framework_MockObject_MockObject $oRequListMock */
+ /** @var d3ordermanager_requirementlist|MockObject $oRequListMock */
$oRequListMock = $this->getMock(d3ordermanager_requirementlist::class, array(
'setRequirements',
'getRequirementList'
), array($oProfileMock));
$oRequListMock->method('setRequirements')->willReturn(true);
- $oRequListMock->expects($this->once())->method('getRequirementList')->willReturn('testReturn');
+ $oRequListMock->expects($this->once())->method('getRequirementList')->willReturn($expected);
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'getProfile',
'getRequirementListObject',
@@ -404,7 +476,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
$this->_oController = $oControllerMock;
$this->assertSame(
- 'testReturn',
+ $expected,
$this->callMethod(
$this->_oController,
"getRequirementList"
@@ -436,27 +508,31 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
*/
public function canGetActionList()
{
- /** @var d3ordermanager_conf|PHPUnit_Framework_MockObject_MockObject $oManagerConfMock */
+ $expected = [
+ 'test' => 'item'
+ ];
+
+ /** @var d3ordermanager_conf|MockObject $oManagerConfMock */
$oManagerConfMock = $this->getMock(d3ordermanager_conf::class, array(
'getActionIdList'
));
- $oManagerConfMock->method('getActionIdList')->willReturn(true);
+ $oManagerConfMock->method('getActionIdList')->willReturn([]);
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oProfileMock */
+ /** @var d3ordermanager|MockObject $oProfileMock */
$oProfileMock = $this->getMock(d3ordermanager::class, array(
'getConfiguration'
));
$oProfileMock->method('getConfiguration')->willReturn($oManagerConfMock);
- /** @var d3ordermanager_actionlist|PHPUnit_Framework_MockObject_MockObject $oActionListMock */
+ /** @var d3ordermanager_actionlist|MockObject $oActionListMock */
$oActionListMock = $this->getMock(d3ordermanager_actionlist::class, array(
'setActions',
'getActionList'
), array($oProfileMock, d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class)));
$oActionListMock->method('setActions')->willReturn(true);
- $oActionListMock->expects($this->once())->method('getActionList')->willReturn('testReturn');
+ $oActionListMock->expects($this->once())->method('getActionList')->willReturn($expected);
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'getProfile',
'getActionListObject',
@@ -467,7 +543,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
$this->_oController = $oControllerMock;
$this->assertSame(
- 'testReturn',
+ $expected,
$this->callMethod(
$this->_oController,
"getActionList"
@@ -512,19 +588,19 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
{
$mExpected = 255;
- /** @var d3ordermanager_listgenerator|PHPUnit_Framework_MockObject_MockObject $oListGeneratorMock */
+ /** @var d3ordermanager_listgenerator|MockObject $oListGeneratorMock */
$oListGeneratorMock = $this->getMock(d3ordermanager_listgenerator::class, array(
'getConcernedItemCount'
), array(d3GetModCfgDIC()->get(d3ordermanager::class)));
$oListGeneratorMock->method('getConcernedItemCount')->willReturn($mExpected);
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oProfileMock */
+ /** @var d3ordermanager|MockObject $oProfileMock */
$oProfileMock = $this->getMock(d3ordermanager::class, array(
'getListGenerator'
));
$oProfileMock->method('getListGenerator')->willReturn($oListGeneratorMock);
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'canRequestData',
'getProfile',
@@ -552,7 +628,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
$mExpected = 256;
$_POST['toFinishedCount'] = $mExpected;
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'canRequestData',
'canUseRequestData',
@@ -577,7 +653,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
*/
public function canNotGetToFinishedCount()
{
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'canRequestData',
'canUseRequestData',
@@ -604,19 +680,19 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
{
$mExpected = 257;
- /** @var d3ordermanager_listgenerator|PHPUnit_Framework_MockObject_MockObject $oListGeneratorMock */
+ /** @var d3ordermanager_listgenerator|MockObject $oListGeneratorMock */
$oListGeneratorMock = $this->getMock(d3ordermanager_listgenerator::class, array(
'getFinishedItemCount'
), array(d3GetModCfgDIC()->get(d3ordermanager::class)));
$oListGeneratorMock->method('getFinishedItemCount')->willReturn($mExpected);
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oProfileMock */
+ /** @var d3ordermanager|MockObject $oProfileMock */
$oProfileMock = $this->getMock(d3ordermanager::class, array(
'getListGenerator'
));
$oProfileMock->method('getListGenerator')->willReturn($oListGeneratorMock);
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'canRequestData',
'getProfile',
@@ -644,7 +720,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
$mExpected = 258;
$_POST['finishedCount'] = $mExpected;
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'canRequestData',
'canUseRequestData',
@@ -669,7 +745,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
*/
public function canNotGetFinishedCount()
{
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'canRequestData',
'canUseRequestData',
@@ -696,19 +772,19 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
{
$mExpected = 259;
- /** @var d3ordermanager_listgenerator|PHPUnit_Framework_MockObject_MockObject $oListGeneratorMock */
+ /** @var d3ordermanager_listgenerator|MockObject $oListGeneratorMock */
$oListGeneratorMock = $this->getMock(d3ordermanager_listgenerator::class, array(
'getFinishedMonthItemCount'
), array(d3GetModCfgDIC()->get(d3ordermanager::class)));
$oListGeneratorMock->method('getFinishedMonthItemCount')->willReturn($mExpected);
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oProfileMock */
+ /** @var d3ordermanager|MockObject $oProfileMock */
$oProfileMock = $this->getMock(d3ordermanager::class, array(
'getListGenerator'
));
$oProfileMock->method('getListGenerator')->willReturn($oListGeneratorMock);
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'canRequestData',
'getProfile',
@@ -736,7 +812,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
$mExpected = 260;
$_POST['finishedMonthCount'] = $mExpected;
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'canRequestData',
'canUseRequestData',
@@ -761,7 +837,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
*/
public function canNotGetFinishedMonthCount()
{
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'canRequestData',
'canUseRequestData',
@@ -788,19 +864,19 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
{
$mExpected = 261;
- /** @var d3ordermanager_listgenerator|PHPUnit_Framework_MockObject_MockObject $oListGeneratorMock */
+ /** @var d3ordermanager_listgenerator|MockObject $oListGeneratorMock */
$oListGeneratorMock = $this->getMock(d3ordermanager_listgenerator::class, array(
'getNotFinishedItemCount'
), array(d3GetModCfgDIC()->get(d3ordermanager::class)));
$oListGeneratorMock->method('getNotFinishedItemCount')->willReturn($mExpected);
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oProfileMock */
+ /** @var d3ordermanager|MockObject $oProfileMock */
$oProfileMock = $this->getMock(d3ordermanager::class, array(
'getListGenerator'
));
$oProfileMock->method('getListGenerator')->willReturn($oListGeneratorMock);
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'canRequestData',
'getProfile',
@@ -828,7 +904,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
$mExpected = 262;
$_POST['notFinishedCount'] = $mExpected;
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'canRequestData',
'canUseRequestData',
@@ -853,7 +929,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
*/
public function canNotGetNotFinishedMonthCount()
{
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'canRequestData',
'canUseRequestData',
@@ -879,7 +955,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
{
$sFncName = 'fncName';
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'getDataOnDemand',
));
@@ -904,7 +980,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
{
$sFncName = 'fncName';
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'getDataOnDemand',
'_getRequestData'
@@ -931,7 +1007,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
{
$sFncName = 'fncName';
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'getDataOnDemand',
'_getRequestData'
@@ -958,7 +1034,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
{
$iRequestCount = '300';
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'getDataOnDemand'
));
@@ -983,7 +1059,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
{
$iRequestCount = '301';
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'getDataOnDemand',
));
@@ -1008,7 +1084,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
{
$iRequestCount = null;
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'getDataOnDemand',
));
@@ -1033,13 +1109,13 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
{
$mExpected = 'testValue';
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oModCfgMock */
+ /** @var stdClass|MockObject $oModCfgMock */
$oModCfgMock = $this->getMock(stdClass::class, array(
'getValue',
));
$oModCfgMock->method('getValue')->willReturn($mExpected);
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'd3GetSet',
));
@@ -1065,7 +1141,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
$_POST['sRequestName'] = 400;
$sFncName = 'fncName';
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'_getRequestData'
));
@@ -1091,7 +1167,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
$_POST['sRequestName'] = null;
$sFncName = 'fncName';
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'_getRequestData'
));
@@ -1117,7 +1193,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
$_POST['sRequestName'] = 401;
$sFncName = 'fncName';
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'_getRequestData'
));
@@ -1143,7 +1219,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
$_POST['sRequestName'] = null;
$sFncName = 'fncName';
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'_getRequestData'
));
@@ -1198,7 +1274,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
{
$mExpected = 'managerTitleFromObject';
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'load',
'getFieldData'
@@ -1206,7 +1282,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
$oManagerMock->method('load')->willReturn(true);
$oManagerMock->method('getFieldData')->willReturn($mExpected);
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'getManager'
));
@@ -1232,13 +1308,13 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
{
$mExpected = 'managerTitleFromTranslation';
- /** @var Language|PHPUnit_Framework_MockObject_MockObject $oLangMock */
+ /** @var Language|MockObject $oLangMock */
$oLangMock = $this->getMock(d3ordermanager::class, array(
'translateString',
));
$oLangMock->method('translateString')->willReturn($mExpected);
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'load',
'getFieldData'
@@ -1246,7 +1322,7 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
$oManagerMock->method('load')->willReturn(false);
$oManagerMock->method('getFieldData')->willReturn($mExpected);
- /** @var d3_cfg_ordermanageritem_overview|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_cfg_ordermanageritem_overview|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_cfg_ordermanageritem_overview::class, array(
'getManager',
'getLang'
@@ -1275,4 +1351,4 @@ class d3_cfg_ordermanageritem_overviewTest extends d3OrdermanagerUnitTestCase
{
return null;
}
-}
\ No newline at end of file
+}
diff --git a/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritem_settingsTest.php b/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritem_settingsTest.php
index 790fdb26..e7c75448 100644
--- a/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritem_settingsTest.php
+++ b/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanageritem_settingsTest.php
@@ -58,9 +58,9 @@ class d3_cfg_ordermanageritem_settingsTest extends d3OrdermanagerUnitTestCase
* @test
* @throws ReflectionException
*/
- public function getItemFoldersReturnArray()
+ public function getOrderFoldersReturnArray()
{
- $this->assertInternalType('array', $this->callMethod($this->_oController, 'getItemFolders'));
+ $this->assertInternalType('array', $this->callMethod($this->_oController, 'getOrderFolders'));
}
/**
diff --git a/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanagerset_mainTest.php b/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanagerset_mainTest.php
index cf8628c8..93b0ab9c 100644
--- a/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanagerset_mainTest.php
+++ b/src/tests/unit/Application/Controller/Admin/d3_cfg_ordermanagerset_mainTest.php
@@ -313,7 +313,7 @@ class d3_cfg_ordermanagerset_mainTest extends d3OrdermanagerUnitTestCase
$this->_oController = $oControllerMock;
$this->assertRegExp(
- '/(?!http).*\/d3_ordermanager_cron\s[0-9]\stestCjId/i',
+ '/(?!http).*php.*\/d3_ordermanager_cron\srun\s[0-9]\stestCjId/i',
$this->callMethod($this->_oController, 'getCronPath', array('testCjId'))
);
}
@@ -341,7 +341,7 @@ class d3_cfg_ordermanagerset_mainTest extends d3OrdermanagerUnitTestCase
$this->_oController = $oControllerMock;
$this->assertRegExp(
- '/(?!http).*\/d3_ordermanager_cron\s[0-9]/i',
+ '/(?!http).*php.*\/d3_ordermanager_cron\srun\s[0-9]/i',
$this->callMethod($this->_oController, 'getCronPath', array())
);
}
diff --git a/src/tests/unit/Application/Controller/Admin/d3_ordermanager_jobsTest.php b/src/tests/unit/Application/Controller/Admin/d3_ordermanager_jobsTest.php
index 3160a878..351af104 100644
--- a/src/tests/unit/Application/Controller/Admin/d3_ordermanager_jobsTest.php
+++ b/src/tests/unit/Application/Controller/Admin/d3_ordermanager_jobsTest.php
@@ -21,9 +21,13 @@ use D3\ModCfg\Application\Model\d3filesystem;
use D3\ModCfg\Application\Model\d3str;
use D3\Ordermanager\Application\Controller\Admin\d3_ordermanager_jobs;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\Application\Model\d3ordermanager_configurationcheck;
use D3\Ordermanager\Application\Model\d3ordermanager_execute;
use D3\Ordermanager\Application\Model\d3ordermanager_toorderassignment;
use D3\Ordermanager\Application\Model\d3ordermanagerlist;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_smartyException;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_templaterendererExceptionInterface;
use D3\Ordermanager\tests\unit\d3OrdermanagerUnitTestCase;
use Doctrine\DBAL\DBALException;
use Exception;
@@ -33,7 +37,8 @@ use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Language;
use OxidEsales\Eshop\Core\Session;
use OxidEsales\Eshop\Core\Model\ListModel;
-use PHPUnit_Framework_MockObject_MockObject;
+use OxidEsales\Eshop\Core\UtilsView;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
use ReflectionException;
use stdClass;
@@ -93,13 +98,13 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
*/
public function renderPass()
{
- /** @var Order|PHPUnit_Framework_MockObject_MockObject $oOrderMock */
+ /** @var Order|MockObject $oOrderMock */
$oOrderMock = $this->getMock(Order::class, array(
'load',
));
$oOrderMock->expects($this->once())->method('load')->willReturn(true);
- /** @var d3_ordermanager_jobs|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_ordermanager_jobs|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_ordermanager_jobs::class, array(
'getEditObjectId',
'getItemObject',
@@ -125,13 +130,13 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
{
$_POST['jobfolder'] = 'newSelectedFolder';
- /** @var Session|PHPUnit_Framework_MockObject_MockObject $oSessionMock */
+ /** @var Session|MockObject $oSessionMock */
$oSessionMock = $this->getMock(Session::class, array(
'setVariable'
));
$oSessionMock->expects($this->once())->method('setVariable')->willReturn(true);
- /** @var d3_ordermanager_jobs|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_ordermanager_jobs|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_ordermanager_jobs::class, array(
'd3GetSession',
));
@@ -163,13 +168,13 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
*/
public function canGetManagerJobs()
{
- /** @var d3ordermanagerlist|PHPUnit_Framework_MockObject_MockObject $oManagerListMock */
+ /** @var d3ordermanagerlist|MockObject $oManagerListMock */
$oManagerListMock = $this->getMock(d3ordermanagerlist::class, array(
'getList',
));
$oManagerListMock->expects($this->once())->method('getList')->willReturn(true);
- /** @var d3_ordermanager_jobs|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_ordermanager_jobs|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_ordermanager_jobs::class, array(
'getManagerList',
));
@@ -190,7 +195,7 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
*/
public function canGetManuallyExecutableManagerJobsNoConditionCheck()
{
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getValue'
));
@@ -205,7 +210,7 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
);
$oManagerExecuteMock->method('orderMeetsConditions')->willReturn(true);
- /** @var ListModel|PHPUnit_Framework_MockObject_MockObject $oListMock */
+ /** @var ListModel|MockObject $oListMock */
$oListMock = $this->getMock(ListModel::class, array(
'offsetUnset'
));
@@ -213,13 +218,13 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
$oListMock->offsetSet('No1', $oManagerMock);
$oListMock->offsetSet('No2', $oManagerMock);
- /** @var d3ordermanagerlist|PHPUnit_Framework_MockObject_MockObject $oManagerListMock */
+ /** @var d3ordermanagerlist|MockObject $oManagerListMock */
$oManagerListMock = $this->getMock(d3ordermanagerlist::class, array(
'd3GetManuallyManagerJobsByFolder',
));
$oManagerListMock->expects($this->once())->method('d3GetManuallyManagerJobsByFolder')->willReturn($oListMock);
- /** @var d3_ordermanager_jobs|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_ordermanager_jobs|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_ordermanager_jobs::class, array(
'getManagerList',
'getManagerExecute',
@@ -244,7 +249,7 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
*/
public function canGetManuallyExecutableManagerJobsConditionCheckPass()
{
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getValue'
));
@@ -259,7 +264,7 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
);
$oManagerExecuteMock->method('orderMeetsConditions')->will($this->onConsecutiveCalls(false, true));
- /** @var ListModel|PHPUnit_Framework_MockObject_MockObject $oListMock */
+ /** @var ListModel|MockObject $oListMock */
$oListMock = $this->getMock(ListModel::class, array(
'offsetUnset'
));
@@ -267,13 +272,13 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
$oListMock->offsetSet('No1', $oManagerMock);
$oListMock->offsetSet('No2', $oManagerMock);
- /** @var d3ordermanagerlist|PHPUnit_Framework_MockObject_MockObject $oManagerListMock */
+ /** @var d3ordermanagerlist|MockObject $oManagerListMock */
$oManagerListMock = $this->getMock(d3ordermanagerlist::class, array(
'd3GetManuallyManagerJobsByFolder',
));
$oManagerListMock->expects($this->once())->method('d3GetManuallyManagerJobsByFolder')->willReturn($oListMock);
- /** @var d3_ordermanager_jobs|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_ordermanager_jobs|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_ordermanager_jobs::class, array(
'getManagerList',
'getManagerExecute',
@@ -298,7 +303,7 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
*/
public function canGetManuallyExecutableManagerJobsConditionCheckFailed()
{
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getValue'
));
@@ -313,7 +318,7 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
);
$oManagerExecuteMock->method('orderMeetsConditions')->will($this->onConsecutiveCalls(false, true));
- /** @var ListModel|PHPUnit_Framework_MockObject_MockObject $oListMock */
+ /** @var ListModel|MockObject $oListMock */
$oListMock = $this->getMock(ListModel::class, array(
'offsetUnset'
));
@@ -321,13 +326,13 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
$oListMock->offsetSet('No1', $oManagerMock);
$oListMock->offsetSet('No2', $oManagerMock);
- /** @var d3ordermanagerlist|PHPUnit_Framework_MockObject_MockObject $oManagerListMock */
+ /** @var d3ordermanagerlist|MockObject $oManagerListMock */
$oManagerListMock = $this->getMock(d3ordermanagerlist::class, array(
'd3GetManuallyManagerJobsByFolder',
));
$oManagerListMock->expects($this->once())->method('d3GetManuallyManagerJobsByFolder')->willReturn($oListMock);
- /** @var d3_ordermanager_jobs|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_ordermanager_jobs|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_ordermanager_jobs::class, array(
'getManagerList',
'getManagerExecute',
@@ -346,6 +351,79 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
// $this->assertCount(1, $generatedList);
}
+ /**
+ * @covers \D3\Ordermanager\Application\Controller\Admin\d3_ordermanager_jobs::_d3GetManuallyManagerJobs
+ * @test
+ * @throws ReflectionException
+ * @throws Exception
+ */
+ public function cannotGetManuallyExecutableManagerJobsBecauseUnvalidConfiguration()
+ {
+ /** @var d3ordermanager|MockObject $oManagerMock */
+ $oManagerMock = $this->getMockBuilder(d3ordermanager::class)
+ ->setMethods(['getValue'])
+ ->getMock();
+ $oManagerMock->method('getValue')->willReturn(true);
+
+ /** @var d3ordermanager_requirementException|MockObject $exception */
+ $exception = $this->getMockBuilder(d3ordermanager_requirementException::class)
+ ->disableOriginalConstructor()
+ ->getMock();
+
+ /** @var UtilsView|MockObject $utilsViewMock */
+ $utilsViewMock = $this->getMockBuilder(UtilsView::class)
+ ->setMethods(['addErrorToDisplay'])
+ ->getMock();
+ $utilsViewMock->expects($this->atLeastOnce())->method('addErrorToDisplay')->willReturn(true);
+ d3GetModCfgDIC()->set('d3ox.ordermanager.'.UtilsView::class, $utilsViewMock);
+
+ /** @var d3ordermanager_execute|MockObject $oManagerExecuteMock */
+ $oManagerExecuteMock = $this->getMockBuilder(d3ordermanager_execute::class)
+ ->setMethods(['orderMeetsConditions'])
+ ->setConstructorArgs([$oManagerMock])
+ ->getMock();
+ $oManagerExecuteMock->method('orderMeetsConditions')->willThrowException($exception);
+
+ /** @var ListModel|MockObject $oListMock */
+ $oListMock = $this->getMockBuilder(ListModel::class)
+ ->setMethods(['offsetUnset'])
+ ->getMock();
+ $oListMock->expects($this->never())->method('offsetUnset');
+ $oListMock->offsetSet('No1', $oManagerMock);
+ $oListMock->offsetSet('No2', $oManagerMock);
+
+ /** @var d3ordermanagerlist|MockObject $oManagerListMock */
+ $oManagerListMock = $this->getMockBuilder(d3ordermanagerlist::class)
+ ->setMethods(['d3GetManuallyManagerJobsByFolder'])
+ ->getMock();
+ $oManagerListMock->expects($this->once())->method('d3GetManuallyManagerJobsByFolder')->willReturn($oListMock);
+
+ /** @var d3_ordermanager_jobs|MockObject $oControllerMock */
+ $oControllerMock = $this->getMockBuilder(d3_ordermanager_jobs::class)
+ ->setMethods([
+ 'getManagerList',
+ 'getManagerExecute'
+ ])
+ ->getMock();
+ $oControllerMock->method('getManagerList')->willReturn($oManagerListMock);
+ $oControllerMock->method('getManagerExecute')->willReturn($oManagerExecuteMock);
+
+ $this->_oController = $oControllerMock;
+
+ $generatedList = $this->callMethod(
+ $this->_oController,
+ '_d3GetManuallyManagerJobs',
+ array('sTestFolderId')
+ );
+ $this->assertInstanceOf(
+ ListModel::class,
+ $generatedList
+ );
+ $this->assertTrue(count($generatedList) === 0);
+ // offsetUnset doesn't work, because it's mocked
+ // $this->assertCount(1, $generatedList);
+ }
+
/**
* @test
* @throws ReflectionException
@@ -356,7 +434,7 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
'1' => '2',
);
- /** @var ListModel|PHPUnit_Framework_MockObject_MockObject $oJobListMock */
+ /** @var ListModel|MockObject $oJobListMock */
$oJobListMock = $this->getMock(ListModel::class, array(
'getArray',
));
@@ -404,7 +482,7 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
*/
public function ordermanagerStartExecutionNoConditionCheck()
{
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'load',
'setEditedValues',
@@ -414,7 +492,7 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
$oManagerMock->expects($this->never())->method('setEditedValues')->willReturn(true);
$oManagerMock->method('getValue')->willReturn(false);
- /** @var d3ordermanager_execute|PHPUnit_Framework_MockObject_MockObject $oManagerExecuteMock */
+ /** @var d3ordermanager_execute|MockObject $oManagerExecuteMock */
$oManagerExecuteMock = $this->getMock(d3ordermanager::class, array(
'exec4order',
'finishJobExecution',
@@ -424,7 +502,7 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
$oManagerExecuteMock->expects($this->once())->method('finishJobExecution')->willReturn(true);
$oManagerExecuteMock->method('orderMeetsConditions')->willReturn(false);
- /** @var d3_ordermanager_jobs|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_ordermanager_jobs|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_ordermanager_jobs::class, array(
'getManager',
'getManagerExecute',
@@ -446,7 +524,7 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
*/
public function ordermanagerStartExecutionConditionCheckPass()
{
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'load',
'setEditedValues',
@@ -456,7 +534,7 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
$oManagerMock->expects($this->never())->method('setEditedValues')->willReturn(true);
$oManagerMock->method('getValue')->willReturn(true);
- /** @var d3ordermanager_execute|PHPUnit_Framework_MockObject_MockObject $oManagerExecuteMock */
+ /** @var d3ordermanager_execute|MockObject $oManagerExecuteMock */
$oManagerExecuteMock = $this->getMock(d3ordermanager::class, array(
'exec4order',
'finishJobExecution',
@@ -466,13 +544,17 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
$oManagerExecuteMock->expects($this->once())->method('finishJobExecution')->willReturn(true);
$oManagerExecuteMock->method('orderMeetsConditions')->willReturn(true);
- /** @var d3_ordermanager_jobs|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
- $oControllerMock = $this->getMock(d3_ordermanager_jobs::class, array(
- 'getManager',
- 'getManagerExecute',
- ));
+ /** @var d3_ordermanager_jobs|MockObject $oControllerMock */
+ $oControllerMock = $this->getMockBuilder(d3_ordermanager_jobs::class)
+ ->setMethods([
+ 'getManager',
+ 'getManagerExecute',
+ 'checkForConfigurationException'
+ ])
+ ->getMock();
$oControllerMock->method('getManager')->willReturn($oManagerMock);
$oControllerMock->method('getManagerExecute')->willReturn($oManagerExecuteMock);
+ $oControllerMock->method('checkForConfigurationException')->willReturn(true);
$this->_oController = $oControllerMock;
@@ -485,10 +567,11 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
/**
* @test
* @throws ReflectionException
+ * @dataProvider cannotExecChangedContentsBecauseOfExceptionDataProvider
*/
- public function ordermanagerStartExecutionConditionCheckFailed()
+ public function ordermanagerStartExecutionConditionCheckFailed($exceptionClass)
{
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'load',
'setEditedValues',
@@ -498,7 +581,7 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
$oManagerMock->expects($this->never())->method('setEditedValues')->willReturn(true);
$oManagerMock->method('getValue')->willReturn(true);
- /** @var d3ordermanager_execute|PHPUnit_Framework_MockObject_MockObject $oManagerExecuteMock */
+ /** @var d3ordermanager_execute|MockObject $oManagerExecuteMock */
$oManagerExecuteMock = $this->getMock(d3ordermanager::class, array(
'exec4order',
'finishJobExecution',
@@ -508,13 +591,22 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
$oManagerExecuteMock->expects($this->never())->method('finishJobExecution')->willReturn(true);
$oManagerExecuteMock->method('orderMeetsConditions')->willReturn(false);
- /** @var d3_ordermanager_jobs|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
- $oControllerMock = $this->getMock(d3_ordermanager_jobs::class, array(
- 'getManager',
- 'getManagerExecute',
- ));
+ /** @var d3ordermanager_requirementException|d3ordermanager_templaterendererExceptionInterface|MockObject $exception */
+ $exception = $this->getMockBuilder($exceptionClass)
+ ->disableOriginalConstructor()
+ ->getMock();
+
+ /** @var d3_ordermanager_jobs|MockObject $oControllerMock */
+ $oControllerMock = $this->getMockBuilder(d3_ordermanager_jobs::class)
+ ->setMethods([
+ 'getManager',
+ 'getManagerExecute',
+ 'checkForConfigurationException'
+ ])
+ ->getMock();
$oControllerMock->method('getManager')->willReturn($oManagerMock);
$oControllerMock->method('getManagerExecute')->willReturn($oManagerExecuteMock);
+ $oControllerMock->method('checkForConfigurationException')->willThrowException($exception);
$this->_oController = $oControllerMock;
@@ -530,7 +622,7 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
*/
public function changedOrdermanagerStartExecutionNoConditionCheck()
{
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'load',
'setEditedValues',
@@ -540,7 +632,7 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
$oManagerMock->expects($this->once())->method('setEditedValues')->willReturn(true);
$oManagerMock->method('getValue')->willReturn(false);
- /** @var d3ordermanager_execute|PHPUnit_Framework_MockObject_MockObject $oManagerExecuteMock */
+ /** @var d3ordermanager_execute|MockObject $oManagerExecuteMock */
$oManagerExecuteMock = $this->getMock(d3ordermanager::class, array(
'exec4order',
'finishJobExecution',
@@ -550,7 +642,7 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
$oManagerExecuteMock->expects($this->once())->method('finishJobExecution')->willReturn(true);
$oManagerExecuteMock->method('orderMeetsConditions')->willReturn(false);
- /** @var d3_ordermanager_jobs|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_ordermanager_jobs|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_ordermanager_jobs::class, array(
'getManager',
'getManagerExecute',
@@ -572,7 +664,7 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
*/
public function changedOrdermanagerStartExecutionConditionCheckPass()
{
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'load',
'setEditedValues',
@@ -582,7 +674,7 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
$oManagerMock->expects($this->once())->method('setEditedValues')->willReturn(true);
$oManagerMock->method('getValue')->willReturn(true);
- /** @var d3ordermanager_execute|PHPUnit_Framework_MockObject_MockObject $oManagerExecuteMock */
+ /** @var d3ordermanager_execute|MockObject $oManagerExecuteMock */
$oManagerExecuteMock = $this->getMock(d3ordermanager::class, array(
'exec4order',
'finishJobExecution',
@@ -592,13 +684,17 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
$oManagerExecuteMock->expects($this->once())->method('finishJobExecution')->willReturn(true);
$oManagerExecuteMock->method('orderMeetsConditions')->willReturn(true);
- /** @var d3_ordermanager_jobs|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
- $oControllerMock = $this->getMock(d3_ordermanager_jobs::class, array(
- 'getManager',
- 'getManagerExecute',
- ));
+ /** @var d3_ordermanager_jobs|MockObject $oControllerMock */
+ $oControllerMock = $this->getMockBuilder(d3_ordermanager_jobs::class)
+ ->setMethods([
+ 'getManager',
+ 'getManagerExecute',
+ 'checkForConfigurationException'
+ ])
+ ->getMock();
$oControllerMock->method('getManager')->willReturn($oManagerMock);
$oControllerMock->method('getManagerExecute')->willReturn($oManagerExecuteMock);
+ $oControllerMock->method('checkForConfigurationException')->willReturn(true);
$this->_oController = $oControllerMock;
@@ -611,10 +707,11 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
/**
* @test
* @throws ReflectionException
+ * @dataProvider cannotExecChangedContentsBecauseOfExceptionDataProvider
*/
- public function changedOrdermanagerStartExecutionConditionCheckFailed()
+ public function changedOrdermanagerStartExecutionConditionCheckFailed($exceptionClass)
{
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'load',
'setEditedValues',
@@ -624,7 +721,7 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
$oManagerMock->expects($this->once())->method('setEditedValues')->willReturn(true);
$oManagerMock->method('getValue')->willReturn(true);
- /** @var d3ordermanager_execute|PHPUnit_Framework_MockObject_MockObject $oManagerExecuteMock */
+ /** @var d3ordermanager_execute|MockObject $oManagerExecuteMock */
$oManagerExecuteMock = $this->getMock(d3ordermanager::class, array(
'exec4order',
'finishJobExecution',
@@ -634,13 +731,22 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
$oManagerExecuteMock->expects($this->never())->method('finishJobExecution')->willReturn(true);
$oManagerExecuteMock->method('orderMeetsConditions')->willReturn(false);
- /** @var d3_ordermanager_jobs|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
- $oControllerMock = $this->getMock(d3_ordermanager_jobs::class, array(
- 'getManager',
- 'getManagerExecute',
- ));
+ /** @var d3ordermanager_requirementException|d3ordermanager_templaterendererExceptionInterface|MockObject $exception */
+ $exception = $this->getMockBuilder($exceptionClass)
+ ->disableOriginalConstructor()
+ ->getMock();
+
+ /** @var d3_ordermanager_jobs|MockObject $oControllerMock */
+ $oControllerMock = $this->getMockBuilder(d3_ordermanager_jobs::class)
+ ->setMethods([
+ 'getManager',
+ 'getManagerExecute',
+ 'checkForConfigurationException'
+ ])
+ ->getMock();
$oControllerMock->method('getManager')->willReturn($oManagerMock);
$oControllerMock->method('getManagerExecute')->willReturn($oManagerExecuteMock);
+ $oControllerMock->method('checkForConfigurationException')->willThrowException($exception);
$this->_oController = $oControllerMock;
@@ -674,13 +780,13 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
*/
public function canStartResettingOrderManagerAssignment()
{
- /** @var d3ordermanager_execute|PHPUnit_Framework_MockObject_MockObject $oManagerAssignmentMock */
+ /** @var d3ordermanager_execute|MockObject $oManagerAssignmentMock */
$oManagerAssignmentMock = $this->getMock(d3ordermanager_toorderassignment::class, array(
'resetAssignment',
), array(d3GetModCfgDIC()->get(d3ordermanager::class)));
$oManagerAssignmentMock->expects($this->once())->method('resetAssignment')->willReturn(true);
- /** @var d3_ordermanager_jobs|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_ordermanager_jobs|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_ordermanager_jobs::class, array(
'getManager',
'getOrderManagerAssignment',
@@ -707,13 +813,13 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
'Folder#2',
);
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'd3getSelectableFolderList',
));
$oManagerMock->expects($this->once())->method('d3getSelectableFolderList')->willReturn($aFolderList);
- /** @var d3_ordermanager_jobs|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_ordermanager_jobs|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_ordermanager_jobs::class, array(
'getManager',
));
@@ -738,17 +844,17 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
{
$_POST['oxid'] = 'testItemId';
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'load',
'getEditableContent',
));
$oManagerMock->expects($this->once())->method('load')->willReturn(true);
- $oManagerMock->expects($this->exactly(2))->method('getEditableContent')->with(
+ $oManagerMock->expects($this->once())->method('getEditableContent')->with(
$this->stringContains('testItemId')
)->willReturn(true);
- /** @var d3_ordermanager_jobs|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_ordermanager_jobs|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_ordermanager_jobs::class, array(
'getManager',
));
@@ -762,6 +868,66 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
);
}
+ /**
+ * @covers \D3\Ordermanager\Application\Controller\Admin\d3_ordermanager_jobs::execChangedContents
+ * @test
+ * @throws ReflectionException
+ * @dataProvider cannotExecChangedContentsBecauseOfExceptionDataProvider
+ */
+ public function cannotExecChangedContentsBecauseOfException($exceptionClass)
+ {
+ $_POST['oxid'] = 'testItemId';
+
+ /** @var d3ordermanager|MockObject $oManagerMock */
+ $oManagerMock = $this->getMockBuilder(d3ordermanager::class)
+ ->setMethods([
+ 'load',
+ 'getEditableContent'
+ ])
+ ->getMock();
+ $oManagerMock->expects($this->once())->method('load')->willReturn(true);
+ $oManagerMock->expects($this->never())->method('getEditableContent')->with(
+ $this->stringContains('testItemId')
+ )->willReturn(true);
+
+ /** @var d3ordermanager_requirementException|d3ordermanager_templaterendererExceptionInterface|MockObject $exception */
+ $exception = $this->getMockBuilder($exceptionClass)
+ ->disableOriginalConstructor()
+ ->getMock();
+
+ /** @var UtilsView|MockObject $utilsViewMock */
+ $utilsViewMock = $this->getMockBuilder(UtilsView::class)
+ ->setMethods(['addErrorToDisplay'])
+ ->getMock();
+ $utilsViewMock->expects($this->atLeastOnce())->method('addErrorToDisplay')->willReturn(true);
+ d3GetModCfgDIC()->set('d3ox.ordermanager.'.UtilsView::class, $utilsViewMock);
+
+ /** @var d3_ordermanager_jobs|MockObject $oControllerMock */
+ $oControllerMock = $this->getMockBuilder(d3_ordermanager_jobs::class)
+ ->setMethods(['getManager', 'checkForConfigurationException'])
+ ->getMock();
+ $oControllerMock->method('getManager')->willReturn($oManagerMock);
+ $oControllerMock->method('checkForConfigurationException')->willThrowException($exception);
+
+ $this->_oController = $oControllerMock;
+
+ $this->callMethod(
+ $this->_oController,
+ 'execChangedContents'
+ );
+ }
+
+ /**
+ * @return string[][]
+ */
+ public function cannotExecChangedContentsBecauseOfExceptionDataProvider()
+ {
+ return [
+ 'unvalid configuration' => [d3ordermanager_requirementException::class],
+ 'smarty rendering error' => [d3ordermanager_smartyException::class]
+ ];
+ }
+
/**
* @test
* @throws ReflectionException
@@ -798,7 +964,7 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
*/
public function canGetHelpUrlWithExtension()
{
- /** @var d3filesystem|PHPUnit_Framework_MockObject_MockObject $oFileSystemMock */
+ /** @var d3filesystem|MockObject $oFileSystemMock */
$oFileSystemMock = $this->getMock(d3filesystem::class, array(
'splitFilename',
));
@@ -806,9 +972,10 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
array('name' => 'filename', 'ext' => 'html')
);
+ $definitions = d3GetModCfgDIC()->getDefinitions();
d3GetModCfgDIC()->set(d3filesystem::class, $oFileSystemMock);
- /** @var d3str|PHPUnit_Framework_MockObject_MockObject $oD3StrMock */
+ /** @var d3str|MockObject $oD3StrMock */
$oD3StrMock = $this->getMock(d3str::class, array(
'unprefixedslashit',
'trailingslashit',
@@ -818,19 +985,19 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
d3GetModCfgDIC()->set(d3str::class, $oD3StrMock);
- /** @var Language|PHPUnit_Framework_MockObject_MockObject $oLangMock */
+ /** @var Language|MockObject $oLangMock */
$oLangMock = $this->getMock(Language::class, array(
'translateString',
));
$oLangMock->method('translateString')->willReturn('modulepath');
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oModCfgMock */
+ /** @var stdClass|MockObject $oModCfgMock */
$oModCfgMock = $this->getMock(stdClass::class, array(
'getHelpURL'
));
$oModCfgMock->method('getHelpURL')->willReturn('https://faq.d3data.de/module/');
- /** @var d3_ordermanager_jobs|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_ordermanager_jobs|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_ordermanager_jobs::class, array(
'd3GetSet',
'getLang',
@@ -846,6 +1013,9 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
'https://faq.d3data.de/module/modulepath',
$this->callMethod($this->_oController, 'getHelpURL')
);
+
+ d3GetModCfgDIC()->reset();
+ d3GetModCfgDIC()->setDefinitions($definitions);
}
/**
@@ -854,7 +1024,7 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
*/
public function canGetHelpUrlWithoutExtension()
{
- /** @var d3filesystem|PHPUnit_Framework_MockObject_MockObject $oFileSystemMock */
+ /** @var d3filesystem|MockObject $oFileSystemMock */
$oFileSystemMock = $this->getMock(d3filesystem::class, array(
'splitFilename',
));
@@ -862,9 +1032,10 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
array('name' => 'filename', 'ext' => '')
);
+ $definitions = d3GetModCfgDIC()->getDefinitions();
d3GetModCfgDIC()->set(d3filesystem::class, $oFileSystemMock);
- /** @var d3str|PHPUnit_Framework_MockObject_MockObject $oD3StrMock */
+ /** @var d3str|MockObject $oD3StrMock */
$oD3StrMock = $this->getMock(d3str::class, array(
'unprefixedslashit',
'trailingslashit',
@@ -874,19 +1045,19 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
d3GetModCfgDIC()->set(d3str::class, $oD3StrMock);
- /** @var Language|PHPUnit_Framework_MockObject_MockObject $oLangMock */
+ /** @var Language|MockObject $oLangMock */
$oLangMock = $this->getMock(Language::class, array(
'translateString',
));
$oLangMock->method('translateString')->willReturn('modulepath');
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oModCfgMock */
+ /** @var stdClass|MockObject $oModCfgMock */
$oModCfgMock = $this->getMock(stdClass::class, array(
'getHelpURL'
));
$oModCfgMock->method('getHelpURL')->willReturn('https://faq.d3data.de/module/');
- /** @var d3_ordermanager_jobs|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_ordermanager_jobs|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_ordermanager_jobs::class, array(
'd3GetSet',
'getLang',
@@ -902,6 +1073,9 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
'https://faq.d3data.de/module/modulepath',
$this->callMethod($this->_oController, 'getHelpURL')
);
+
+ d3GetModCfgDIC()->reset();
+ d3GetModCfgDIC()->setDefinitions($definitions);
}
/**
@@ -949,4 +1123,45 @@ class d3_ordermanager_jobsTest extends d3OrdermanagerUnitTestCase
{
return null;
}
-}
\ No newline at end of file
+
+ /**
+ * @covers \D3\Ordermanager\Application\Controller\Admin\d3_ordermanager_jobs::checkForConfigurationException
+ * @test
+ * @param $configuration
+ * @throws ReflectionException
+ * @dataProvider canCheckForConfigurationExceptionDataProvider
+ */
+ public function canCheckForConfigurationException($configuration)
+ {
+ /** @var d3ordermanager_configurationcheck|MockObject $confCheckMock */
+ $confCheckMock = $this->getMockBuilder(d3ordermanager_configurationcheck::class)
+ ->disableOriginalConstructor()
+ ->setMethods(['checkThrowingExceptions'])
+ ->getMock();
+ $confCheckMock->expects($this->once())->method('checkThrowingExceptions')->willReturn(true);
+ d3GetModCfgDIC()->set(d3ordermanager_configurationcheck::class, $confCheckMock);
+
+ /** @var d3ordermanager|MockObject $oManagerMock */
+ $oManagerMock = $this->getMockBuilder(d3ordermanager::class)
+ ->setMethods(['getValue'])
+ ->getMock();
+ $oManagerMock->method('getValue')->willReturn($configuration);
+
+ $this->callMethod(
+ $this->_oController,
+ 'checkForConfigurationException',
+ [$oManagerMock]
+ );
+ }
+
+ /**
+ * @return array[]
+ */
+ public function canCheckForConfigurationExceptionDataProvider()
+ {
+ return [
+ [d3ordermanager_configurationcheck::REQUIREMENTS_AND_ACTIONS],
+ [d3ordermanager_configurationcheck::ACTIONS_ONLY]
+ ];
+ }
+}
diff --git a/src/tests/unit/Application/Controller/d3ordermanager_responseTest.php b/src/tests/unit/Application/Controller/d3ordermanager_responseTest.php
index 880dd12d..23325e45 100644
--- a/src/tests/unit/Application/Controller/d3ordermanager_responseTest.php
+++ b/src/tests/unit/Application/Controller/d3ordermanager_responseTest.php
@@ -18,18 +18,23 @@ namespace D3\Ordermanager\Tests\unit\Application\Controller;
use D3\ModCfg\Application\Model\Configuration\d3_cfg_mod;
use D3\ModCfg\Application\Model\Log\d3log;
+use D3\ModCfg\Application\Model\Log\d3NullLogger;
use D3\Ordermanager\Application\Controller\d3ordermanager_response;
use D3\Ordermanager\Application\Model\d3ordermanager;
use D3\Ordermanager\Application\Model\d3ordermanager_execute;
use D3\Ordermanager\Application\Model\d3ordermanagerlist;
use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_cronUnavailableException;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_cronUnavailableException as cronUnavailableException;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
+use D3\Ordermanager\Application\Model\Requirements\d3ordermanager_requirement_orderfield;
use D3\Ordermanager\tests\unit\d3OrdermanagerUnitTestCase;
use Doctrine\DBAL\DBALException;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
use OxidEsales\Eshop\Core\Language;
-use PHPUnit_Framework_MockObject_MockObject;
+use OxidEsales\Eshop\Core\Registry;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
use ReflectionException;
use stdClass;
@@ -64,16 +69,76 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
*/
public function initOutputSuccessMessageToBrowser()
{
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3ordermanager_response::class, array(
'_startExecution',
'isBrowserCall',
));
$oControllerMock->expects($this->once())->method('_startExecution')->willReturn(false);
- $oControllerMock->expects($this->once())->method('isBrowserCall')->willReturn(true);
+ $oControllerMock->expects($this->atLeast(2))->method('isBrowserCall')->willReturn(true);
$this->_oController = $oControllerMock;
+ $this->expectOutputRegex('@[a-z0-9]{1,}@i'); // output not empty
+ $this->callMethod($this->_oController, 'init');
+ }
+
+ /**
+ * @covers \D3\Ordermanager\Application\Controller\d3ordermanager_response::init
+ * @test
+ * @throws ReflectionException
+ */
+ public function initOutputErrorMessageToBrowser()
+ {
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
+ $oControllerMock = $this->getMockBuilder(d3ordermanager_response::class)
+ ->setMethods([
+ '_startExecution',
+ 'isBrowserCall'
+ ])
+ ->getMock();
+ $oControllerMock->expects($this->once())->method('_startExecution')->willReturn(true);
+ $oControllerMock->expects($this->atLeast(2))->method('isBrowserCall')->willReturn(false);
+
+ $this->_oController = $oControllerMock;
+
+ Registry::getUtilsView()->addErrorToDisplay(new StandardException('excMessage1'));
+
+ $this->expectOutputRegex('@.*ERRORS excMessage1.*@i'); // output not empty
+
+ $this->callMethod($this->_oController, 'init');
+ }
+
+ /**
+ * @covers \D3\Ordermanager\Application\Controller\d3ordermanager_response::init
+ * @test
+ * @throws ReflectionException
+ */
+ public function initcantRunBecauseOfInvalidConfiguration()
+ {
+ /** @var d3ordermanager_requirement_orderfield|MockObject $requirement */
+ $requirement = oxNew(d3ordermanager_requirement_orderfield::class, $this->_oController->getManager());
+
+ /** @var d3ordermanager_requirementException|MockObject $exception */
+ $exception = $this->getMockBuilder(d3ordermanager_requirementException::class)
+ ->setConstructorArgs([$requirement])
+ ->setMethods(['debugOut', 'getMessage'])
+ ->getMock();
+ $exception->expects($this->once())->method('debugOut')->willReturn(true);
+
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
+ $oControllerMock = $this->getMockBuilder(d3ordermanager_response::class)
+ ->setMethods([
+ '_startExecution',
+ 'isBrowserCall'
+ ])
+ ->getMock();
+ $oControllerMock->expects($this->once())->method('_startExecution')->willThrowException($exception);
+ $oControllerMock->expects($this->atLeast(1))->method('isBrowserCall')->willReturn(true);
+
+ $this->_oController = $oControllerMock;
+ Registry::set('logger', oxNew(d3NullLogger::class));
+
ob_start();
$this->callMethod($this->_oController, 'init');
$sOutput = ob_get_contents();
@@ -86,24 +151,22 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
* @test
* @throws ReflectionException
*/
- public function initDontOutputSuccessMessageToServer()
+ public function initThrowExecptionAtServerCall()
{
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
- $oControllerMock = $this->getMock(d3ordermanager_response::class, array(
- '_startExecution',
- 'isBrowserCall'
- ));
- $oControllerMock->expects($this->once())->method('_startExecution')->willReturn(false);
- $oControllerMock->expects($this->once())->method('isBrowserCall')->willReturn(false);
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
+ $oControllerMock = $this->getMockBuilder(d3ordermanager_response::class)
+ ->setMethods([
+ '_startExecution',
+ 'isBrowserCall'
+ ])
+ ->getMock();
+ $oControllerMock->expects($this->once())->method('_startExecution')->willReturn(true);
+ $oControllerMock->expects($this->atLeast(2))->method('isBrowserCall')->willReturn(false);
$this->_oController = $oControllerMock;
- ob_start();
+ $this->expectOutputRegex('@.*DEPRECATED.*@');
$this->callMethod($this->_oController, 'init');
- $sOutput = ob_get_contents();
- ob_end_clean();
-
- $this->assertEmpty($sOutput);
}
/**
@@ -112,22 +175,48 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
*/
public function initDontOutputSuccessMessageInCaseOfException()
{
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
- $oControllerMock = $this->getMock(d3ordermanager_response::class, array(
- '_startExecution',
- 'isBrowserCall'
- ));
- $oControllerMock->expects($this->once())->method('_startExecution')->willReturn(true);
- $oControllerMock->expects($this->once())->method('isBrowserCall')->willReturn(true);
+ d3GetModCfgDIC()->setParameter(
+ cronUnavailableException::class.'.args.message',
+ 'errorMessage'
+ );
+ /** @var d3ordermanager_cronUnavailableException $exc */
+ $exc = d3GetModCfgDIC()->get(d3ordermanager_cronUnavailableException::class);
+
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
+ $oControllerMock = $this->getMockBuilder(d3ordermanager_response::class)
+ ->setMethods([
+ '_startExecution',
+ 'isBrowserCall'
+ ])
+ ->getMock();
+ $oControllerMock->expects($this->once())->method('_startExecution')->willThrowException($exc);
+ $oControllerMock->expects($this->atLeastOnce())->method('isBrowserCall')->willReturn(true);
$this->_oController = $oControllerMock;
- ob_start();
+ $this->expectOutputRegex('@.*errorMessage.*@');
$this->callMethod($this->_oController, 'init');
- $sOutput = ob_get_contents();
- ob_end_clean();
+ }
- $this->assertEmpty($sOutput);
+ /**
+ * @covers \D3\Ordermanager\Application\Controller\d3ordermanager_response::initCli
+ * @test
+ * @throws ReflectionException
+ */
+ public function canRunInitCli()
+ {
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
+ $oControllerMock = $this->getMockBuilder(d3ordermanager_response::class)
+ ->setMethods(['_startExecution'])
+ ->getMock();
+ $oControllerMock->expects($this->once())->method('_startExecution')->willReturn(true);
+
+ $this->_oController = $oControllerMock;
+
+ $this->callMethod(
+ $this->_oController,
+ 'initCli'
+ );
}
/**
@@ -136,13 +225,13 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
*/
public function startExecutionPassWithoutException()
{
- /** @var d3log|PHPUnit_Framework_MockObject_MockObject $oLogMock */
+ /** @var d3log|MockObject $oLogMock */
$oLogMock = $this->getMock(d3log::class, array(
'log'
));
$oLogMock->method('log')->willReturn(true);
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oModCfgMock */
+ /** @var stdClass|MockObject $oModCfgMock */
$oModCfgMock = $this->getMock(stdClass::class, array(
'd3getLog',
'setValue',
@@ -152,7 +241,7 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
$oModCfgMock->method('setValue')->willReturn(true);
$oModCfgMock->method('saveNoLicenseRefresh')->willReturn(true);
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3ordermanager_response::class, array(
'_getSet',
'_checkUnavailableCronjob',
@@ -160,17 +249,15 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
'_startJobs',
));
$oControllerMock->method('_getSet')->willReturn($oModCfgMock);
- $oControllerMock->method('_checkUnavailableCronjob')->willReturn(true);
+ $oControllerMock->method('_checkUnavailableCronjob')->willReturn(null);
$oControllerMock->method('_getCronTimestampVarName')->willReturn(true);
$oControllerMock->expects($this->once())->method('_startJobs')->willReturn(true);
$this->_oController = $oControllerMock;
- $this->assertFalse(
- $this->callMethod(
- $this->_oController,
- '_startExecution'
- )
+ $this->callMethod(
+ $this->_oController,
+ '_startExecution'
);
}
@@ -180,13 +267,13 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
*/
public function startExecutionPassWithCronUnavailableException()
{
- /** @var d3log|PHPUnit_Framework_MockObject_MockObject $oLogMock */
+ /** @var d3log|MockObject $oLogMock */
$oLogMock = $this->getMock(d3log::class, array(
'log'
));
$oLogMock->method('log')->willReturn(true);
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oModCfgMock */
+ /** @var stdClass|MockObject $oModCfgMock */
$oModCfgMock = $this->getMock(stdClass::class, array(
'd3getLog',
'setValue',
@@ -196,7 +283,7 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
$oModCfgMock->method('setValue')->willReturn(true);
$oModCfgMock->method('saveNoLicenseRefresh')->willReturn(true);
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3ordermanager_response::class, array(
'_getSet',
'_checkUnavailableCronjob',
@@ -210,49 +297,7 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
$this->_oController = $oControllerMock;
- $this->assertTrue(
- $this->callMethod(
- $this->_oController,
- '_startExecution'
- )
- );
- }
-
- /**
- * @test
- * @throws ReflectionException
- */
- public function startExecutionPassWithStandardException()
- {
- /** @var d3log|PHPUnit_Framework_MockObject_MockObject $oLogMock */
- $oLogMock = $this->getMock(d3log::class, array(
- 'log'
- ));
- $oLogMock->method('log')->willReturn(true);
-
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oModCfgMock */
- $oModCfgMock = $this->getMock(stdClass::class, array(
- 'd3getLog',
- 'setValue',
- 'saveNoLicenseRefresh',
- ));
- $oModCfgMock->method('d3getLog')->willReturn($oLogMock);
- $oModCfgMock->method('setValue')->willReturn(true);
- $oModCfgMock->method('saveNoLicenseRefresh')->willReturn(true);
-
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
- $oControllerMock = $this->getMock(d3ordermanager_response::class, array(
- '_getSet',
- '_checkUnavailableCronjob',
- '_getCronTimestampVarName',
- '_startJobs',
- ));
- $oControllerMock->method('_getSet')->willReturn($oModCfgMock);
- $oControllerMock->method('_checkUnavailableCronjob')->will($this->returnCallback(array($this, 'standardExceptionCallback')));
- $oControllerMock->method('_getCronTimestampVarName')->willReturn(true);
- $oControllerMock->expects($this->never())->method('_startJobs')->willReturn(true);
-
- $this->_oController = $oControllerMock;
+ $this->setExpectedException(d3ordermanager_cronUnavailableException::class);
$this->assertTrue(
$this->callMethod(
@@ -260,23 +305,6 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
'_startExecution'
)
);
-
- $fileName = 'd3ordermanagerExceptionsTest.txt';
- $sLogFolder = str_replace(basename(OX_LOG_FILE), '', OX_LOG_FILE);
- $sLogFile = $sLogFolder.$fileName;
-
- // backward compatibility for OXID < 6.1
- if (method_exists(StandardException::class, 'setLogFileName')
- && file_exists($sLogFile)
- ) {
- $file = file_get_contents($sLogFile);
- unlink($sLogFile);
- $this->assertContains('cron unavailable', $file);
- } elseif (file_exists(OX_LOG_FILE)) {
- $file = file_get_contents(OX_LOG_FILE);
- file_put_contents(OX_LOG_FILE, '');
- $this->assertContains('cron unavailable', $file);
- }
}
/**
@@ -313,7 +341,6 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
/** @var d3ordermanager_cronUnavailableException $oException */
$oException = d3GetModCfgDIC()->get(d3ordermanager_cronUnavailableException::class);
- $oException->d3disableScreenMessage();
throw $oException;
}
@@ -355,13 +382,13 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
*/
public function startedJobsCountPass()
{
- /** @var d3log|PHPUnit_Framework_MockObject_MockObject $oLogMock */
+ /** @var d3log|MockObject $oLogMock */
$oLogMock = $this->getMock(d3log::class, array(
'log'
));
$oLogMock->method('log')->willReturn(true);
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getId',
'd3GetLog',
@@ -371,7 +398,7 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
$oManagerMock->method('d3GetLog')->willReturn($oLogMock);
$oManagerMock->method('load')->willReturn(true);
- /** @var d3ordermanager_execute|PHPUnit_Framework_MockObject_MockObject $oManagerExecuteMock */
+ /** @var d3ordermanager_execute|MockObject $oManagerExecuteMock */
$oManagerExecuteMock = $this->getMock(d3ordermanager_execute::class, array(
'setManager',
'startJobExecution',
@@ -381,7 +408,7 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
$oManagerExecuteMock->expects($this->exactly(3))->method('startJobExecution')->willReturn(true);
$oManagerExecuteMock->expects($this->once())->method('finishJobExecution')->willReturn(true);
- /** @var d3ordermanagerlist|PHPUnit_Framework_MockObject_MockObject $oListMock */
+ /** @var d3ordermanagerlist|MockObject $oListMock */
$oListMock = $this->getMock(d3ordermanagerlist::class, array(
'setCronJobId',
'setCustomSorting',
@@ -394,7 +421,7 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
$oListMock->offsetSet('item2', $oManagerMock);
$oListMock->offsetSet('item3', $oManagerMock);
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3ordermanager_response::class, array(
'getManagerList',
'getManager',
@@ -427,7 +454,7 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
*/
public function baseAccessKeyPassedToSetOne()
{
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oModCfgMock */
+ /** @var stdClass|MockObject $oModCfgMock */
$oModCfgMock = $this->getMock(stdClass::class, array(
'getValue',
));
@@ -436,13 +463,13 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
];
$oModCfgMock->method('getValue')->willReturnMap($map);
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getBaseCronPW'
));
$oManagerMock->method('getBaseCronPW')->willReturn('sBaseCronPw');
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3ordermanager_response::class, array(
'_getSet',
'hasValidAccessKey',
@@ -468,7 +495,7 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
*/
public function registeredAccessKeyPassedToSetOne()
{
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oModCfgMock */
+ /** @var stdClass|MockObject $oModCfgMock */
$oModCfgMock = $this->getMock(stdClass::class, array(
'getValue',
));
@@ -477,13 +504,13 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
];
$oModCfgMock->method('getValue')->willReturnMap($map);
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getBaseCronPW'
));
$oManagerMock->method('getBaseCronPW')->willReturn('sBaseCronPw');
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3ordermanager_response::class, array(
'_getSet',
'hasValidAccessKey',
@@ -512,96 +539,6 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
$this->assertInstanceOf(d3_cfg_mod::class, $this->callMethod($this->_oController, '_getSet'));
}
- /**
- * @test
- * @throws ReflectionException
- */
- public function disabledMessageWillNotShow()
- {
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oModCfgMock */
- $oModCfgMock = $this->getMock(stdClass::class, array(
- 'getValue',
- 'hasDebugMode',
- ));
- $map = [
- ['blCronActive', false],
- ];
- $oModCfgMock->method('getValue')->willReturnMap($map);
- $oModCfgMock->method('hasDebugMode')->willReturn(false);
-
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
- $oControllerMock = $this->getMock(d3ordermanager_response::class, array(
- 'isBrowserCall',
- '_getSet',
- ));
- $oControllerMock->method('isBrowserCall')->willReturn(false);
- $oControllerMock->method('_getSet')->willReturn($oModCfgMock);
-
- $this->_oController = $oControllerMock;
-
- $this->assertFalse($this->callMethod($this->_oController, 'showDisabledMessage'));
- }
-
- /**
- * @test
- * @throws ReflectionException
- */
- public function disabledMessageWillShowBecauseDebug()
- {
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oModCfgMock */
- $oModCfgMock = $this->getMock(stdClass::class, array(
- 'getValue',
- 'hasDebugMode',
- ));
- $map = [
- ['blCronActive', false],
- ];
- $oModCfgMock->method('getValue')->willReturnMap($map);
- $oModCfgMock->method('hasDebugMode')->willReturn(true);
-
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
- $oControllerMock = $this->getMock(d3ordermanager_response::class, array(
- 'isBrowserCall',
- '_getSet',
- ));
- $oControllerMock->method('isBrowserCall')->willReturn(false);
- $oControllerMock->method('_getSet')->willReturn($oModCfgMock);
-
- $this->_oController = $oControllerMock;
-
- $this->assertTrue($this->callMethod($this->_oController, 'showDisabledMessage'));
- }
-
- /**
- * @test
- * @throws ReflectionException
- */
- public function disabledMessageWillShowBecauseBrowserCall()
- {
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oModCfgMock */
- $oModCfgMock = $this->getMock(stdClass::class, array(
- 'getValue',
- 'hasDebugMode',
- ));
- $map = [
- ['blCronActive', false],
- ];
- $oModCfgMock->method('getValue')->willReturnMap($map);
- $oModCfgMock->method('hasDebugMode')->willReturn(false);
-
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
- $oControllerMock = $this->getMock(d3ordermanager_response::class, array(
- 'isBrowserCall',
- '_getSet',
- ));
- $oControllerMock->method('isBrowserCall')->willReturn(true);
- $oControllerMock->method('_getSet')->willReturn($oModCfgMock);
-
- $this->_oController = $oControllerMock;
-
- $this->assertTrue($this->callMethod($this->_oController, 'showDisabledMessage'));
- }
-
/**
* @test
* @throws ReflectionException
@@ -657,7 +594,7 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
*/
public function remoteCallHasValidAccessKey()
{
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3ordermanager_response::class, array(
'isBrowserCall',
));
@@ -680,7 +617,7 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
*/
public function remoteCallHasInvalidAccessKey()
{
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3ordermanager_response::class, array(
'isBrowserCall',
));
@@ -703,7 +640,7 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
*/
public function serverCallDontRequireAccessKey()
{
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3ordermanager_response::class, array(
'isBrowserCall',
));
@@ -726,19 +663,19 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
*/
public function unavailableInactiveCronjobPass()
{
- /** @var d3ordermanager_cronUnavailableException|PHPUnit_Framework_MockObject_MockObject $oExceptionMock */
+ /** @var d3ordermanager_cronUnavailableException|MockObject $oExceptionMock */
$oExceptionMock = $this->getMock(d3ordermanager_cronUnavailableException::class, array(
'debugOut'
));
$oExceptionMock->method('debugOut')->willReturn(true);
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oModCfgMock */
+ /** @var stdClass|MockObject $oModCfgMock */
$oModCfgMock = $this->getMock(stdClass::class, array(
'isActive',
));
$oModCfgMock->method('isActive')->willReturn(false);
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3ordermanager_response::class, array(
'_checkAccessKey',
'getCronUnavailableException',
@@ -750,7 +687,7 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
$this->_oController = $oControllerMock;
- $this->setExpectedException(d3ordermanager_cronunavailableexception::class);
+ $this->setExpectedException(d3ordermanager_cronUnavailableException::class);
$this->callMethod($this->_oController, '_checkUnavailableCronjob');
}
@@ -761,19 +698,19 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
*/
public function unavailableCronjobWrongAccessKeyPass()
{
- /** @var d3ordermanager_cronUnavailableException|PHPUnit_Framework_MockObject_MockObject $oExceptionMock */
+ /** @var d3ordermanager_cronUnavailableException|MockObject $oExceptionMock */
$oExceptionMock = $this->getMock(d3ordermanager_cronUnavailableException::class, array(
'debugOut'
));
$oExceptionMock->method('debugOut')->willReturn(true);
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oModCfgMock */
+ /** @var stdClass|MockObject $oModCfgMock */
$oModCfgMock = $this->getMock(stdClass::class, array(
'isActive',
));
$oModCfgMock->method('isActive')->willReturn(true);
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3ordermanager_response::class, array(
'_checkAccessKey',
'getCronUnavailableException',
@@ -785,7 +722,46 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
$this->_oController = $oControllerMock;
- $this->setExpectedException(d3ordermanager_cronunavailableexception::class);
+ $this->setExpectedException(d3ordermanager_cronUnavailableException::class);
+
+ $this->callMethod($this->_oController, '_checkUnavailableCronjob');
+ }
+
+ /**
+ * @covers \D3\Ordermanager\Application\Controller\d3ordermanager_response::_checkUnavailableCronjob
+ * @test
+ * @throws ReflectionException
+ */
+ public function unavailableCronjobInactiveCronPass()
+ {
+ /** @var d3ordermanager_cronUnavailableException|MockObject $oExceptionMock */
+ $oExceptionMock = $this->getMockBuilder(d3ordermanager_cronUnavailableException::class)
+ ->setMethods(['debugOut'])
+ ->getMock();
+ $oExceptionMock->method('debugOut')->willReturn(true);
+
+ /** @var stdClass|MockObject $oModCfgMock */
+ $oModCfgMock = $this->getMockBuilder(stdClass::class)
+ ->setMethods(['isActive', 'getValue'])
+ ->getMock();
+ $oModCfgMock->method('isActive')->willReturn(true);
+ $oModCfgMock->method('getValue')->willReturn(false);
+
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
+ $oControllerMock = $this->getMockBuilder(d3ordermanager_response::class)
+ ->setMethods([
+ '_checkAccessKey',
+ 'getCronUnavailableException',
+ '_getSet'
+ ])
+ ->getMock();
+ $oControllerMock->method('_checkAccessKey')->willReturn(true);
+ $oControllerMock->method('getCronUnavailableException')->willReturn($oExceptionMock);
+ $oControllerMock->method('_getSet')->willReturn($oModCfgMock);
+
+ $this->_oController = $oControllerMock;
+
+ $this->setExpectedException(d3ordermanager_cronUnavailableException::class);
$this->callMethod($this->_oController, '_checkUnavailableCronjob');
}
@@ -796,19 +772,20 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
*/
public function unavailableEnabledCronjobPass()
{
- /** @var d3ordermanager_cronUnavailableException|PHPUnit_Framework_MockObject_MockObject $oExceptionMock */
+ /** @var d3ordermanager_cronUnavailableException|MockObject $oExceptionMock */
$oExceptionMock = $this->getMock(d3ordermanager_cronUnavailableException::class, array(
'debugOut'
));
$oExceptionMock->method('debugOut')->willReturn(true);
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oModCfgMock */
- $oModCfgMock = $this->getMock(stdClass::class, array(
- 'isActive',
- ));
- $oModCfgMock->method('isActive')->willReturn(true);
+ /** @var stdClass|MockObject $oModCfgMock */
+ $oModCfgMock = $this->getMockBuilder(stdClass::class)
+ ->setMethods(['isActive', 'getValue'])
+ ->getMock();
+ $oModCfgMock->expects($this->any())->method('isActive')->willReturn(true);
+ $oModCfgMock->expects($this->any())->method('getValue')->willReturn(true);
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3ordermanager_response::class, array(
'_checkAccessKey',
'getCronUnavailableException',
@@ -818,114 +795,12 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
$oControllerMock->method('_checkAccessKey')->willReturn(true);
$oControllerMock->method('getCronUnavailableException')->willReturn($oExceptionMock);
$oControllerMock->method('_getSet')->willReturn($oModCfgMock);
- $oControllerMock->method('_checkDisabledCronjob')->willReturn(true);
$this->_oController = $oControllerMock;
$this->callMethod($this->_oController, '_checkUnavailableCronjob');
}
- /**
- * @test
- * @throws ReflectionException
- */
- public function disabledCronjobWithDisabledMessagePass()
- {
- /** @var d3ordermanager_cronUnavailableException|PHPUnit_Framework_MockObject_MockObject $oExceptionMock */
- $oExceptionMock = $this->getMock(d3ordermanager_cronUnavailableException::class, array(
- 'debugOut'
- ));
- $oExceptionMock->method('debugOut')->willReturn(true);
-
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
- $oControllerMock = $this->getMock(d3ordermanager_response::class, array(
- 'showDisabledMessage',
- 'getCronUnavailableException',
- ));
- $oControllerMock->method('showDisabledMessage')->willReturn(true);
- $oControllerMock->method('getCronUnavailableException')->willReturn($oExceptionMock);
-
- $this->_oController = $oControllerMock;
-
- $this->setExpectedException(d3ordermanager_cronunavailableexception::class);
-
- $this->callMethod($this->_oController, '_checkDisabledCronjob');
- }
-
- /**
- * @test
- * @throws ReflectionException
- */
- public function disabledCronjobWithInactiveCronPass()
- {
- /** @var d3ordermanager_cronUnavailableException|PHPUnit_Framework_MockObject_MockObject $oExceptionMock */
- $oExceptionMock = $this->getMock(d3ordermanager_cronUnavailableException::class, array(
- 'debugOut'
- ));
- $oExceptionMock->method('debugOut')->willReturn(true);
-
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oModCfgMock */
- $oModCfgMock = $this->getMock(stdClass::class, array(
- 'getValue',
- ));
- $map = [
- ['blCronActive', false]
- ];
- $oModCfgMock->method('getValue')->willReturnMap($map);
-
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
- $oControllerMock = $this->getMock(d3ordermanager_response::class, array(
- 'showDisabledMessage',
- 'getCronUnavailableException',
- '_getSet',
- ));
- $oControllerMock->method('showDisabledMessage')->willReturn(false);
- $oControllerMock->method('getCronUnavailableException')->willReturn($oExceptionMock);
- $oControllerMock->method('_getSet')->willReturn($oModCfgMock);
-
- $this->_oController = $oControllerMock;
-
- $this->setExpectedException(d3ordermanager_cronunavailableexception::class);
-
- $this->callMethod($this->_oController, '_checkDisabledCronjob');
- }
-
- /**
- * @test
- * @throws ReflectionException
- */
- public function disabledCronjobCheckDontPassWithEnabledCronjob()
- {
- /** @var d3ordermanager_cronUnavailableException|PHPUnit_Framework_MockObject_MockObject $oExceptionMock */
- $oExceptionMock = $this->getMock(d3ordermanager_cronUnavailableException::class, array(
- 'debugOut'
- ));
- $oExceptionMock->method('debugOut')->willReturn(true);
-
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oModCfgMock */
- $oModCfgMock = $this->getMock(stdClass::class, array(
- 'getValue',
- ));
- $map = [
- ['blCronActive', true]
- ];
- $oModCfgMock->method('getValue')->willReturnMap($map);
-
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
- $oControllerMock = $this->getMock(d3ordermanager_response::class, array(
- 'showDisabledMessage',
- 'getCronUnavailableException',
- '_getSet',
- ));
- $oControllerMock->method('showDisabledMessage')->willReturn(false);
- $oControllerMock->method('getCronUnavailableException')->willReturn($oExceptionMock);
- $oControllerMock->method('_getSet')->willReturn($oModCfgMock);
-
- $this->_oController = $oControllerMock;
-
- $this->callMethod($this->_oController, '_checkDisabledCronjob');
- }
-
/**
* @test
* @throws ReflectionException
@@ -974,7 +849,7 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
*/
public function cronTimestampVarNameWithoutJobParameterPass()
{
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3ordermanager_response::class, array(
'_getCronJobIdParameter',
));
@@ -991,7 +866,7 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
*/
public function cronTimestampVarNameWithJobParameterPass()
{
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3ordermanager_response::class, array(
'_getCronJobIdParameter',
));
@@ -1012,7 +887,7 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
{
$testValue = 'testValue';
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oModCfgMock */
+ /** @var stdClass|MockObject $oModCfgMock */
$oModCfgMock = $this->getMock(stdClass::class, array(
'getValue',
));
@@ -1021,7 +896,7 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
];
$oModCfgMock->method('getValue')->willReturnMap($map);
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3ordermanager_response::class, array(
'_getCronTimestampVarName',
'_getSet',
@@ -1045,13 +920,13 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
*/
public function getLastExecDateInfoPassed()
{
- /** @var Language|PHPUnit_Framework_MockObject_MockObject $oLangMock */
+ /** @var Language|MockObject $oLangMock */
$oLangMock = $this->getMock(Language::class, array(
'translateString',
));
$oLangMock->method('translateString')->willReturn('%1$s -- %2$s');
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getAvailableCronjobIds',
));
@@ -1072,7 +947,7 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
]
);
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3ordermanager_response|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3ordermanager_response::class, array(
'_getCronJobIdParameter',
'getManager',
@@ -1122,4 +997,4 @@ class d3ordermanager_responseTest extends d3OrdermanagerUnitTestCase
{
return null;
}
-}
\ No newline at end of file
+}
diff --git a/src/tests/unit/Application/Model/Actions/d3OrdermanagerActionUnitTestCase.php b/src/tests/unit/Application/Model/Actions/d3OrdermanagerActionUnitTestCase.php
index 86beb287..670968ef 100644
--- a/src/tests/unit/Application/Model/Actions/d3OrdermanagerActionUnitTestCase.php
+++ b/src/tests/unit/Application/Model/Actions/d3OrdermanagerActionUnitTestCase.php
@@ -1,382 +1,648 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-spMSwgPSJiJR
\ No newline at end of file
+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
+AxZCAXBOhV7Xqsgl01Z52GIjvPosym==
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Actions/d3ordermanageractionchangedelcostsTest.php b/src/tests/unit/Application/Model/Actions/d3ordermanageractionchangedelcostsTest.php
index 812cfe92..75897410 100644
--- a/src/tests/unit/Application/Model/Actions/d3ordermanageractionchangedelcostsTest.php
+++ b/src/tests/unit/Application/Model/Actions/d3ordermanageractionchangedelcostsTest.php
@@ -1,116 +1,177 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Actions/d3ordermanageractionchangediscountTest.php b/src/tests/unit/Application/Model/Actions/d3ordermanageractionchangediscountTest.php
index 737547a7..062871bf 100644
--- a/src/tests/unit/Application/Model/Actions/d3ordermanageractionchangediscountTest.php
+++ b/src/tests/unit/Application/Model/Actions/d3ordermanageractionchangediscountTest.php
@@ -1,116 +1,128 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
+4byMC1lIbl1vv6jltfBOBX46YN9dJQ/86cHp
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Actions/d3ordermanageractioncustaddtogroupTest.php b/src/tests/unit/Application/Model/Actions/d3ordermanageractioncustaddtogroupTest.php
index e28b554f..1be775b5 100644
--- a/src/tests/unit/Application/Model/Actions/d3ordermanageractioncustaddtogroupTest.php
+++ b/src/tests/unit/Application/Model/Actions/d3ordermanageractioncustaddtogroupTest.php
@@ -1,325 +1,349 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
+K4YrjkHtNTG=
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Actions/d3ordermanageractioncustdelfromgroupTest.php b/src/tests/unit/Application/Model/Actions/d3ordermanageractioncustdelfromgroupTest.php
index 0900aad7..6d22398d 100644
--- a/src/tests/unit/Application/Model/Actions/d3ordermanageractioncustdelfromgroupTest.php
+++ b/src/tests/unit/Application/Model/Actions/d3ordermanageractioncustdelfromgroupTest.php
@@ -1,258 +1,281 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+HR+cPySiBoxvpfC1XDIw3VYkt6/Vr/W3z6uRfwMuWgKr/DZOJsWWpO8D4fH789bC/WbcXsC6EjK8
+zXIAQYTrxpA0jJSvjWzajZqnNB2+hBCAzsoCPdKTr9TUI8gIaHTvIikY+bbTPbgqmtwOTC9jcbPw
+aDy36ZyQo59HYAoDCPODs551rS4pQ8NOAFeteGfFNWcShRu4WxBMMXLdZOXeNgz4o1WvcMZblsjZ
+1Nm4iG/O5vW093G8RrIJuKFT1evpmFgMvSKCP8HMeDbwkZJqeisGsMoqiPvbYGroyGHSUzZbl3vb
+Pwzq2uIhxY8mMtWNbFOmb80fytp9Czm9shncAULldSOk1z1is5sxl/5hLIr8L+BGZsq+JbrhNeUX
+dbvUu2cKHEPiNz5xpT9HovOsHrf5/uRlBlIdZtRsddHRDv52XPbVwMqZx16P3M8TLoySQ7bm2nS9
+CZWSGIY1MKD+WV0JxEeDjgrU4DCLlqZS9WlwZBKP0CkWgpeVIBnHr641S6G8S9vgI5BFkPd8M4KN
+NwDMohWs71IhfgTmT/5yOeRb/E68ZSil7GAT3mGrsl1aTZSOSf5BimgN1gpbiI+tW7JVuESYynvH
+iSNA+E5dkad7+usvJZqPyFe0DZ8HnGrtLr6UyfsWXN84MYbUtPLSyBqLBogrIrYW2w7S5xbNrDFK
+gcttji5JQLlzxpdSwKRkUhf4MvhBUEHtOWPjoHA+ZzjiBLpc6XNXWakqtI2qgg5iB6N5sh4QoFlI
+VEim9POuu8V4YcAAzA36eubvMA0shyLZHAU/vKmYj0QCi2zaV2evIbppmw1ZlRqce68tQWLD1wmL
+HdC2vCpU4PyXNhdVAFJl7AwDmd2641lEbHCRxLCsvGQdiI6dAQpgRTN7kz5v85RXvVawPP+J6Wb5
+3l/Mzwaa+PQX8julvKOtCgI9VExDkBIzyvjuJ2brKaWheXggwMjaMUG/+HCx6qO9IQvF0X/opJvr
+A4XT5CDvcOfy0DAvZzmZwzNFREj313CNhq86opvSubVfdZ2jPQSHwKp0nNsBhAsJv6IRbUp07fRH
+2iKVLAm7Wj2fGXHvfW+zkmJbVfbzhDGr4/31iQI0l7thUBeQyJqgouRwTAkSC9g/wL45MZ2lSNs/
+8rE4WkYcuRx4w4uQrZ/3zcqVC9prgKV5AUCmqLVmPMwguORQVD11ZmCT7qUIQnmeLdVo5w+V8VrO
+QOcmKFqUJWovP9VB7T25fQ5hKXi4f/aRcs6AuBEsaTSHl9EimCy8ZZ3P6TY6pj9g/Oc0NmaiOxlJ
+7QJumJDItEcgHU2g23yvko+qQNiLYrRosBlvwUw94QbeYMlTBA4qZ0DO64422jntPkML3EgwqWL0
+5lKHm+vk71hCavY8BdFxKvqbvDmsA5Xt4LvZL1SbfgY6dHQ5yqOQZ85ikZa+itlpd9ut7bXd/FWe
+3tZahuruoxOBMYJKVIPccjKXLKDDhDCTPXk88wc9kf2lP0DWvXl2CmWXa2eV/NDPuz9U1uY6gIvK
+nN6fZ6VvA/Upf4atGu/IpdidSkiWi7IEbXEGXOc8q9w1lN6bG0vPK7mN1IeZmYpo10rxoZCcx2z3
+hGZbV756QGEmI7AFnwVXqLqUohyi43OLO8ZViN2VTrsp6HRDpbl8r10nLBKnoN+Mv3KWZxARRzJl
+VXWkk1HPXhD+M4wBFsFJhMO8ToP1zG09wUfjdu7KrYupYjk+zNSD8m9f4jYIRA7ibwzOh6HzAyVn
+vuXCqsSBOZL1e6tAD55NI1WqC8dOU5aja5fMJ+k6+36zi3HTMRNOc1hwelrw96++mRtcHK+A33eK
+WBYOtkQQWDrWlZi7pgnSVLgP+RPyhClIMlFWamt1QzdwpMrFsddg4v6BoIbrM9/Pd2ZqV3fOLkxD
+zMvsCjvx+naZT+yXp5/1wN1vDonrA76gHKPDbYoJ4fauwuCLKD3jx0K6AkmwaTNmtc2D0Wljdafz
+rRAV/mqeEtP30X6j3cIQAx+VsUrEMZg4VLm4+urFiKhXOuI9hbp3ybYLB64dNCSfewAXVl+M01Zp
+BVJ9bYfI3zhfUQ0FLR7+1bIEw/uT2s76fu2OezLxWZP3vYBHubGAbvfVtqYH1V/FXlAnWvYRMcqq
+QJ0VZofo6N+yWSTUo5CJesDqwoS7eg7X7NF07A1Qo3A/XplRA7hT8r1RStfAB6W3p9K6BBoztEJi
+azrlkNSoDOAA8C9oBH/RXKUODh/4kWgQflxNCbG//HghwlW5WoOw+V63B2n/lH9h+tg40J7AfvRK
+7X7F0isXtbh4AWh00nGgXJhx4b6D3DkKZPxVqucyBFowD9Fz4T4+v4Ygc1SRL7q3VXhinJklRAlJ
+N/MG6P9sBtRRKMs5RvFWKtybeUokRIfrQCwgkn4taemQq8C+IfDobWRDcpGB5Cnu5DieLnbAxb3u
+pMARy12DYTK4EBQbjcmYwitMl7RI8cwEf6duw9jDjIG0dg2GIQroMZldhzjzVhD5d1PEkcwGNYTg
+Vlz0xl/WiJr7YDa2KCxLbPiX1Ncfd2LyWQ4nR61QC5StMrDTvW3ZHznk9N+NExo8Dpd5t1Jy1EGb
+CT08VykxbBkqkAsLUEvg4mSU5rUM5jxwov+p9imZJaVERITwb8SllED/fUfdmxzWwIPTgyEaACuV
+6gvMU9DxBEuQdcnrZt8Feamsdguxqv7G02C4typOz/AcLy2JpRafy91/i7QzkA5V9Yz3oie4YCiE
+/dBKf0bP1AJLywDErJ0pi3JKvmnabbG+GWDfOuOv9VBrvaTmvPKtD8ob76Bl21xindkrOyVf3r9K
+naLWu/xGOZbkHDR03wVrxWP4fpOYQ9zmSPUd9xEDIzirfxSmEqB9Upgbza68cWa5Wq/vsflqz4tg
+0AgGJZ32WxnnzQ3Y88yqFGxx9HIrDKjqQK6q7Q/z38NR5OjlNYRIhJfuRdu9GwGfFsa794sLFS6u
+PYU3gl1m2uAas3c5+2AvjkGfkxBGfdTvoJRrnItj5vnMEf/+X/sP7sb4/5Rwyp3dMUW8n7imJklh
+usuF7G9iptzGMHVNjZjXr0BXInesKLKEveBO5YtFgXhQWw+K6QylrY9vPLaWN3WKJ3VsDyibIt+O
+wRM3v/agFnKb0kNvThxo/fplfgBkALqb6rZs5YjopC9SYacl+nIWjaqUGQRajz28erHxoDC/rN8K
+t2L98bTpbswzZgRsQnZZ66MVE9bAXKEGCpU10aHyURqAZuL9ULIUMKer+XXSlYfInqH3GCFLlk+P
+58t4dpSIlOUqZ1MDpdNKxJOnWm3CVNJKXqY/hU/Ki1gBTTUsh/w54Ev+cL0MJ+V9iLh1BSf/smNp
+ejBTiDY5DErlu5zwhYbG07LA3emZXsBNTN84zB3swI6bHe0MIUEHSFqSpK16TM9fUP3ZJBO6Inp+
+a/dy9eV2E3aE++mLNiltyHNPAMlzLw8tPWNaBcvpaRGh5bsZoqVXbxhssQhzxpZlZUoEXKqFcG/G
+e5lPGotJUF5/I5oOxAd+4sx2DjA3gWuVhZgODMW8W19HB4hubqHgVWtoDCrmYcueTAkLtpS3gGz/
+bzfqd5iLyh4poB9/MlazQg10NeOkROx4i1mCa65z9bUQtZKgcAR71N6OfQoV2ePp3o+dOmnaHz9x
+WLTvJsv+9u3YGN5xCABIlgjstUDecSoILcwOvALATwfoqlZTymg5sr/nbmVmLa76BsM1KY8BZu7T
+kZtwepe3Do9XqCMDSz/ZrPtlvsfOmTiDpDybTH9qu4Pso++xaXDFDQfvZZ0GFK3JJPIdFMDKnw85
+gNB4OIeTsdqF06x+kaIvRonm+XfijtmDPTMHyi0gBfRlsAuSK3+Ndurb4qGNiryAOS0dOMB9euMT
+5YBf1x9GUF5E+W34XIqp8naA4e/bcl0Skg88xKTiXfB4hmNERm2RRrTLNISFcRZ9TWIo2ZAmxyZA
+Ix+YfwYi8anPzgW4dIoDLeXNU7nfI97AssKKo+tQzlNIHFTT5+GO59Ctux1RzUQCyzFrcJajgPSM
+8hmDC9Ozydf37MOf8ozppIA9NFuDvsl8ycYECSUo1O0SDI5nRRPghdq1T8sJDKw0N3wI5CxT8CpZ
+9xQPgmtsKl0Qq1ILCG49f5zevI0UML6d6Ew9Tsti5eLpH+QJ2n00KAxFtNVoyajNUABn82StBKGP
+6+ZIemwIHAe5U0mdQzE0DcG94Zj6WBf+J11rVhYmSjl64fhS2dSCHpSzpUVf21C61MGWFaxS+Q4N
+1QywxFOEZYb0hHjs4U0ZbjgV5A5k13CSpvNfqWf9V/W/vekIIOlV+zKz3QQo5o80ExAoqGH1xXMR
+CW3nN1XvwA7dNbYIzrs9Cji9y1kD04NoL4vIc7CicwLZ3AfxAf1QZsjWxY9kxYUvmxNgTa1HaeQV
+mlrVRyP8IyqdGYV19amB5gCQfMQWY6pgsYD/LQU1lSPLfpLAcA5P1bAOE37RD9cHAGdqyPjhf3kH
+VXSV/mAktp8YyBk49StDBKxKWlF/m7He+L0ZqGJYOwF7IR9JkLR1GYqBioI6fxPsLMuEemxEYTFi
+GTn6M4upVscHqrHeKebJGj2+3bjrQG22YMWfEYQv0oqh3Q3fzLiMm9tig5gk/Y7rCKyNM3SmowTe
+lSRFa/Be0IVgoWb4CBk90uiFnR/9qg/Ni1HpUByHzBx/CW4Kh/XZ7945t2DMH6g7lx6ZvhaT5+W5
+PRfUZEreZhw3SMOdTYO+vd8oD4oLyj5/GkXIZhykPi+ET/OUJ3HAcjMKDMGpLR44P4djCwhiWbTZ
+YtVm/XMyraVBvR2S2vjSXDpPwp35HiXQ8ZJFXHzwLax/0lr8j+pafYafVcVgVErPtQ5koTV6VY5s
+Y+EA+JeDHANNZPTJyL8AeiPrUbHy0YaAiu1ICOu5/FB9HhGAJx/QNPWkX/gEHTOQKYp7GTE8ll7p
+DajP5x3zq+Iz05cXuiZ9Bcrb+PLdS2aLocHmkeWlhsZL/LKciQ/FsS0K2OhwggRkdm6wfcLvxGuQ
+x77XlWc/I8hTJpeIs0qV+luNCNtbr6dETAAKXEelBvxn1E/LIorNCi7uV+oLg6OAqna2Yqx/loZn
+RSUy3EOBFuiwuc2Yo54C4f3BhtyRrDuPEhC1J6/Kn4TQyqX9TSEKgnQttfXZCMvq54SQMZ3c+yTo
+7NO7OAlCM2ehbI/jb6AQyMff9aQQM30a1lf2Rfn/G+NKsrYPMXZz2BOjLMOZ4tn3M42BxioiIsO+
+n0YyKle8FS7ZXP+vvy69yOHz9tZJLLYlhH1lC+sqYcCSiv2BTAaHxFXqYiFAnf+rA7lKYQjAYX/W
+wRLAfChPB9b8e+CVYaJckvs9OoKjbFtg3UNMDddqwo0uE2vcUpjIxyN0e8Axd0JXD4cPnVOccqEa
+SuKVeqU0j5TJfHUQgWQuY5KT/0RMoRYMt7jn8Oim/7yTfmUhFG5E3XnVqHe69PxqjoKjCf4Ufm2G
+JiJ+Wo2/rgcWf6irm3MIdnwFRP/mAOQawYkKHlWJj+tXqonxy5KTDxubTmqkhWVPR4CBCy9rPdaZ
+97enJSSrQ+jAsn3xuLFLynWKIPFu1NPp2TIXQvPtp15y3heE3Oc9AYzk8tr17IefWrSlc3Cu/XhY
+PdOXjv5fG7PaU6KKnTV9jaFc+SKeAra8ZiLF1+9KOsA6yWec41GIAw6LpdeaS3GmA/uslZA8S/gg
+VLO0mHTrrTP0/eJEYr5tjkjRVPttJIaHEtuq6nL4VMi3atjZr8Z3BBqghk7N65tHwtz5sMqmLNBt
+KsVTiRATvKn/yCzcO8m6HPDb0L7BdbECvex1ndUiEocleYKVZNbmfq7wkI7hOEXCuPis4mwY89tT
+BJ1ZJLpT0fyZebV/ldbct2VeyOUSWlQpsZ9Nc6IGSi/JvlLRT7RRQWcyVgzUnQcxeBh9amIC1kA3
+ZNy9omWtrXLurmvGqyMDIrq+EFdp/XJb5bQNhh4MFTo+XTeJpXeGjgeFnUp2BSflpcrXaXbO15Y1
+pIeuz0qEWjTn4BhjENLD5bUcpYUQdpfOTWpZ6exhlXafCzMLdklescfNhOSG9Q2Z5+rIxDRXN0y9
+WhJnZJPHDrUFKgdP/i8oyA2lZgSpLeOk5/Hz5XeQheOJWAW1wDclHqOLEnh3V17KOONrxB0WrUY1
+PHBnt1Ll3LE23GIrtuHkN959NAvy5FeCf+/LpwIivnliUKKXv/LyJlzOaN/puhLLNdXkRNyWk996
+++V7YBnvxYRAoBToSJkQ6xCONb4+r5/3/pLW47t9+e2Nr/9A2vkets+hWxIksm5DmKxP2li6G21h
+l2O9Fe1/J5xUHmSEiYX6J4IZXQnXaC9/cYYrtfZMDcCtdCtnLCSsXvtQWzcjPpAoudqK1wRTSA+j
+o9i11KY+/dv+DYMwM6F+IEzkKn26s19m3XaSVTpMHA2jqSyYf5rmQfAwIIN+NoDnKR7nm749UnfG
+Lm+LC1LofjwLjqVbw+ocCFTUIL1bc82O6Qb/8A6QUJXhUWvqXbfMDqgWYGscwPKDDkydyg0Segz2
+Wiglh6utc5b9somk/rQ+0rlTwp3Rd92fWhIUHW/c7Iaxh48YqFki5t7WCWXxNXT98izAzhy8j4UM
+eeXGDheMeaVnMHf2FeYW4TvyUi0Q4dlrbBd+7W/TvN/wQRoeWwsH/ezeNInL/7eK0s25XDlfdnyA
++dtpdldCC4L5PRSEmCxG+FduRs+75GAzFUbMt029I63DRPUmf6U856mbESdq9lcvouvFDAn9ph6L
+Qpv0lMsSuCSvYLDwGLdrJHNeqqrBBnyXaYuwP49uJJzm9Xd2P8XnJrD+ekhLMKMYFfA5Oj2/Re8K
+6DBwYBrDoXxBjzDfPktBxfxit4gY0HwSSdyGOL+rCbq9EBVRW25p8I/l9F6pw6w9mljenDilM4er
+IBnqlJPPVzL6zsadmlrnq8IIpBNHAZqVM44YQxrvFYgRsXaLRK1j1cQ7+VU29Zb7BTpQfNvzDRYe
+QV+geNH4ABsCFzTzPQ83qlLiATQXGYjCii/YPKPygYT0Px9MOOSqAoYKIKdKlnQA0vS4BwZPw20x
+6YcV/TIq99Fmsxj+NcEUywo3SXpJggBuB0/EODBd6hj74gUrE53Ll6fZvjuhJyJv6EFOJokuWhAz
+bTzyeZ49qKEc3cAmdVwY2fUqptuRHQvicgCbXMdsDYFiavxgqJdsG0RXmnvRDgI7lvqFaAoFyHOF
+du2+cilRTQOh3MwCGCHcR8R+ZWIbqQv3kT3bYYKNW+uSAbWpbeVcXyYeFkZiId1MRaFIf8s6JbbD
+qiJdhsLGBxj7P/QkUp2F6cXxlzugJLAcj+siSQQMslEYABWwflH4Lb64CrZHenFhniH5I5Vy1kL3
+h8Ahih/Fxz1D42yV/mWnPhgasVonKK15qpj0lCCpR7wRIhV1YeoDQYM8UT/bHwPukIxExv4CH3g+
+dZY3yJy986Kwv49nxV6LAPY7c7ydYfng0y/a7ef7CaukxAGe1oLKKVGc2WlxWEDliAPoBNQfrBQq
+/KgrUOUtVLIyaxvTQFtEHWqzT7JYGjdzeIxEd9JYJAHXjAMUnaYCdNHRUlKT01dkZUhQRhKmRRvu
+e0WnvaEgVLwTjNSqcaSKpmAs0lVt8kThnsKKS9MH9rXirEtU5QtelCR+5oZbHK7HPRSHnp3it2lr
+08rj2SeUA2gFfmvqM3dJW0ep6Odv7a/igxklZz9O0yxWgN99jz5zQVfkLYFj1nw4MzMGTY6H7rRo
+srzZQG4qmXIECazSoHuBBOh7Z78EO0mHriwoXtTnX++Z0GM8UxPGda6wmjcjRabHDa0wUjtYJ711
+6e+NCBI1zDaKkk7Qlx7EiHW+4LCNEKAHpG6QcjcnKPu/mNWVgAzDPg0FHU6kB67GCyTeTv59Ngf4
+S/Y3VGBDJrUiKF35cXfM7XXz7R/h+vrqw9mHDYrYdbscVjivNix7NFNhQpjGCD+Sp83Yxue2VS1V
+1CXAzCcLTLj6v5sJrAisFrBFl6bq6gLurcMIIGwDuHqXvNCer3jOf7kq7D3eJyYzDkqzYh35XVir
+xTK7gILz9ziiFuUSPaEDcL4JOrMhzsMC7g0X/UM87HE0IlJCKf59MHU497EIovkLluq+5wcY2010
+LO+bdrQ9tvafG6JfDiPl0ZqYJaGWM9eu6leARuPmhlROa+7VaXRge5MI4LliMSOlLjir9V+OAhgF
+ZsdmcP6tp0LuR5OwtD3Jw3vFQK+LjWQS2ZHMXNHbo9/4TjX0PR3UIV/e4MaY9yeiS8kkgCFqW300
+2+Oi6NjXPIhUaivm9aE8MMHsO4DDbj4EZ1e2Lv3XDprkwPQiI2AC7Y0kNYciQtKbANebwo+/0oeA
+V0evESj6Ojd9F/aYjJ4stQ/b7l3crSP6Xcakks3ZlvJGc0vdMCNkGSdb63+Xf781oi+IWA9tksmZ
+DbsuljR4Z+GENfe4h5c2j1VsKLRPPPphR3qOxLxLLRsvvSlUx4sX0Xyq+zFPHMWquFXkTNJEsD/q
+lGhISJE9UQjSLT3qssR6xKbn2KF56wheZGXYmiJ6Nsg3RRd2rs9umpj5Phoc6EJe/xqsut84gB+M
+LC1cB9Wtnq3rE5s7r3T8LNio7fFIu/eS79q8MI9Q4WLSWH6mcN7NlHiHq5T7Kje2XD5DQeQ0DRpx
+G541xCh0ulYJzB0Lqtsk7TEO9PvErR9ZAMpGv0k29dV9wbMZgJjEEzbOPWgLFvdl9orb7EUUm0rR
+toWfA6316dq9WfQqnyU7RYUiJGcWVP80MTbYUf4/sf5gI47kvBzpBw5/mc87QqBATyONBuN8qch3
+0NAaVB+/IbI/Ig0PHraIYfE0V0c4VXTCIBEqPJQnX/9VCsYa3boIUavQwP05a/3RmPyM/f0Hf3IH
+OPeGlM9CP1ED2qva+lif3k9dnsgutOsTAzJ0i+fDIDvqqxo2v0g3VTO5uiCCi+aKGaDhWH060fxx
+JhBWeUIsbsbMxPQ0Vy0Y07tHxXGaIObjaUs8TtZLFMlEa7UniEYeFbGC/knSIdJewN970lpXfl3O
+b5fzDkSu5MN+9Skjw5nZ42k2sbk7p3YDO6VIclk61BIi9WhX1QXAzRHFhIw/56p0g+USoMnnxSUs
+bPtlVcymxEJMkBOsUcp9nswK7zLJjXLALHsYLNf+13gjhX8fcrtwy2/8dgupm0yaB8RIoGBtur9y
+zY1corLehMrj9tu+KfqUgmkv2bkM7Dllp10jNKXvOFIuzatkwvr/vIU5JnN6InKQQrtb3HvNMgSE
+ChMUsbap93iazdEGezsVnmKzzSnTeTO97FnQaEdqeTRS6SdscV4XzbxR32xbKHebE29TUNbTJ7Vh
+6cYhm33mLiQ5o1MJzyIi+wnE1xrcV7tX7UJbPDPov5jieBqFgDO9Zxv92N4X9+g+Yvrb3X130oQ5
+yDXlftenuyC8iN/zTr3CPb9XBdSaaoRqYuhE1wf/Bw2vPOeqNQcHI+nQy1pyXm97bves49KOp4Vj
+KyS5RMOwZSuX0keGOGucE5Qxv4ttHNpxYioMelPNIYFWvhfOFSCqOwBx3mq+UWVJ5QMGqpJwKXbl
+UgavNOSZNenOcow4MKW0l3wsOp7g5pOSSanvJXaYABRbKcK3jb6hLD3DV6BnYqL7M+wt/zGgCCEc
+QVxkJuX9AMVD7UhbjXY2ZejISgZNPGTnsWCsuWjb1f3/LH4vjmwbT7fEChuGr+UVcdl14PNRUtSH
+AMh7aMqhcEN/zmEILU1cvFSiJmD/DEG3tt2dP5pNq84TG4zIyJ9MTbonGrwPJZJKoAhoP0mS7mHI
+PnM0cmbpBmoxNkkW6/2UeVvliJ2DdaVMoSuw0nydP91dc0+BiLofp5ZR7Sa8mkf25UQKulEiFeDV
+gbUpZPixCtNK7M+TsWt0YdgRLGARrfYQFkR45GmBKyWWUhxEfvTQV6+dZvS4FMZ+FTUwGRUDewTp
+5lAizjxdzcmvqrCOcjj68xbEHkKan3jnBmHcimOSzJ9C4pTTX2J6MTFV2o4FEPC69SeZSEKlhD2T
+ZJuzdkSVMj0ucAHqfKrb6Y5z+ymm+3Iz1HYVOEiXZp7pjRubRt8dM/oys6o14iYJOL4iMMPPqXY4
+9akG0p5wijQu+jlTMN14sbUUHyEeQ8PMeeq/zxXgEVj1foBtnphYc1hYbO2oNJ9+jqiRhRgpKHyw
+46r+lsxTL335QNdXST8s21wgy8HaA0cvsfP2sJhwWwpXzjm7RduXgHsVTgWR0ZtMZ25v8MgFPAxP
+k5tzZ1y4EPHC22uEmcZtkq3hjugpkexMic5zycpznaMlVlaDtjQrY5g7Pu9PKMnZmlR2qhKQXGXh
+YEzv9mE504m7vlSw1p4xm6L0NkG2wkqNyH2UNgbKz3TDHUXeJ2EICyGwwfcNKGAbDL7c+1BG57bU
+2V9/bZx0moDZ/2RadBAJ50ScPtzMlzodUjuoip+QE2k//RU1AUipdsR0Y4xWTvA7BOiD1U3TDLL2
+Ndp6BJ74NX9ATmZ2+uwecZx7a6zRsEDv9KeclKgRBYFme3ZLGlBvGiZWKE+b2m5TNe9pa4i0R6iX
+aDkwLLIQ00GDcnSrula/lW8NR1I0FIVioNg+wbkWao4KfQ/l/QLZ5qFjJ6yJBCY0t8NNKmxazzd3
+qegqrswo+tZIbQcqZRY5rLIP+rDIGFHwbCOhNifau7xFkOpZWFBXXf3mnF/GtjRu7oS0mW6H/sCH
+n/Kp43/CnIae9jtZz5knPAE3wcq63UxeuRGVHrFTxII5E/dvYYO3CJZNhkdB4WNVAxMG2W6e5I1N
+Ib/FTAS3fcrLxFEPPHvTqJJIV1b/Ci6xmYAKCVZ1l86hPSNqqxHZ/vmAOf3SY+qrATpUjN8sA8UV
+MAlXZ+9Aja+XJCeqSBiPBA9oy7C6ToXiUBPzGT+wdv+CPUlSxxmYEMIaLEKx7NaHMcnY5PMr+lZ2
+awDUcNBbxrKs6p067EzchrZRqUBRIBIJVNM3B7uZSZeZ9CWkthKWaIBUHrKFe+Clr4iey9DSMMSv
+duIFIPwMNT+0xM3Dwpf1tKXHKE7pdyEGvkG41ou747EzdemJ9iFNhwvkJ/5ZNIEUqBsZekWt/oQU
+cjIu2Pmuksl/4tVH9sCJ+cX6E8qCj7daDg7CzZZ7vCFh22oJLwAHhscn0vtjbk9etfL/ZMy8WesD
+mBy/xR1BVJ92SXboa3al6XIoiYiSPYlA3NuIhvJ+sjjqASFyC6ciNkzdGk0hHMYI4706nnGoikDs
+PsnJEvysOcPnS1PY0GJFSeDzZFkXxefn496pIfCOfw2rPrmCuB+ePhqmHnT8mI3D4WV0u0aY84/J
+evNYKKF+mGjV/Ir6lcBkQ72OBDqiUuaFoDa9r9qQiUgM/u5xM9hE2lIa3Hmz3AdPohU58gd1Golk
+x/73zfUxBFpa6OJJmLnnVKR8gLEmWcJkXetlb3QlIWjIG8VjElyUXXtaODuqvUtkzx66dWfMNGOt
+6budMdlzlrBS/lv1gIpaYyNWtwm85vgUbYrSy83y4723zrEiLvfSibXJwd8uC0j3qTE/UmviNkxK
+ULCW0Hk817oTetSeOxSLr2QbjQFLzNs12ZYL8ZtZlBUReny4idluku/zUgnP23RjI9UJRDC+0+C7
+e8n/ipFAiPWYV9vP7dBYObRFG6ycpvoDiiMGVPBzv00+pSICzrpixe7ekHR2hCWLZA/IQTh8cQcX
+UBYNWNokn4UL4wUNKX2QFM9P1a6z66ap3JcHaHi9KbyJqYbIbN9gaU8KWqATIoJ2rv181aaA0v6Y
+hWcnnW0iELiSq2Fd1fPcoknT5Oh1Nf5B0WTUSqgac7NOglMMxbTjYBzpGh4s0Z97WhwCIpuGCBJK
+zVf4rZ/SiYlNnPiDAO6lTbCvDZK/Zdh6aVSdOUE/hwYJDjMpcmU74fHBdK2/LhcEaok6h8LltfZ4
+eGBonw7FbeE7dVHILoBEuUMso0mN9YQJ6pFjUIGQj4dNtokouHZTWpz9ta9Wf7i6kiTHgr/XI6H3
+yvxx9//6P8itvh+jWSDiHFpdYMYKdmGp1VPbc/w/AxGGwOpzHPdDfDbyUqnNVB6S0X4kpa21VQuv
+O+3GaX/8ZrJnYKNEEr+ux7TrtwhlkkhuHOB4uFWHTt3IET7xzQX7U4IXn4ThKlabdq5HXC43kwgH
+GUgHUkZrAhr1A9n06+Rst9mrBu2a8XBYiNYsiiiGwzMXjAdg+H1+xmdViOFRqNuS5r6LlOmU8paR
+O1WzCl0HY+HeG/LK30YwyF6WlGjPUM216DSeh4K7/EOWt7aQ/641yjoYmjrtqRTvZEnPW5Rrl41b
+m6Jxgfzcb1xCw009vBjkvZ5meITWBMKhisHIbpRdjuQ4+4fTGhU8qyFocWXf0gEqhFZFbXK5BrWP
+XRSiIGDzpRHVnFgojbROUfgqyWvB334s2a47hMrKf8UGivZR4HyPfLNkegs/nEfJvJQTN24bejlf
+Nf4Z8C7mo5XvClv2l5bFQVSEy/gjWS/PW7W3P2LZ71fVWnEGqJNX912FmakWn+WWpzFohLqY5knX
+JiFOvhkyXjOv9vHClBgf+LuQsaoixehxJoiBw2r3a5r6wtWngeNuUIAXPeuzZdOjFGGdGKaL8e2S
+BraQHzW97BmH86x02TSxvMT1IvVumcuQSF2KcFBkFm7rauul2mBMCw2+6d/2mwMa1ygQoPbI4Ea8
+ICfqlCV/9k5ufhG60xmE3j5PQP81HbWSVT69sr9QCyipDC94QrkRR71yi9rwOdFERG9NtVt6SROW
+Zhl/4bZk2Vc2C7IGT7LA0MfzoT8agsOpqQUTFUjdVPkUGMjmYJHo1qHLBcOgtT1QYjtUcuSDPfyr
+vb3vmpUkS01gBKsw+c7MsHyRHf3ZqTplN4sLZcljgvLmztHwi180sMJhnic8uIf1iUddmqJZla6E
+YGRvWso1NRpEbXOgKxa29im3fuU/z0nJqhyIFnwzHKL05C2U+6luphlUxvV5qYD8rNg0EWX5J6MS
+4lVKmx/HQ2/yPSkhowCiOffJM7HHaX2lu2psDrEvdePvdrVpzAtjdjEvesfhkm2W1EdMI8wVo45D
+ANP3NMWsHQaP1YAChzqx2bT6wUtVwyNk1PY8fUINa9uCZq58Vn3GB4i6SENIl3kyfEgSvoCIW8X8
+Y7PNbhztAtV8GK4/W0lHKE/tj26bWdh3LDpcmm2xVbgm1zleubf6V0RV42Ao81QtoTwLShB2NFhI
+8PwxaiGIqoqCuempO2OqiBtQoW8jfVYlIqjNjEpxXjdBy92BrKWM9lPNHfLYzPvso8+6zL5YKDDs
+9hQl9QRmwEl58N0TWDmCdWLUCoj5tYUOYwzhaWEBTfYDmzMO3lUr/ak4Gy//Bmys42ePBHxQPxkE
+gKOOjh+LZGBbUhLT2rFz6cWGoZMBaRj53+L1ztjLAN1cartd0DZIxXWvin0mWo5xcYuiE/TJR17L
+bVeXhXhGM5b75jUQvfT1U3017UcBi36iUV+mTIwp3fxsi6mJW8LOfUzscVSTfDqoutrIcN4wCly8
+EHnxbeOXg4jbTuXRN2qNeYc76BiTSOZ2vNxzwKKbSupHECIj79UZ4yAZmZcF+jKWrjhPz5jtkVoo
+JEZpPTN9xDLpMG7ej0FEoIhnD666KwTNItqd73wyEsbwfMKVsoxcT8p2HDJOByzUGosUtLIz0NF0
+NHE5/3T4N5Avzg5Vk77itJs6o6QujdHYUKT5zsXQQEDsx+ou37QcIQQ9coOZZESAFbaQFZXhAwkj
+DBG96JXmvhTTDm/uZIUD4UqiqarWcjgE/UFvnKRRBB+bnTz9Bzksw/F5Lki3WX53B5nyAlxDdYUT
+5TCcKofySwGuVM4NBIHKv1hPax+iOUsT1PLBTZKO4JNk1hUxie4MrLRoN5shs3+jvNEiW5F2eKkU
+2jili4DG3NaxWbGqO4RHpRDAeqxhkjy0ys4QeBEqzAzRKMeQSPX313Gu3fdPBsSmJYPCkK1/s5WL
+R3tLt45qaLDAiuWVQtiv5lPSqFZyqcoGWQgP8GfrHqoBdaX2sC8nPezt1Cs/WoELiUZJ1d1BlVE0
+w0/zKqLsuphlp4D5+dvv95Fuv62Lyb/fLBrHsDOemzJEsLWHQ+jgfa4UsaneY1qjHVgyoj6prLzR
+tLAvwo0g/DcGcliTBeCY/TJL1sK2z+F1GNs4hxyMQXUjai+T6iAsrQQiCpLnJnmK1bCcl6Z8jDL8
+frCkMYBvsDZZb44MrGMQ9kQ9o6a78etIWy30qp0wOJCafEw1tt+Os2kCl3uAQK7fUlCVqd0eI91W
+5h8UL3wgLKFGxC0hi5RmJEbWXEPPio0LGdatQ3eQXgMhh+E8/bzzU2PkCL8gIaO3T0UvZvCOWK4U
+2e9b2HFDCKpGcY1oAKl6fyMSTY3t7p3nzQKwN/Me12Hw+Mb/qf5P53QFSfGdimDHsD5ixnCcpBPh
+/PADBq4SxayTsikdjWpafN9wr66ACfvrFfIlsGUdqocZs8bOvFH02kPOS9W+M/BvITACQkgDVZgY
+5qmMgFiVJ48sLkkX22z5yyit23PgGCQLoZKoWkbh1V8NMW9nFLR6Jl7pjsS9Eqg0CngDGn6nJIcM
+jWQqCB6D1FQ7IY94u2q1ZBjtptNfan1WC3aQmtrvXY9uVIMACl0PG5+DqBGHsc+q2v7nAttgqiR5
+5WyTpKPrsRDXovtSCwX1Jgd2wi9SYmk6KHMp84OI01zal3BaeNBqmFZjMPA8/XfWVXW4MOYadjlM
++Ed/cK2KEtBTFmdCMQgt1vQ5H8viUJ9ulhXhSN++qveLrnQKlZVfnTWhoO9hJZtjwAovq8xFoQTJ
+JjE9DSiLHRT+HTTd3Cfr17petkx1co7+Vhq/XlXqZMdm36WcYWq5xH2lFmtyRoi7L9qPeVL81Lv2
+5sIDXXd/99G/g5mJ/+TFY0Da7Srk9NWEyuwK1C0OchA8nyl53V7gM4btpeTKa2S5TvcP8wDPa1SI
+6dl5JKdGodeCXeBdyE8aPYFxVSfIIBvD7RzB9ngwGP4ZZQiAiRwM9Ag8fe2/Ihawj4FiPkvABylz
+8g0xJ5+PFo5eWR9SryvpjMBbrSKW9G0FYi180/Or7N1wdeyMhTPNu3vF8yV5TWDm7KeqJxEI/J27
+O4E76+e2hUEArUmCvX0Tzs5kStaQn4LzttnInnvLGVRrOrVhMbDm1/+iSJ7/jd2g547tp42tX198
+TYQ5dFw9B1kWKwxgjD0XS+eDpr86uGmf0MlN7cXNXcsyuNvXwtTrjL+DQxFVlJthHWEx7fWGN8yf
+XmD+7PU47S0zPoPBBmpVCkPumW8rilInvsxTEqMVB74N8qucBZIw83b/+YAZJNA+xU3Sv93T2k89
+bjo2st05jgT0RUqFrph8GdakFvJwOKY/MGXDM70EBJqhG/0JbADk0tc280kkfX2jEhw7ylky9saC
+0Z5mqn+TpmEMmAr2dtzbSQxFGeM1iiwZjrZb4F/tKSlorSsMBoVa5xuaYxftparXvHWjSh+IjyzO
+vVorD3cqLBHHvC4q8dB+ABDzab2y35mD6yb6S3NozQmtYshLEi1dGcFyIWaqfHQymqCp3cpqN83J
+Ju5Z7Ryxid5a5qwZKdEa2V+D7carc5KYMlMLuXAP/wPNqNb3wQuvQhmSoyC6L2PwX+y2uW7hRGrB
+Whu/3nU5xhJ7unqeRmhmR9M0nc4O8GC9SYUWvUMe0lHuEV0ooy0f/w+rxVUNVUjStZTvbT5CURD/
+R83lzDPxM/6QMwwmcco2DTpmnixIFe7ecGbk0cZAseWB6PlmInVZ10ctq/i7fPYeUYDbIgHPNJUa
+TrhoQ3QP+5Zet+54OCXR5+bFU9qpAmCK/YSRpBLUA2STBEfoVX1U/15zenTuLWJCZUq0iJDoKhPl
+pvOtH3Wf3jr6OZJ9vHew7mudy5z2RLtM4QAxd6oU/GKh8dOk1Ti+LUEyUFCq/t4iUbOm3oqt8aDa
+7lVYlvp6p4igsLvsH5Saya8fdzaQ/df4G0pO1ekWTglYLe2onNS4gSAfCC2TwayP3WYHDVH9mqt4
+CMQv4W3ZL8O6AqgYH5Y78IbpgonCwQ+yw98RZjifjDezOd4AHrk86q65b8k6QBSlWQatorzlgX5K
+EGNssv9vmWoEyQ0x61lqyPa3ndDmYsKFyGB5ePHnsugo+g8Vh+DH5jRqmQc3K+ZVZUdiTiS4GDGR
+AL31LHCQvAOgxvVXayK3KJcJ07T2z+LDtPFFgX9sc4sioyk6AhgdbMtDncIYbpKU0mLaAfIJYwtD
+bpeslqplQCfUQA0XpmlZRLRGz3l3XNln5R3whDUR333Im7vD0x01vjnow4Mpx3Fgpe+CwGjv8mTO
+uG/QMbc6p/fCKTkBAITAnB9bdNWEagyCkAJ0uHzQIRY1U4v0rnQ3k56jzdT537EgbK3zozsc5nZ1
+5nfSwekVtxL6qzO1VFq80WTk7n52cJ8UCp/9og8Ls+UIYhDhaCVxAHqx9LgwB8Dl09RkzncMfQnk
+NFEBWNCDCWeomXo1RhsSAr9j2U1RGJKBQIWRLdywmYPPCyyEeQWsugOapzc7X8lGrdSsewV1APOA
+HnrOx6kUlLb2wnZYxLEf5tj+sixNMnAUjmDVq23IEuTh3X3LE71rHBAD6IUwxvB6Y0oVQpjlgFhC
+eZOpuix3fISD8uBcPUZBLwsjrNVURKA9KioLAHEw9A6E8RUJuFgZztI/o7iwq3ANAKUdhiJdweki
+EbBkHR996+SJJg9fOL90YiNw3/ynR/A1aTdvKMekicscZCJtjXHJvb+S+Br6xFhcmkrgaRlaoTF9
+iwgoABaWlQhiW0HH+MSe3zI0qMYXcNeMY0zXcfzL7eYZtjuw2e6AdP8oMZvbrRfrah33GaTDibOk
+Y3ROHfL/I56krOViRlJLLj3lUqGxY37aIcVuBFPT//5Cx4pAFVVooYB9JrmnI/vGX1tupMYOehqk
+o+4NK0t9K4wL4bjyLwPslJbNClOuRCr21d3aqEQijFjdfoNxCz/ArXLiXKe6VlJFhP9BBAWM0r0V
+GzlcKHv6e7TLQl9SOX4HQP4zrAOKZdyYAp1nwyH6y4vb41W2E9lLn34Tz+QFOTdQFTj5ur2BUoww
+/151xCBXYT5VBCFJOvLZBA2Zcs37IM07KNV7tfB4G0AbeFBn77D1EqkQAwceTiqHCBiRNgTo8lpr
+a/RbI8vUE9eH2V3yiiUGJWVw3vhFGbHI0aOCufzyXtOm7Yq3ssB3tUHaDnoLB2IBcYyAaYjucRTu
+IcingNc3uv0EUohpA8YspLVrUZz2G/XctO2TtZ9GSlH1h5QLaTCgYv38iU0ePtJ1SjEbpe+Rz4GD
+nweqDVeBJGwQmQ8veZ0msRSqjWTUPwBPj6/MVKgqo+tsXy87ugz65D0GXRVMOf3pzqj49KY8CN2m
+9tDodcoda7axphbYFwk23ScD/rpFsEhQard4pMQGsHLPFiVOKpXi6GJz6rAGybsw9n5/XerWNjel
+OnWDzzfM9BM0fy2n2i/FWOBXJrqOC1eLHXSCgQedeYeuvmDfMC2LZF2JbMJWmhJ5rMKxjEzoyFW8
+KT+yNdMgpJNT17uaajm4o5tGO3/aVE/xRNxhLIGrk5fT0E669tTTzTYLfDmLpnI+3kVDcf4ZVXr8
+zOacDYZREhcecXfVArCLWO+L1Bu7AVeQ96MLXaRkERX2mgjoLcEYFmPNklIj2F/r0FA+MdchQOm4
+eMK9tbDd9g6/ONDyQd9n4QZJlC//sKOdu7aOdsQgl4wvMPac6v+SUe/MKIAsV8DvYDs/iXjtAtFF
+AavQWIvRJP+nXNhGLptWC/SBPMeIBZSnjAHqly6a0h+bTmMrPXdKCj0gGmDFPFUdb+c4jF3X3hkK
+pBoKRY/Ij6yXofLrAngKa8O/45rq/X2l5sh8zv5WlVBhsytSiy16bw5WV1fygKG6FpK/xmVGYUKC
+bUnFaKEBbOYjQqvroUAIIJ5qeyRQDMXeW822oh5FNL7D4HjMV2U3YHZeeu8/4QF+sGliAWV3CfBm
+T40/q7F+yLvoQ+GtXgv3OraUlp7IPC6FETj5mNIYH0O9vqkXVm+51BMaTw5B5O5d5DEUq/DTqc4w
+CM2usuioOKH/y3h18u4S2ZIMYhRSs48wx7MJoo52Jf3w3Jiueg8wjw0kLQcY8lyvYQ0TEmeAZx/S
+hUtbCp+nuLRn5Y6hG2mtePBl3XV+LIbCSSKNqkf+NIng4c3pwbzAmdJlozt2QXhd3iTY8sROnUlw
+jLQfmEwy4fTMXfSeZlT5qk2SvEysKPkG2/hRtV+zWBP9J9TVIjy8dkaB65MJIMNRX7qspa7X1U2y
+rzvh2cLWSblDf8j30IOGprQUkwVSnJZypm6jYYO99Gzm+KXSZ/LX+4DqYIv45LcHzkY7VZF/o7Ix
+qwG6oX/tTB/RlNyEHcBOaKtlMbyOEPpxQH6mBbXsBpMUV18ui86EvrCVhc+8H6DL90EQ++Go+cEV
+c2P7WR53PQ5sGrIwTpc5rlFjrGX1m6bV4VZYkYNaJx7kBnghi5aOkal/ggFLvPPQvxpAiuoTysLG
+/xrIiiGEknVb66CQuEvTxPuAqnv1pvX0lSQtstzZ3pbC1ekXAB0O7MyzfpjKflKKCmErR8cSxb6F
+nYr1SIU63l5HESylm8NqYZ6OA4fci950eJdPYh3fa+4PyV6t1wUy2bC978/KC80fECALoNXLLvTS
+Fkp85cxTyaa51CM8s6XGOMv7JdXVEqwAPV+zbM65bLxk4a3WLG/HxI3JnzDmaERZ6kYaJs1mnUlS
+3HXAPOjhCc1Cw+fnCr26l+5mKzV0NkHBOZMQRcoFdwwwIqHMxakQOapbLyCCKfzl5QmmqqjfLHIM
+sIZGePEjm4mXgx0dKBvsKIDZFebuLrbKQI+saDUPNSvp5SksbkwzpWhydvWQcqaZVKCz5Dx3tACu
+yqWct5DNBjVBOgV6IgHRS6alLecJf9SiylZWLGG0ejpRDkByvN9GLYPopOostuYJupzGAQfXMjor
+b8QRnQGlcm6QYld8dRCmgnOpYJ6hZuJI4AKqNYdVAlGXf9SvbwNgh5erVdvWyjjyonc7LomO/sVr
++XurC5+rstKUmkiBynQXWgPu/l6l6t+n2L+rcH5YBmyBJD5FUAnG4whz1ddQ8K8nFjK8wWOWONIK
+/w/fi/ei+F9VG3HiCi26qj7HLIp6IkhMyPBRdPie3PrQ1ttfmLnc+z0uHKdp/gCP6EQjgfbIy8BO
+vCX9eXSf9gnahRv2WXuf/HyklQLOoz9MutBI/3JEvWCqLqIKI7l7tY09i01+Ld7q7roO6LBoNZl8
+JzPU+z4sCnaP0D8opEPfGFMWo2MjQv92Tmp/wJ21/6krVM4wBpM4Q2l6SO/x6TgU6h8MRS3I11K0
+7MhGFble3u0sSeLix/nr2F+B3Oc5qSJ05Lx/bzQz+A7+Ebo33uvseYs0eVvv/fq6jDW6Sm/TzIdS
+S5ywbTFuhOgdbOpdV8IuywAfrZ/ng7zWCFWwsaWMEfDUeSrvbw/0zYq0zm+VcZ8nmURnpnxcdO2+
+f+cOaCKUJA5HwckiYj/mnO0u7/UI+beij5p4mBlHoLmHsqTuR/zif2o0TGlXN/QJg1O9urkgig0W
+J4qrIfbOHasThkoqfKTr4AY7MUMP/szdW6j0oiz0kqVy8f3Lv5XbtVQuAdxD1/i1sFsIC06qCzs/
+xuDOrCcR6a8b1sbpNmMQB0zIf1XwxUq1cGruKlTZxFMhNsGSQR9GXtPZqyMVBCvDwJRP05E9SG7z
+aRuP/UWUIa3SVG6la+8+aDQoHB79wyUox/8SKdIbq3R8S3N+XiBUveaWrZuJ2YqBPWD1gB2SeF3F
+a/Wtr0jYFq3XA+bvGuqEHk59+VFTw5tcjcuoYG3rx9cUxmGk+0q7lXAHg9uKmqJa6zuf91V+qPRM
+hgM3Uz77XBetB+DgWX4fWyOEwcQVvRJmOArIZIbdEKjnU0OcVFas1xuvqCTCew3f/SbfWo2HoHoQ
+Qdrfrw6qnX4rC/BNx/2DQUpjYfBWdiBZhAnrfFw1CXHowQZmMjo2XqQCyv0AHhCk2RDEBRbQi1ag
+giGVobsqzoaEcfCp0PZR7K+GnzqlgU+nNqD81xTo/zaV1uhutNw06WReh4p1qcIjJ453TSIUT8FU
+zsVv5cuvUkeYrmGM0yOrr+i5DWAtbdt5kWfGmqfugna5KvOdcS4/rI1ycWmXgbKIkRWEopyaSJVN
+OHzaW1tyEiwiRC8mL/uxhadrPflO4fNttNnsSu6yYZ3AaqK78wiKPbY1No2mISE8yoACRF2VRtnK
+TdV6qOVEGcnJSs3kqiEkmTZoPKqTUdmwUL69fwsDKZ7RaGzXHP5G0EEZuqaLMfU8g5SSOQD4uK2D
+fJHQREGHlA3kuh1rAuY4djjcWSsL6tEEu4hGcZxp5owls2ih9NKTMLH9sSiRN5fkIA4lTviSuqiA
+DpV/n1rwG0J0FSEUX6PC2yHr36xT/VHUgH4/vZ6CtKote8cthOUY15aNPvqTVIra+2Z0WxWZamQB
+tJj+vPJBqXWPSHlWWvjDDJRMOY6WsAzlGcJhAmpQgA5USirO5KgFai987oiaaGFes4LwsQTwgLm9
++mbGzHORhkuW/LVmw4IB5XxJ2zITfu0XnQVE1qfJ/rbgvtRNdTflFMLodkrFO3cT4hwiiScdYYcO
+AMb9Mj68ksUcXCCYj/8q7o8D03PE1YUKkn24X2DIyvZpMAIOGmi5KC9TdBEfhsnu9qFVpvbVh3Vf
+ZCEi6EZ4Tuvw4rK2HRpknAnn04cP45vKWWIR7kDBRPkns8/yEA6S7wAsNG5VV5iRhX62VK8sJJKV
+pdBDvXEImTUgvcLx83kSi5i+jc4URhQ/+v98p0iO1/fpvcRFb8Tf2FRbZpqKl/guuM17SCufZLCs
+V+2o5LoZbVHd3NZ3DpScWZElfndhkClW9x/bpYWlvpEV6qYlsiVmGfjkk7QKhV+mrNIEPzlvP1cg
+mqGflfsTJc+SDXM6O1ndEhhe1iGK
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Actions/d3ordermanageractiondeleteorderTest.php b/src/tests/unit/Application/Model/Actions/d3ordermanageractiondeleteorderTest.php
index 5986a50b..c475c60b 100644
--- a/src/tests/unit/Application/Model/Actions/d3ordermanageractiondeleteorderTest.php
+++ b/src/tests/unit/Application/Model/Actions/d3ordermanageractiondeleteorderTest.php
@@ -1,93 +1,96 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-SW==
\ No newline at end of file
+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
+Bf/nnYrIkheV7s44jq1EOhd1/3IXOAP59W==
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Actions/d3ordermanageractionexecutemethodTest.php b/src/tests/unit/Application/Model/Actions/d3ordermanageractionexecutemethodTest.php
index 01561174..f5337461 100644
--- a/src/tests/unit/Application/Model/Actions/d3ordermanageractionexecutemethodTest.php
+++ b/src/tests/unit/Application/Model/Actions/d3ordermanageractionexecutemethodTest.php
@@ -1,89 +1,105 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+HR+cPxNgwHVjPz9Ow2jyDEum5qnKDSIA7vM22zMBW1Obl3XKxPxu3K00zNett+vLn0RyB4kUmQA5
+3LrQRd5EfobCJkD9rVwAj2ScQEk7MZlv74mulxEko85MLtclwyNPL1Gpd33He1ThnoBHj7aHAaHq
+mS6Y9XL6lIQblVtNNNQ4Hk5hMOkx6anSafrc6D99D7T5dHqLbM2hnv7863B4zGpdQJ0R0Wxw/AOi
+el93RJUXdoebxqdROMDnmsAYX2WnPAPHn2KqiMI4Lg3PUheqzABDaDbijB7SPjTFn7MQZdY2R0e+
+vKghHLcrEcCpeKSHrBQ3F/gpLhZNF+Ob3yFO4Wwjab9kfmEio4whumtCcKfdYDZApRxiZxtOTh0h
+r8Z3oiyKuKU6lq42Vy8waMmzZbAsxiVNhD8hj/HwQozVKVYgxuLd2wMTFfYF32rn/vPUE92NuQeB
+j4l43mOuKF0hLda4zVr2PdXcwUJYeOtGDw7CmhsRiZ0eksWTk7As1IzZM8xEsWRsCzWf6IhKa7QD
+JcxLTphDtZ267BIcjUgy+8PYEbUkP23DZXZpUM5wEn+Vm6GxqND7lqGcnXrmVkkEgy2wdnIfmn1c
+V+pypy+VCwogesZebKCcAf7htGv0bp4CBP1oo1ssH5HFXPOuAV9g1pA+z3UQMu0mNJlqcy41Rp08
+1LdIgl4NVLkcAlVMqqBX9C3OwUDwcFrwrPUdwEEyy2A2HPKGargKSMAnlOcVAoKMcrXOi5J1vKu3
+Up0jb+18rl9M5nVZLDIz/NFk7Oeb69m6BGEdi/l//2p3rUYM91cn/pggwHiSjylR08P3fl4M/XNd
++z6QCm1VRL/Mmy/1DoAJw2fxOv6maln0FboXyahD1k9d+zjrxux2YxyHBBUh/Ob8My4jLL/NOd6+
+ui6bqPnuvbiLLrncTjFS4F7WKR07lNvUnXzaq9vojQYowVdhZiO51QoEAconuANz10GHwJCnRqh/
+9nhw1dfQUeGqy4d/7MoJlD4c6FZXfaJIfhpo7Oa8zzy6XMMMPWgq3E0ZAi4OrJAtYvi920vIzVMd
+b5mXylXYwdWkYEgu7wynNDOBt8Mqhlxh7RTwGQ++53e+TN/C6EmIhkSh7PYQPrGLUJQ3kkwENfYa
+yIhvTVvfKuGe1T22LKiVTRzBWJkolx6SyPHxXUzBUeJWYcr/DrNLJK7RXaIrNVod2+vI01SYblGl
+pNtFQ9PssuskA1g9KUsLobWweauQeEA99ZvgT5G7gVIYpe1wjjBg+D5pEkU6gjWpV5fYUiUK8mL6
+WlyFLPmM6n4Z3CV0CAwoDnTyMPN+TDx5v8ZFUGr7m+tDzNnG0ks/H5w85Bo77FQjEjJuJXuVJm//
+Kze3xRljhzxc3OP4v26uiTy+xb9I5ujTNlv17hJSjjkKR5jb3LmJZ7MtUs96dZHMc4x0gyWP6RFs
+0yQlBRlhxrTXjbJwYc1XnFlCFO+9X0u5eDdITVqkkQQ5ftvPM2K9JOReZ976jMxb/6TeC8iTPfZL
+yqezN4yRn8FomESX8KzLJMGdpkV5kmyGHyUh+6qSGd7hTAM97ODoTl5bODbse9zvagQLHShmS+vX
+JsrzFqT8Pn3hxCDI/32qJWFgBEwdhajQ++JtUYBk/NaGroMTz3rLBhTi9mxTA9YExp4GfzeAqsB5
+2sVTrn9sNfNBLG+8UyCB3WxWb2ZpJBkudxExTdLhYyLyNgfCKAKJCykgAuBGaiGdNx+zKmi0xNCU
+2j/54I+B7RgTyXo+a3UDsapE1Ylv1TKrvm5VQBieupK1n6tSyfUcSTxg3+IjFNN2GCx6ZbEEPBPi
+l/DRRlvCM5FbJLPt3Q+SE2cHhauCPzAKxjqr36kRSbAhkh42gLNSA/2v2ngXaljSbdpO7K/QIT9O
+UUGuNng7WXUcJIOAle/9wnGm7rW0TYo8eUkSRSaBuFfJuzMtrVz275cGblk1yCCzMuXMe5yAB8mr
+/B/jU4j1jSaBsBNQ0EgE0TYf9U41pZguwW4gMGcWNbI6dtnGpHO5/AZxYDTWEBjqeZqP0hLBcd9l
+9/LZ+XejByam6/hQAW1TpKCB1frLEEL18I9US9q5iifDjzO0rFZuTNNVAd/u11JelXoJd4RuBmqY
+fGp4orbAAsCVFtXRqO2N/YDAoyfWvWnkaZW95nXkSP2s05uuHE6i/6NvD2DL9RfwdBPM4O3ArIsn
+e2yT5wFWqEFWXmHKRC8UQVZaJGNLNZ4z5P63Wy6xFt2YlQTgYkNI/PQptp2QWquK4VKCVPC7Z8y6
+rRFPXktleyapIyUsNREPx2BcCpuFIuyrzO0b08OrZDcNqy181oJxmeISpPOJQS5+m8kPascrkqWT
+wjAa+VLSAy8/bdjdh4D3tCI+ypUYVqDW15JGURxx4ze4jEPc409O+B0HDb8pxBxUKDc3Xupl6ybW
+h1tUc7Vg+tG+paJakSTP/aE9yn635tPCH07s9zhc9/ileD2AeQXj6VG7xXfZrGFG4BCi7dE4mc2g
+C7Db5n/Mt7kjiPlyChVi95QFCGdtnQn9Lpge1QEjMYnqPx0Gau5v/TMUWvDQVNSCMEctUue4hgn2
+LhQFGl+bFk7YInfheqOOe25Hybs9WRD0lMz8jvi+o3Xhiw1WGgeKDUiRakc6kTpLesSblzpBRybZ
+PdINv7noiMPrpiQrDHMdEvy8Ve7Z7GNmbixDIDX85KUZPi0dQKNmC1UU1tipH/LJtwVIMmtu8yGU
+6yrl+rTkSxaoMCBkGwUZ6aexVWh/P+cWq1iXOPxGHMH0d3T5vU4HrRiXgV+/OINJ4NwzTBUQ+JLg
+M2UrwZcMYva7Zt0pTD8A0Fn2IUFkG1I926M6vzTddl5v5krIgfknsBLQZZ5urJ0Y5KCK9JE/n/NV
+dsauDT4JrvMB2UT+ugkjtZJqXO0AVX25fOhNce0uCcSIcR+kOgsqWodvHjxbZlGJ3z3hvYFOguZS
+KkTOu5uFNYdCtnslTOoVGPUwdwmeEjuqRL9yoCIKMK3OWHun0Hn9mH837wdr9Ydc1Edk5zq9ECik
+KBId+2vu/Me20kPeN+FVEZiw2X41lSjQX8lvMx+jQyZHFMecySmXitgTKnyJ7TgqwhyrUFsRm7gN
+iF3hb4EWjxxIXfHZSJ1NaaEAlWhB+pKMW0Z5EO9CvND7Uj2byRwdPSsHsz+3fGCc0nzhPOHyxVPm
+LtH69VWFEI5nihwB+M1ZX4+L1ig4/edzfV7SHa1uCqI75coe/zZwxCbstoYWCE2+LTmUsMuf2c55
+pFuSuohMCVQbXw3cDCQ7UzmW0Z68Z7jALumIR2ffYgr4z4ci/H/lqlYcFs/p108K68tJY31ixj/E
+AHvFu4yhIS2jeAX5stRcDulWNGUAmtCVeVsb4YMB9PK5CETev6q9g8QTP0IIV67Q1OGgG0cAVaCC
+J9S3dQJgFheWpE5YPVyhBYhoU/QyDrxIoi7y3B1GX6Vz4dMBNnyYE8IyIwIQ/XTYIscDUmZTAIap
+zRcahZFy2dE7tvAOAa2BPFEJ0YSdjjWpBesm/yXW3uPfL0quk//k1gbBhTPwPbCcWg+k6PCeyv3m
+0w78v9xaXmM8JCyAdkyJE+mje6cnd8VAV0cz3yBYY3GMrJkgmJ3ugQvircSOfI6YjqUH7zX5Sqp+
+cyP7yvdakd7gEHwJ35XcgrXEL6eJBRs6uyzQJpL90aJqHfn+J/Bn0qsEXNRzieeXUZCsgn/AYOGW
+5B6+P3yTCKeeHnscgT67UiaJnKzOt8AV5RdnYJk8GyIa9BckuJ9IGNXz/wq+1qnlGjKWk/L6+nCR
+DwG0UwVMYyCmrrG26C37p6A4voILeFfdiNQabLdIqe8QumS6E+hzfQ9A+rzTgv9N3ggNnBQf1MXm
+NWTsH7xw33zEGowRtx19vHyXJN9hfCZ/HeV5cd3lgo4rrHTOiMNNpCLiMcU6CdXtzuXpv0Ih27in
+26cLwursxEm0i1Dgt5AsZeOiK4tbsa9vaNn0dlMDQKhMR7hPjdkzZNWKoMQQisWODBiIQ34ilM1w
+C/rjOSIynq0naZC7s/F6vBYnmk3++t1w+sh7RQOWzV78c/s9cPJoQOkYdXzcafDfAQNHPjDl/Wd9
+yJ1++AxTiU/CTHtJ+Y1OzOrFcHa7IzKJfbICYP2uxI/o8eqH+GoA0M4NTzumhVf6K7lgxYQH5mPS
+7fP1KuCl4y/nXGNLEgpF7wqSbw9igTb50IQuKxhmiwO/yETG7SXSKVzjfTHyfO1B1wOYgeu1TYfV
+ZTXt/i3vLsjBZA+rS85hIc/50FTr8SCxolGILtU4Nu6J2igXfz46oSaWUkX7Oa047/TRnnEtqatA
+UNWbaNWXve7T2c+6acZ9dCoa4ZZ/ISKp5fJ5dIxEbjuE7oc7eY+k8gyAsc6BVmjGjirk0qjFrz02
+zLkawlBa0lBPqUCDsSlkTj0NWNqs+VWIuMYUJX/USpg5q0ZJlkBMQgVEW11F4/zzO1uCUVFrsWlx
+QxlRTXXLJmb4Lc3pQTxbXKh91pyY223gGEH5uijlSokD+9jQbO5zsrpYZrNJ0zoY3B3dUoZog9xW
+6weFI6/m+rp4ulnqFSop2g2QvVyELNsToJ1cLYwMk+xK021Wlo1tU1qERq14NpsNNrI+0i3AAg8n
+Noa43f3ZOEij2sHhzbEGr+qE/GNY4cVDb0BDyYXNXaRaB3JrZ5oKlswHE0oGwrHTRIsSSnOz7rFT
+sHv2B3logbZzwZTr44LFcP22dVa3JlS8ftSjhQ0m18J1pN6P5ApWLcOa4B/50P8X4nygaJl8HnER
+dXO4ezlbJna3jFqqA8jgIU084mitIzRRypAnLQb7QfelzuoEJwA8Es7hEMDJ6b7l5MJEtaVMNNON
+Lh5+JBA1evqzKrsE3Rhj+yKzCDYXBhe6vJr8jGlmrjWbQIqvdYmXHjTLYBUyrJ+HK6WUhldDK6EO
+QBegN0fQPpucsYpJt8vO9tNkW6lCmVT6tycVXK1GERqvzDfnDBH8xD6KfDrDHXqmIV8cvQhJML6F
+QheRVOHfc+pEeh4/ypL9KlYCbYbqfReeCr3T0EmK9Gtw3x+O6QYRkst1XgQCkMyoOtQFi6gpFJ25
+qqYVIN1rqsgkBaFGk5BrexzjDp1iW8cM/OAtCvzf0HK2K/6NlRS6DNQsTrXOOJUuMqyGWKgUwOPH
+JzIwoorqQ6jdoezKVyfmB1nQE6LGQEHq3N14jE0i1izfncZasUGokQ8Z7z0BAhVR6as4q8SXSY8X
+lc3jn879ahHKtApKB6XiiYti+Dm/Rm9AbyzUG9ozetr9fIXDmx4+dCVkr1NRSJylh23xwrHOcEIW
+CmKZrD38qgXPAGO5aEP5CCtM1+YLVBDBFtCgcuhguEVmSEGsZkDZPtY74flW314Ot+teCXB3xCy4
+LiFAr9paRIbbVPG8q3lXz5rotVgOuEp0+aOUXifS0a1I/AYgzqTyEwtu/n/Mdryg8+LSvdvAxtRE
+f1eYz6vZ1jUWENYDjCmgddAu+HypT1vXOAVXLlyCAqeowndWSp7rVkxCu503Ey1RsgPOMWxUpGlj
+tAULG3Xh05GmbMU4ld0CrXY1p2bmAFYhJldJPXmlx/NlNhW1zJAaUMgbotQ2/5rt4V5iFOlOT5sq
+hwAjiYYcxUYaMiq137VhS8nsnV6HGz6nGZeogbi21e0Vv4YlBsbgnp1CWPzJda+zjw6ZSNfpywBn
+iKsW9BqFv4jzUmrwufDTjnZjeH/AOlCINjeXAYzPf1z6VCqKlUD3EU0X8im3UmcFkICVN8dgkBRz
+w9Mq5RSWlsK9U5I9uKRRAJZ/ZMFmQttaSAdq3HsTIsB2sZ+BRGPwUuLSNCV8gZKDzp3FXQJbbzLd
+81fslraVnfa2dxUP7NuFkEq1J79THbVus/6pIQ1U2DU4XnnTtdm/FxzGrxlyEm9nh/fCujex0VWr
+OCs5ShjGEPP53uYHkCO2hS5ZjqHoAyXscL5vPDHH9Mn8wo65VSHMFXgVp5R+TfJUIaYKP4bp9wgn
+rYXvTc1KooQ2wMh4B6xTwXPjWgUlsOShKQhj2ZGYTji5IOtDFYn2ZKxTLpsmxxI1fBGcO9p9WGAZ
+OnoLpJdeidM78gQqlHQVdTz40w119lsFwj2d7w5o0C8FYxTYpT/ohQpnct9ey7blBsN6JP0KqJsk
+lRocmQGAQhzWBELC1L85hdmKCqVeMmtlMUHaGTVA76GjkV0W039xN3C5frAkPy0cjdV4DKCp/JAS
+syiob5cVubbKTME+bsRoV5BfX9YxX0rkQQyte4quFvSzhTiSHCXk9bou1v3gWScQGKeRa8Stri36
+vEdvu7dQTApUdlHmNHs4PoQhKyI2pCMEXhQ7UNbvdyExIMRv0QpHT+RLLWaGGB0X/IxcHawLE4WW
+gS2MWyHhyQPVhZGYOtyjg8v/04zPOj1TC9/U0aR27ptRkMr59xFmXyg8tHVPGPSWBLg89kStIUSl
+Op3pFoBzzwizwy+m7qC2OqtEzMpkFu79JhcrRKZg3y22nb9uJUxmAnlUW5PV5xX8IlvMnVv5Jtu0
+ldGhZ0mg+GOw/0jD6PtfHWTt44S49S5735LZHgCIiBnruOswYUAFbi75aLnGdvXPqxxEAHKFZLuM
+So2EmJM7/i5x/OTlwjFYWfWgCM48h3dRuqNMmSF8e2tPvkun8+FmRz0ub5sfM7EW2hCIvaLp3axr
+NjXHUD+TXZybDd7wPdkheU5AZCwsBguhinXJQS7y95dAgkHvvcEficIVuGMU0zKQOSmPZvrqeMV3
+cPmmOJG8cA2Y0canbYN2ZHLhw37maLg5OiFOibIvMJdiXzeeYhxhCOJlzKg/24fNMQolEsRdiks7
+OHL2zKy6Y0oQDl84aGng4wQIEWAf0UkvrwKP7P4m2dP/3WpUbPb+LfhymVrj/uTX8dBBR1y0ErmK
+9MlyywbubI1wpAC3C4yqZwDcJzsk4uMeEaTEz8hOxw9lKUp9CdWSjiEKqLu6lWTB3EC6E064avoG
+pQU/k4uLaH1frezZp8XS9q0Eamb4d3AB6/FiDVUofFW7LfdaNb7sPqjVeUW1uyMDLXVYGnOQ1sD4
+SjQBTx4+hKBiH9eubR092rPBIR05s+2DwSwwgalaQjBenLtCIkPHN+22RgusnygzGjJqtSpq4N4Z
+jnKHdhIgvuktke9OvEI1S5ccr9RhFMKBtgKlL609/ZVBYq0nxlOD0TsyfpZUD/xcNyoY+8jPGkFA
+3GdtvEYrV88EsDTEtVLEKmF/caPhHqqAUqJj6tjE9VlkJkIt1M74ZlUWVK7dPVXof/+ufIHJT0eq
+jwe/1nJKAeS9kc2uRjaNtsFFtjIRmrMrUMwlWdluLbHaoaor3seDOTOSTPGXopd9xM9BOl/EqRGE
+ViurYy2rSMB2ZpEp4Arau2OlL9BjrSfh6YU/+qvuLFHwLLE5s2uBU80NNxqZ22pgb0aQX+eszBWn
+3+8CCKNRSbxPkIRbjHAYom3h89ia9KX55Wtry9ye0jZsr8YJEVhOwbPkSbFrIjLmf38UXPiZctIH
+1h2HD9TDMVrZUeioo8NJuIPlNjixkuLOPi+AuSd95yP0tAhn+Qqp6uJ2BxU1Ip0EbRrtU25nzlOM
+1qubmdcJtOquWVJSEilQUHNGiJtQ7D/fMGAAuR6N1MtGvTzVaHgt4Sm8WG==
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Actions/d3ordermanageractionexportlistTest.php b/src/tests/unit/Application/Model/Actions/d3ordermanageractionexportlistTest.php
index 87e9e150..36e426e0 100644
--- a/src/tests/unit/Application/Model/Actions/d3ordermanageractionexportlistTest.php
+++ b/src/tests/unit/Application/Model/Actions/d3ordermanageractionexportlistTest.php
@@ -1,121 +1,162 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-ugn+Wz9FjA4TQOwF
\ No newline at end of file
+HR+cPsOuIwxTe4+2cExUZQb6UcAsUcAY+yWSPRYuBFO97+RXg04DcBHCRhi+d2iE+ehIgAs/LROs
+3vrqQx8hnXHfKs0PrMKKoR8EP0bYyDruUdPaMSP8iGkSYSTirz7evMI44+iDFMoZZKGSCocnk23m
+fzOmcuT530U9Mb0/KseZXSDFxArvLW2ShrJcUyG4vQFeuDVSjHlEOjsdWfPB+aJBhTxonc6cv9kS
+Hcxfy+ZAmpV5t8EfL7jGlQ7XwmqRyZ60KNnvP8HMeDbwkZJqeisGsMoqiJvlt1bgp4XHVDkDa3vb
+PQzmal8Jh4ycM7c1WY9a+eFc+dow/lsjyrirOYfNtFzga2b84tEWX5MKLDIqI7td9vmho7BJ1Yjn
+eonu1C32h12zxtKamdnm+NwTCWILBV3uWSj4LUNzfDR1jUK74Z4qWec4uGNyb2xLc5Ic3cY+LCJ6
+D7lBumNFTwb5z5xo6yHFmneJ1QmdPLTRy15gj4082ecu4UR9aFaZR1AoPehYCuT552p++D94h1u6
++sgxO6hVyk2a+G5PMDsy6/y2EagLkEA8wJh/H9LgG1ijfvt/R0M1t22dnyUggdluIz5+091ro52D
+YvN5iYMGAo3nn6xl1np/9T9symZgZFlw6njWaFBrQayOMJ3/gcYPpVcO/+n0njfHFoysE4HhqzGN
+XqUM7YsZ3Wv9VTGNvbYDR86plQnE4Wy6VusdixVP9DPBJkeZ2+17bBGfBFa/Q9ifrh7ukGRWCf9M
+9VzVvRF2syAuRQfyWKmwbudCw5FN6ebUhBwK9A3cyBd1BXg7f2Y40BnhgN4hr4bgCnaTbtc+Zlpk
+oN0sSbSMXhf0ll65lV9/391GJDMJTD7qlE9f9kCo5EULtARFkpbZKKjKcjWRHLbx8twQxOgDs40H
+fgpwAvGDlkmGz/6ACn0RSSlAxJz/PC3xtzbvEk00XosQ3DDZmQ24pAvaVKztcrbcxdccpo0e2uRc
+HTMw/XWzGF+C4Mcspkg8y+Umseh/mfMol+W9k5ZMoO4j4xPEhTJ+NzBo6Cqjqm1/6I6waUcHIsf5
+hkQBRemSxpiftZdsgiVYQslMHG4aEvOWx/0fGoHqICKOX17Mho8ql0JpwYNkfylFJbo9pkEcgHbM
+7DM2HdSBfddFPs+CbD6r44oHdtnq7WCU4f8IMmzZnxKp8UiJkBliO+1LluSdGwdV/cY2maSBghe8
+3Wx5+VDkdsXYNw3ATs8FTmiIIUPBPt/jLYLp8kY02ioHVNAqGO5RdveUunJ9uqdSh6CFsbcI8qO4
+SEs9fZrPdnt+obB1P5BkJy0S66weYwIsMkR7DAIH3u+u1Frl/o9i9ASZtUwEEjy2dPT9F+u0/aah
+nrSo/g3OJFNYMI5ZkzpGNzfpqux+FgcJzkBvK5zPtdQY+rhqyeQ/N1DAettR+SeqAfeQ9yOSmu+c
+OYE1JjiB6lDMc8p3npL8Vtj5lUWf9yDWPilJTEsAQ1dURYNSqUzhR4bkB716qyYEXVG2Y9TiVcDH
+aH5EoCsPdDwUQ6JvSrKkf4zaYrB3MxlWqgt21apLuD1cK6ZmwkEKsLDcxY+XhiU0iFa7Q1/qQZ2k
++Mf0U1lGG9ylGt5picWKt4gIylYlLIrODZPS86pA7/HyR3zj6RAA38T6uvGMWWx/aht55r66C4q4
+fRL0RXCqfqx/gz4t+EG/Ec/dW9XHDOhJXw/3JLIy/WTny5ripz/+H10/k9PeHDOMMmQm0wa/jzXM
+n+VmSuaN9b91Oqoz8xkvuVDmNVWX1CTHRjzaG7txYds6k4t4Rw0mDoFkUCZrXNKuUlkA00DJ3e2a
+R3ChHxBS5//oZMzbxal6L0QhAGv5gCS1nL6eA+/jiq7lSaGzDhDdCIHGPQiPnbLpkl8P0GS1OPR0
+oGj+GfSfwK+8RY2oYe4E/qByeFmtCBzgi6yQLepBFvKUXZxCfibUs3f+un3sG3ycc/Y0GYlydQ+/
+tArlLlarjTw76+opaO1JaVx2DFvBrLIE6Jf7YLV19b8r+UCVKLUKdXp2HoOQYESVZh/aN6sAt168
+t/As4nKnyY9A+3Sad+uDu+1CwtUrKX2ytwb1P7YJYolZs6jRYJxwA7Zkxf6thBWf9F0rrvMvRape
+sSv2S2eL4yvJUusHdoMdgMkGdjE3nvGCST5QMIvt09+b31rHC5ZBZBZm/zhdh+ydWZxJD4wIBkaQ
+UYcKEWfnStombKjZ32JOnKu/4/DYu1Q+wsOAgrEa6UYc2qLI+XuBpaz7t/FuvwJqW8e/APqq6Hd8
+2FRsQDZhBZbPBCTx5VXEAxxB1mlaFWi4/GNEdjiwIw7po+izL7xKNoi+qYTgVyq0kqJr9sAeIqLW
+8EStt6UpnsQ/han7Yeahfe6lj3szK6ncHM2DZxnpH8ZRZaNnSbedhzbHBj4V6P9XHO74Q+r9I2Vj
+GnX3ePHeEd7q8RjjaL8bb5VrbyItlAEFd5/sidbjAGB1UV6bi/yqp9EK6cJcUFoCFQGLtvG1AIsE
+c/VIcSFjOqJIcBp/zYe04uxGtFmnZh7AXypQrK9Yl/aCLFsT1uSIQdJEXOyZIJsda6IS8rMJiU57
+Dn+ZeHOjXFxcQK3HGIAxaO2MGi/bdx21D5w2aDLIJoUNIF1Vus4rVR1dZvQs8IbhN4OsHhITmokc
+axy8gDycyfiZl0DiPMiMAR1gO7RjidNyyT0bNAxW/qI2YNog+yb8LoIY7LZ/k/+XjxpLU87UAL7+
+J0uwM92jRUzuOMMZ/xjpqULO9Ybs6WgJzk8Q4Ga59jKsOAe2urqZ+BfYsD+k01X31F3nEPPv1QKZ
+NpMZ8WA5bT+P/Qi8ryncOJj5NnB1RUIk9EsRtPcfWDg86V01TCEeDiuaOBpJVoyTRvwTtLXhMHAN
+voGuuZjDRzC0ZEvu1twmBHzVghULUVYSGIIBTUktdT2BKJXJtNIpJYyXkfsyVqdduS3uZFfioC/r
+OMd6Q/cVhBS8dtVPAzv/crQKJqInCf/2oju48RFCRh0wnDgsB9/LCMKzYtned1PmXsswRYahY6kF
+gB11LahimEbRQY9RtjjCAlyB1dXsLUK34QXup1BucVUaZvEqMsTUMPNh0Aw8tFsud+l4fBqqo48Q
+RWT9YcnNAlm9c0wC9AjTksmD96dQjItoaAOAiAjEfRIvhO2YYAoDE+FeHlpDj0VOTJD/Sas98TI9
+j9zX34OF4SEicNDpinDxJJFIyWTGpm12BPpbhluMNCg/0wgARUyDVY6S2wDG3alTmpNlC0IfNyyI
+EIOD3OsvXCIRDP98GWyY+4DeuHAALP5ePAunCGoQm9xEUiziSORSJowg+RB3seX2TznnIqmC166S
+nS/i1tDOK27mAKWkHkWXofHrpvYH55wXkuDjsEoZ7rd61L88jMjlJWNoeqG42Wt3J4KXo1B88Bo4
+iWG6vMnaaEzJXAfUt0b4yx0XYx0AG9ya5gWYkbm4p9ChDIW67cEsmEJeUKcPASMoeVs03pOmi5J/
+sOs1MagzBBGfWt06Rh+aR9ST+DY50K+rC4u7iun2qna/owYi69E5mT1aWvf2XFjoX2p6XkEiGi+J
+tG9UigOzZEFtt4X5A975QGtBgf62Hko7pqA7OJj/BNqS0vRP4Sb5vbbvWvTzQ7Igsj/Wr3fLg4+y
+dKlt2RADweOq/kYlW7JcgyWuA6gtFnwaR+30AVriovTDkw7T06DQVKs79SD5CAqTLqLWmSMxteJy
+N5hPIagU2rmGorc4pg86uvudJfUiJUweJpKKUZK5u1LA/Q3QW3VwEifT2vs+rQILWYC6JFiMbTlO
+WsO9Gp7Ke8tb9mvDCL+m00Sb5Ahitc8dq9JeOTpWikcVMkANzSlGpTY6jSRvb08lKtpT+zqBl1e4
+Yw17T6888ZfE3fRpR4Y942cV8vy4N9cmXj8zxSlSpPA1InGRuXrFluOncPC/QZ7dFTdvYxHCnkTw
+vL+KlatI46Qoj/05tt32LE8FR3kXCg0mSEO+/5GgmWRKrKLjSxWgK2pJMOZ2qfvBGjpB9/9y8mrr
+923bdZRsO9HJaMPtYt3O7+5mcZ6xrobOZhnTjclslF9eE7oR9PjvWa++9UeUoDm3Kt52BkXkiVx4
+QuGSurR75V+qXZG6eGMK3WgS9sG/zuJf4i4so9U9sPgM1qwnGmb5q8wiT9o10Bs/E5zdD9zgDT6k
+QfIWblAYkAawhEBp2IXd4YNYteB9mK1iPVEQ9fHatDr90kld1Eqz/XmbHy3FUmp1z7ndeR6p8ZwN
+qP9uHsaiC8HDNfuKbVHXZHBhQ2rocmDx7l8xVd7ZHd8N+M05SlhynTyqAxu/F+Et5GQiAvC9Rha8
+AZvwsfvAfWr7Z9nm0IlIPitRssiAJKZjcfI09jdsdLmJVEGjs/Hpv550qQlrG41K6JwPFk3kacYL
+mf2wu4CcHc5VI6TSthx5vvzNRsTU7TRpQzm8O9B0o0Guhgb5yQgf3/m/KiY2mXhzfUmGPHMHLIMc
+jBzObPBgCIHcvpPokuTc8Spx3mLVhqfPWwcTE1RCYVQltRMztJAs0WzWU+vfcHjIMj9nGp8oiJ1e
+JRFhsfjEc8K8tc+mXpCld8WoQjjvWlLIGThQopT20nhmABAmsIfmNR56RLVXP6ChtiS/g2Ycbld7
+vvVA3Mqa4+BsvWRmlnKbpfzRe8brYcmHToDFlpxSvrIeroVjv10IdC8awYHgLA2n759t8XnldeJi
+TryFMUVnek6WWTy1VRyLmheGeYkEcCWfz+BpvuJg/+dVzdaqQZ1hx+JHKVoeKZrJCOE5UtuDEaEW
+qYcPGsKkaiuXP7DngfhiOiqfgg7/tZ9dQpACSZL0+WpzCS/BOV/VRCVeshEk+3aGJY8KOXvGHl+d
++5FKfJViSbNXG7aA6cHtkGUFGQb2PxjdLrUP7f8Gtw0PUcH+y1NSVZiB2wEhjVqvcNGkhimeZqSV
+RkyB3HbFfmTPYrUJk6AD2tSra59JLmNvtHS4p3JaWyNXHdIUEJTofWNYejfMurB6E/brTdUPSY4f
+k2RCGl8HJxahB8AKs+sbm9ZI56n+RG/aPWfBfG2RvI/wpS/uQ3e1zhW0GDRp2s83sWABzWpd1Cg2
+yxWpDDXpzYvJjt7615wZ1SYlvssGAcHz4Fz5Ijk042Tzymnxmyh2XgrYMW+R+4cPfPMnp458qiiv
+ry2Q0bEEr425LAmI39XJx+fO3BPC72eLEqX8BKZZUFsuOuRZs0TqgNdRDshAnsgAPCJdsPjnP4Io
+5JOicDvTRd3X/5EDNmeQsBU1tWkg/fWCDaVZ7gKIt6wJerWcMk44+e77YroFfuo2ZpfzAoiwfe/L
+2JFXigFEAbF01AM9XxDajSlWfLEePR7wmLQylvzUvp6UyvFq4c0nlqsSYuEGc5DgJtD/R5Zdx7B9
+JzD/3VyAWkL79S55paWhr5jM+lCdW1/hBLFxyMs78ZIP/mlb6Zq4HSKNo0tBcZYE3NNU7TEEKpYs
+pqad5apIFs0+doXU+MjrGFwizSvUwAYneVkHExAW8sRYiVV9ta2/cAeXlFjOoCZ08+oWuMLoKVsn
+D/l2ZewXwM7S9DSVWjPMMjdvnKmFO0H/fuwNdZF7hBabaYLHQUbShCpmQwzGQPGSDJ6Qyht/54oJ
+70rT3YMfL4jbJjdCbBgBaohMcLWGv04QpK1uJFj75+/uTlJM10TLg0AHl9aHfawN1nkG6gh+OtFe
+BMYU2g31Nvh+ZAqt4K3dIWq0a4YFkErvJdFlXpTTd5LDrcOXgcjfa//TY/H9S058WcFZzann/5Pj
+c3HuvIcOOYR/uc4QX7LZv5OtYIVeKUDQCmgUHHCMKovrHsnPOqRNmvvlTBtLjVG9UaVtaqhbD1eu
+MEtQ8iIX9nmxqhaVEFbfhCmbg2LWBEHu8mBRsxRwQ8upFQjbvfEQu7p/asnKtJtXE+NGhI8TRerb
+tiXS5zlMi1FsKs8DpxlMyBMCN2Ubfr/xj4HFz/MgkFusdCiLJ/k6vdPDky4fPIX/6EONo72cSATR
+TMdLSLUYfYWbDFdqv02JD2L/H1LDdQJP1arhNj/V1eNOkdSoFYYupOZttRlC9x9Kxdev8Rrfa2lQ
+ABSzA/HDKJ+tY6stXes+WWu1OngrOrRiOplnglPxvYBxbJ8YE/R4rNxW6GSLz/OwSob9IOWpFugu
+PXdSIOmwdC13bgkQth7Xjx09QvKwpiavcnfNBZcli6HaEdY9rifp+4Y+WEK7wxKTD2yHCnkot1JR
+DaQMivwKsKYJ1msLFKnpgj9Vya8rbtpCMDQlPP6EzIX/JvQPKY0QntU6iejKe8/xjblI8NqA3bLu
+eR1pzWzSgtVEPGw/ZMsEE+sa/YnizUjy329r07Aj5BdVXB6DeJtHJm5TeK95ERCjjDXgKdZcYcqL
+C899iUlzaTWSX3jeb3VOuwOV2vYatEfs+Y41VIV7x+J7JmUbjFbqdFbrPW5xCOXoOqNilItebjEy
+MW+ckeBKmlRP46vHw2Qw8BsyPoH7faRTxvMPSA+4cbi5WMKuhwrkn0kYDl50+C0ijD6rlW4u8FPQ
+XScRvb18/z5YhX7RXfr5MH6BDPkEENYKBzsbRmFZQBR5tMCohvw2UjkBeGGcPNjszgt62IEfR5x5
+R19j9n+yK/i5k+nXW3v8gmgW6YIAQ+MEb4v4mIdsjHBn5rFUtl9bMDtkRoIvORTR8s8q02GqwA7D
+eK0QAEmm0G8Ip50ZOiNZK2eJ8fQIGyzj1uxmks9QUBXPUczk/kfX4BmZxNOCgoXbLVsHhS6WyTuY
+w7AHVFjLpZhdeW926TQQLGcVpxX5aVAqoXGCpfSgEJ9G0/A9ebGaI8cabksSJGBrhSGpHaABpcH+
+4W2YGOFPSgH3+lkt0GjgFg6EMdpCqcpqKRK8w4ih5BqQNH23akWNaulC6j7y6Izi+WUjIvTitQHI
+CVOFMmVkTTm+jByWsu52fnvh2h+Hy+DDeB6OLC56gV01iJBhooCNbXguQqyR4P3QW9vxgyPieWFW
+Q+Yoqh1qTpsc0pzdMWluTUafrLce6eNWIyntIktBYl/jYFox5qojENlNPPVGQ8kLoFKqX6+GT0GR
+zYJ78uERGXPEifjVl+v2CjM/NIxC7l4jVZHIX5zLN+1z0OkIO/NmyLhN2cEbIT/meY0FBKDuebaW
+kuHESSdJt6zRWL4imJYtli9DsyA91R1Z4pWAUah0CkSdIY+YQ57GDiNsj5q0JD0pwqNqO5rJ5hhb
+8/6/6LKfsPWFj6MlH2DLs4K2GCOhDcYb+LAVgh6t54uW6cSK177pEh3ak1033f8gRuI7AK5oFuxo
+VkdSNNWO8/E1YWJYxf0W5oqYqdTGCaf7E6ccuSaUoxdrgOn6fpA4PiyPdbE86bo4VMELaqV49xJO
+CiyG08bCKPdl4GJpyOOb3pem+h3HmiX6Cc8py2wrpMYu1BKC1HFEwB/Ijjv6CjBiepXFtA4axbGE
+i9BhkufDWnG6wNAhNkp+IGQtJwtcLCmXjJhYdUyMS1ezCDJR1EaHng5cmPlaxCBHCSigJ8fIfXU+
+VfoKDBD8Rj5m3zWg0z9FW5ZqTWva/KtkliwNIMujceT2tARt5P+NlDRAqVgaJaz6//+LrkxeIgbR
+5i90KFMnWKQ0qOQuWY3MPJSQrOhvZLeoRvgSqp3uKv+Hxxc28C/r8sJfTspmJ5l522Ac07barEQz
+RFfrSWHT79oUksAddVqPI3CPtyltinNfDmO70gWhkdQ3lRhNtJyFNMPSolmFIaeR6K8QxXe05WXn
+pDPCR5udcvLh0wTC9huMYACfoxvtXZ+u5YJxKdVux+hP6taJGudxC9tuKZADBFy0Ew0+m85p2MxQ
+QStiIgBn7BBdaVps4cFLZwMc0+w8tl/sNNrRc+2ImF4iEXNRgbPkcDnJAD3205OFC8V7Exy1m8Wq
+Xh6Y6aSnUc/ygg4ipE/KjUdxeWLRuyETYS/kGwKuavtO18qK0xwz4EjwKyszu+uN45c/Gc6q+4ms
+dH7dBkFAfXp5t9kPNxcCNX6Le03XUU+7VsIk+aW9pIYYrONbENk7AzGqcX+q0RPde+b+cYlkZ8M7
+RgDZ8mgTbj4ps+XFzDeltUXRXF02Pma7eKzh68lii0evYq78tWzg7Y3eon47du92+yvNd1DbhDLJ
+tuKRGHdipHF0Xmcu2LS2PjffkP6StCYjHkM2X9cNcF9MP8FLPVe6tYNw5ZaoTFf5oLNQIqgfv4eg
+UY8irR8bQltqCZH8RHz4ojqQVJzZhnOw9gCFxas6koL6GEElSCKiDh8vUsOLX2HoRTVYRgIQUUR6
+MMxX6YXX+RI7tNJOXqk4kQAI8Hmg396U52LZBEbpARwFj1GbNlCrJSiWv/cW8iOLkM5CyBQU5bAp
+0xYdBUwC2QvO9sZ/DezrqKF7lg8PWKu5Ri7m/Ouxib7ytoX9da/9rM/FcpkxqfS72s6wOTCG7HsO
+mei6WrqimlqRKE4Tb1DfhqH8vbqSIYzqJKborJ+7wBCTqYO+mdZBtL0As3irgOwVR5gXa7Zvts3E
+rZElvAXiT8R1vUJgC67mb5GoP+kgkx6nx9axHHJisLu3jo8ehAdupyXX5cnWQtiDby/z/R/8BHlc
+Ktt4YIGozkFf+4DmGCxaZPUmyc3+CZXxR290/qP3S+Slth8G7Rp9iGslqlQYFO/CuNqklWX4xqi1
+g8AN454qLN8Cv85rekElE+5Kuc9Y30asV3yK3d/EqDLuOuEU8y4s5WmNRjpq8621t5k4K75SPngg
+RpJCAgWR2l1UGblEnuQDDbyU8TuzQm4adelqTdn2jHnCt7DipoKeIpHShKPODeNKDJCCT+YhIwSo
++5t6Df3+Nanmfyz7cO5U/GMeABmWikDZA06d+1kvwoBo+TbVbBbMVmf+odvPU4CgUF8c/jpHXYQj
+WeeJpVvXGt1u4WoPzwlAwC8ghFHdrRi5BzW2h32jxvppIl1FpFfeUTJVXjq6EQVDTYOA4cH4oNWq
+hyB0v83pEc2yfCYi+HmZ/swQ/GcL93K08QB5YHznRcqtuNG9VQfpJGiHZ7wiKZybWGgilvW0PdsQ
+ufM0ybmh480Y22mwCi0F4O1yMGw9+rpHr7j7Aeya1gHd2r5790oAdhIzTlqKn3tdIxY2Lx77vAfX
+SbWHLHCIfqNmJ4j00BqcSaaA3Jf+D/iQfDJXsmvYKWhISZ+mJF9aGtIYLb5c1lOskgEDFteTaQZO
+g2ZjJyjcUTw0mOQ6NKobzcjJvbaNRKF/Txj5Cel8Vt2cJ+/giNqjfT/n80I1qEGguJU5ZcPUPy6d
+MMKRmrjI9RDOOaG6FzHFKhUq0p78zLnhwLKdeopt66z81lhkWVv7ZAeZRzCVufqXEBuRW0v/0oLy
+m939ronOCyspdeH0OcoM1o+iDEatOKeMPFrpeRTT9YN0LRaLU9e3XTv7mq5c19qQyyrVrNjdIaOE
+zAn3y+BhnCJ7XgRX4POxFrufLumccQxpMQGDr32Gmg0duq4TgATzZyuQG1bzwfbZVRNjRlynPMo/
+i2vjlhu42fkLJbNl2Oor4Ih+vNg41r+Y6759MLFcyrd1G2ph4hwohTAZujH0KwzKeTnQShVXa5uw
+ROPiIReGNv+eQmwiggHX0pf2eP/Opkc3/m/ntinokiGoaM5fqerPBOd7DL3wb7wec0OIq4sCi3V9
+XWn011Qom5Om/nbUmbdYX3PGgPjViaRSZ0jtD2T6ileCCZLjQOwQY1+FLoX3EgAyTw0rZyJ7QHzB
+x5/VPJSJMb6q+Kw4rB42gf1Bu7DpqOoVUROl+gS3wqUE8lHzYSBQy6O+YTQfPe64AcfKsYCSCg4e
+b95gSAR9iIkkaJiM6cGhS4jzCMI5tg84LDo2+MrPIqNqZD1lg95RURDeKqbqUEdwDgP51miJRfy/
+DecDsilVy4pot6WOOLpPrdxbVVu44LUr7R8zfhBRRHgjuVdTVJsu0XlZ1ArjohECw6/jZn6GHZbt
+Et3KgrHAWcRv7ByMeNVF/7gAYlhzHSKid/UdYEM4McwO+UsAPbN/Bmy1U5V4NLWsUM0UtdVv9PHa
+fVsSMrbBgj5sTwsJQbwogBhfRZfYskm8WSl2ieszO+U1GmX/KgKqBH3Wb7GJgvuB2/XT1DDIyULM
+K8zys4biBbTiXCf0p12XQbILBAunpd/iz++wfy0RYmqsNG5AkRDB/YdBroFZ2bp0UdJGn7vagZYv
+80HJ/DkHPLt51boNAZ0LsieF6MB2RBgvPzHgFxMkPn/CkVvtPpqkRidEAioe5BfI/AW6Z99pb4yT
+MPgF2/yVfdXkzq3b+2/0wfba/4hxUkyOtTv5VKn3yi0QKgh+IGqmVea0T464awyKmQJUzK5DL0kU
+JfOq9jGewhSNVoWpKDnegrzgLBHbgblxhbWreAVfiNCMrQlRUGdRgiBzYxHKsl5Yhk3Qdpq6rfL3
+eVIe/mmpxFVPLnNBQFkE4ub3moqlYzFhCez1CuI5gDXglcgYyXHNb6AzBHB54MJCfbB9Vfoj0a28
+U/HN+gLOn9Put4zamlzdGP4jHF7BiG1g/Cz+/OkGRqYlWLoCSifttN9VqTotgGwnqGBSSwGJHy/3
+v+2UM+uHohrRudpzvcdwfIf5ORjBuBfXkPJCL1oQf0cA/qBkw+P6M2X4wsSgkiUfk2WxtbLOVMtB
+/Eol1xIFHr18xZBT7xk4yc5S+9wsHinx9iw7Px9unHF+xn/riDHSXVrq/pwEbq+uq/9nScvYo8wE
+WSev9m+Q/7guUENiIH87yHB7HGmIIRrgDFTtk9LbFcIHt4z2yAUcxq0m/gLIqkfE1pZvn2aih/VC
+7ewK9R45UVu87nHc5IyS85okNVqeI5+eyrp8xVl22hoIGA8JMVBhFP+RtevkkwDGhx8zzcl8Hqo0
+AzKHwA1JucHdncmZDk5a0Q+MH1p5ZYK0w6VnLqYn/FGZCuHP2Dv/P4vjIhS9c12dcqHkjWRF3S9t
+HdBQRiCc9FyEBfbNf7V/QBzq7YKtXsFxbkhgr+tpf8oBYHE3+6JBz1iWoz7/DnNSWzwdLlvSRQCU
+/zxdRDJDcGEU9DmRfXLP6CTYXwc4dRgJNFU84VstoeABvWGPNvtwGenlDe0XK23C8CxqToc5Ku7j
+hw6MxMWhYUn3XoKDTKUAGbB6h95ZfWTCBO9HrtPb9rKSF/x+vh6mMMSfIN49aKkL0Qr8xdhSIQKN
+OcU0VEubNMKp61723B6Oh2Uz1fKjWGUf3SrcVJ5kBvWggezYr2Dkx4QLvB9NbgjD5O61v1T+Oz0l
+3Xbj6HICtiN6bSfvxjGwdMiSjXuT0xAHU4hRnPGsMxAO8Jw1vVCqyvWqj3ckP54FC2bR2FpZzEZw
+6AkiinWR6l+Di3X3534Fqj3OSYApg9rXnDLxv8ZgpEuLsIAWFeqzTfkcBRsW30I6kabg/qTY/8hO
+srdt8jztm/1JEy/uaFt+qFmEl6q9xYVdfHJJ9araxuphNn77ppRgIAuOJpyjtuwMpUy8b3cVnvag
+u3Xj6/4tqZeIABCns+Iq848OIFeNr2dPv4t1LbGL/09HbvoXfq+vL7VNUGh+WxPpv+CZxAx+hfjN
+BEk3V4RaG+LJxjY/bxz3BWams1cAl2LtP1RASUTukMXVeyrBAhvYeCuj84jbk28IDnCm19s3GaJ/
+p4FAZ5GImxW7BzNzFJZ+VsirOn390FlF27Ty1RfyELhzNK6wA5mMw+L0Aa+chgDGcy8iPqlCGul8
+zNj0Q6b/72rrUaVYDp3/zpEutJbGN1AbyQOxGb67tpYOuoqX9Dlb1/G5mBO7ioL+yWsMh4pbXHe1
+9P1pKSgFapJBLq08QSGeLE6n7RbSQXjWndpAyjbjadXzRYjGKCfanqGch5ru4fZQfAAsApCfuy0Z
+WNt0IRWuTsG6pFFfSgv9X9hCICav/7eDAorzUEmuZ0d1iTnyXCKRG0OcP8IFPtUsPwss0kanW2X2
+dM0buf2wc6RSw9poZkiKU5+0itqFb08=
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Actions/d3ordermanageractiongeneratepdfTest.php b/src/tests/unit/Application/Model/Actions/d3ordermanageractiongeneratepdfTest.php
index b5f81ca4..801e8405 100644
--- a/src/tests/unit/Application/Model/Actions/d3ordermanageractiongeneratepdfTest.php
+++ b/src/tests/unit/Application/Model/Actions/d3ordermanageractiongeneratepdfTest.php
@@ -1,263 +1,487 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-HR+cPypIq2MlO2aAjYv51dVVNMEP8kLjABUwe8QunPPN727QhAhKlJqV35esMnLycPkHFc6D3ki7
-JMVL56/1QcBHQAFpC+BahjWfGIwiBvbnE+pX12QOtPyphDY1yYjo+9gsSIDEWapEBvNM7KbLf/r5
-M+ZMj54utyLjAQFub19n6hvZ4f8vw0mJx8Lbc4zrai7t3DSV4WSHG74t/v51uVu30EsjTwKoimh8
-+elHMmrBHat8JhZJWzigUifYgIycDane1XgU6ywvEA+1lqlAa0uOlE2/dLTbcTZoQXKX+twdmO2j
-6B0h3bazWI7jganZSyeGkAF+YsGLLL4ZZ3crbPYcZ0bwz1XGLMrNmGnCm/9vir6aynO4cooZSzBR
-coHy8dhserEtowHC+hvytevp5c+1f+jYUjBW38rIAlCFjJUFopwOGSV63GrXKPLvlbwLd4cQcKa1
-trn9mZRcMNyxlbxrog++Cx4DFV/10VRlCJtofvrw2yXx0liXq8blmva5fKR4Mnu1De+7XVTIw9RY
-8WOkRNxc+6FppcdgzkG6wW3Cn5so5tUUvR9Pmlm7vs/cdsej8XwJdzMFI3hlYu4bJHDohtUA+uc2
-J0zATdyetQiqYJlnfP4RDCFXcqEFl+zSR9PLQUYe7oXoAY9dRW7/MI7qVYfHzROTy00JK2ZauZyH
-mVMcvtzh4Rc4tiYcP5r3Bzvt89aI3nlndBjPJGh8a9qwU03oS3LPlPhpqKb8RsGcTY+0ojWZ1Jqc
-BElFxSsCFsg3O8M90qsLFzQgTFcmALjEIAusyHFTUHYg9OhriSkZ8HrYTnyFKliRQkEXEif4ofmw
-NwLZ97ycfGtfBPhKsUFFot8SRRA/pjyXjiHhjv9gCD9y1kQKa20HAQg7QgEqJwvbqfYCK1E/ezly
-ai6gv8s9cpGQaTVdBKVpQxg8FVGaZ33ysZ/8RDozjo4dGliH9Nv2jC8UpgLEsvNl7dGiI91jLTka
-Emxq4n3Lc9wfEVyZVN34T0hlYou7aFi++3vAnsmgpT9S1xTXeB1VfSKQj6gpjN41k26LzqnimP7b
-mIV6ZrXiFemS0R80u5tW93gtn6/Y7W64srun5H+egxHaZwnTI0iHHm8aIVfvMT3QJacgPaj4Dbx0
-ksQcdrQfInHi9GQLrPgN8YWjyCAvxRG0SFNnBue6ctuXpIKgdRvqNtkdaF3xU32Qc1oeUsE4k2mS
-19A2v+7m9yne/W9N+signYWCWx6Uj3ZSOu1mYQESxPvDB5Lx6VCjBHu/ZVBseDp+dYwH34mOHfsS
-6fwjlwhKSLdnmLweXY/L82a+ihn8FOcnkos+lRxV39sbddzK9q16C8Vqw4iq+OAYu6JXblwE7k/n
-NFmnep7KOBYIW0deh7ZdvfGNHy4k5HA4DjqOttUrsORbE6Z5IcaQ6PZ4tzR3evmwFgiGRkJjKHJD
-ie7DhQT2P32ORT59C34cKWE7FRjtBg7J7QSqVzQuRTmq39uz0Rbcn3eg5uB36yeYDkv655FZ2sq8
-F+98BCwXtlWfvLP/lUUGW6rBNzqEiZPze9ZQVMKK1hd2sscu3BArwRe636PdZCcY/SKG6OMjJfeW
-cFFXExd/XkyZJlkJaNeujhM1NA3PrjrUoa5lWEYQrmFyBi+Qoiqz0EIOEuBinMXc6kKSuQek+Juu
-RHbdAQRw0PK7VBLAE6qjzHrx0VAylUZq4inOljISKLra+5MTQZ1ACkeaeOQ/tBAnU/NW5kXcE1V9
-cqUJoT8VslOjkWzbSqovVT73de/18xBUORdX6yXGjPYl9BYoKOlEceh+1Xi0oe0WOgp/xA//F+TM
-dDzGKgaFizNltA5rIuY1HuHpJVH9XfAs/EszdO9bNBba9Mj7sQpQw+r38IAPo54rEGJZWnLmdu4S
-X5YrJrVM7hitQB/HkIu+jYjcw1vGMWnIhyPD0SsH86Bo4aIyDUKEsS7ESuztrSsU1BoLUG5LvExR
-GKjnhVqOfvOuXHih8zeEgc3evtrxRGrhnOudc4A/Wt3GjiHstIreo2DKOtJ39egdYoek0jvnEqvH
-Cr4ac9TMQFBeSa/DUufp1a6ES0muFiTL2jpD3qEOptSEMwxLY3iB3B7j/OOd9UkiE4ggeQku+n/A
-CjciXv0m+eGBVDMZv7XNeecDmoIR91om5pEvPYitltLTWULfOTu4pC2xRMC1A6DMsYiiV/gfMI4z
-cd7igUWUVtbehPaTORe/jFdgHAAx54KBDngAeUjyN+EcIVuoSeOGJ+AvZSRBCOH7zxFeezdcopq7
-LADFVD8ndF6lNEM1OZiZ6NigFOiDU1D7+wtRh27gYqT6A0+mstkVz7QaO0DUyIfY832pdxsNhyEH
-6G7pNRQphzBqW3NyerSSRilVvpVLGrHwLnu035mFmJ8TUIN2mHmuCMBTGmpbsQ1nuA5UhQD/OTaR
-h/jmvYtAXLGOGQwuhIr0cIes/8NT3WoHcp6MoFFuA7F4B01is1HmhTrleE9/dNcTzm8rXtBsj3TN
-RA9gZ7xJESn5zL5aYCxOw8p2ZWS0fPdj9LiL/fZT7FIRPU2OpxaR+mzGHqebTu4dkzOjSUcBPy9Q
-eND2Iac5koBmvj5lZv0gqSC9adLmiLbtPmGSurVkk9nYiJq+sLdqIMV5X41ORjCAj3dB7zwFVqiz
-G5LPHxS28AO+6jjeYlJIXy8t0JEa+9t5M9XB2oNKg8w3+RUuOdhHuMwORSdlibXZZN7hwhMvprFx
-dH4VuGjZDukk8VDl5DeNB2Tmpy0+qWprn8G43p1aBdreiaiRDr8+O9MgkxIlYFsfSQzjhe+lv14o
-SCRyVwM6QXb1cS5xDiICYw23Om2JAwoYSmZTrOvAaOzejCynmMCwPBCPhNw/OWzqYpjN2oJxnn2a
-Rh5urv3DbmCnUAn3PmVEL+l1NJuFSbzeWBSR7OWsirqISW94nI0RysRdn3xNrq/UoqLfaX4SbN4F
-mm/79lU3crTPYHeEoej5WX/K2ot4NBFHiEDfagzfMJEOPFat11VzoVVog9bVjjKaKPSt5/PE9RVl
-YOylW8NDmtjf2KsmeUWFvv66RnQwlSDnGVj7oWO6az26P2fOInwiDmRT7Qb0zcgw6FQcFUeIcvfT
-6OToK+BKjzDhKcCU8xdseXS9k5zvxw5Ka0kB2KCaWX1f+wT0rdU7zc/2BChq+0VGUmAvjzu0ydhR
-hUlyXdy5KajKqYYAUL0YBZS4IevKWQlFWidym/FBicWnGpD8D8n5UIiSHj29doRvdyugrswponrx
-caCFWg7qaolB8GcaXxpSse3u9eTKcA2aCKha9P+FI6FznjcbaUV1qbBEdMuZLN4QDt3ZaFc2YM3X
-WdNCdHIShMS+LmPjQwINlKPxhPp43XuTY1GQt5OswYdOK/mqOeQLAHRTaLsztJHgRlyVOOMphY4w
-JRLDWPUCeabvp6VsMjhui1a+yIMxvSU2WmMbY+HL4Gu+wBW5gVN3JeSezkh8683W8C5WeOienKuN
-ClUi2YJhiFmjeRD6rS7lC71P3SR/GS9bkWbKOqY0pN8jKRoU25qT3zwx6IvjyzupxfWYKDK9mC/H
-XjWL/i7wx9zJAFhRlTgX2pFcKB2vGbFHPYRQfrLrDvZwjCoU0101wuUrzHlcm5X03HE+WaRtJSVp
-XZWB0OVIkErMpw/XSnDviQJrIrs/n3JnLlLVEP6LHzyEJexXnIkOlzmH4Nyt59xt7brP4YWGBGyS
-8ESOHE4sRydl9QY7wCKKlV9UB+FEStJbOefyUTIIypQUFsqDD3fC89mRV1gGAgZdJWV/ui4JWxPy
-MqUSfrOogkcVi/MjEwhZpHr75dV8YACALbDVHbC/rwv1mdGr7NqiiVWYdap/f+rHmtujt+gSeKl3
-2iYT0zyBL8LyZzV8LkXTZP1VrRvD+YIJsg6/tMf4l09nebV/FVWqCJHLIfSIHyBX7Qi1E8owdY5K
-dIv9OoAbxM1lBxHQ0TkHYkTjP6LMBnPdh6cfbaEItviCvMuPoLNni6PoLt/Wp1VI+CJFULFfCOod
-2ubVADkIY1YbX9gH5UsxHr4mvvknDkAj89G6nTEVie26j8gN+Fo0MYOQf5/zovUXYYVyvg+7SV+q
-Z+5Bo4co0EVCzaYgCmsC5bf91y9n7l+mDTY/d2YKba7DHHniFJiLtT/FWbrt/1ElvQV0bz6VZy0e
-SIqv/18L02/9o6YyosYPH9v4XwfKqzUU5xU2Bo2a/KBXl4zV6buQ82ri249dYGC9sVMPrklPYBHQ
-DNja0k8NkCUTdhtkfDpmnOQj3PTSjdC1TG4TWPjos65M67CNg2jmeQbUuZ+0+XLLN5wYg+OheRN1
-3OzbZoeVcuxGiIjYoACwBnYEJWNcJCODFIiHZRxUc2jWuoQu0tzZPL6+pFuPK0NG1+TdsBt3FthZ
-ULkLA/FPW4OQDaUXX3q+O8tqLSb/pjMILk/BrDUsN5ZK8ofDBA4RoS5fcJtv1mJ8it4l2jH8PBGH
-QiTiNJEFs4aqwMo8YxuxeV0RPWtSjntyjzwH/hDzPfhx1v7ChGKgwMnETKi/rC42/O5KGfGisMzD
-Rv3RIObST3ZzuoI+KDcjxnMhYbt6wDVWNRiKidPzyXtVZEi9LFh5ZpBK0vUA4RIHAO+CYI3GJ0Zz
-rElNezxgnvHGC8RMw3WU2zBzJ+91mV9ekArNIFc2NPWDsLQt+vWZ7oCmrVn8GBlDnp2RtDfEspNk
-eqGxoxnhjczq9XRHeHEpa2nG0b8Rm+CBvrQ9idzJfA7An5zlJk785Q8Sculnqi1+9EAeSH8L8brp
-5NdUhL75ES19N6TFdF1tOsUTCLdLJ0+Z5TFUH4pGmr810vAsV/sHjRYvOYPL25qXNnpEeM9MPBED
-lQ0RoBKJhmHbLvKdK7l2v2lPb7d0PVt2RIzZNQt+lTPTZP+cRSLZGr4XI1XTJ3NtPMN/rJd1J0Rc
-8C1WeULcSwRoCn3OpBU3FVYK+KKOxfBjrq55BmnLEdwgFh31/ZwetQ/xJ26ClQAsn2Mtxd9z5dLo
-5VLtURn8v38BcoZifZGI8IB43YGI6hVzplWfwqNfLkz44g4GjyRfuKFLPR0nDQkczzsdZ/CY7eN4
-IQCgaxyffHqwRMXEWxMkgL/VpaV8c7NPXz6GEYuM20NfJEEqe4vclDi1AwrYz+hy9/PWsqQGDzQR
-T42l56R4PlyElsClWx4epT79uDxWKueJ0KwDE8IY5ZN03LWwwTp0X8eP1d+uphas3Ni311N/4Xb9
-KHVCh+7VJXgw6//7I64mFdXJBI7DexiA307ohHfpuUqKq6+r7rvqwdJ7j50g5/SAmbwfreD141po
-ndNlb0wI7gywjlhd6TYo0Zv4rRM7gKmG8LYAemXPq0oejgG+NybqGWsEMnyxYQKTAvVk0jSr3LDe
-FkLQ40LgiIpuwEXl24WUxrRt4i8hCmE83TwYkjUwMJ9a3k6MxNDdWIA/mWw0K594ko+0SnwnRTsJ
-JR8n3lG4RDNg+hWJGOvuJ1cRRqSPyPX36Zj7ztW1PGLgmLI6k7V+u/SoANYuuNm8WZ6nrcMQUfv7
-dudLqVaao7BffykRH5VfVe90k+41quaRoPVj32KO2ewu0TLXh3ikRucVpdcD+QNtocoXxdC5LfHI
-jn6Fse+8Jd2quNIjuNuiYzEC5sDbDK8OFW4TSZVfN08ipqewHsv3Ph941Wj2lIxkHnsch2a+GNeI
-oflKnC7kDNdGXA5C59NFhnr1GL0vQO5O5TnmTOeLsKElH9EYV9Q7/KS0RXpQ2+U9h3MfCHMnxOpS
-/eqLiRMqnnCUVN8ULms/0h0LH/TCGmXql8IS0rc4V0ogmgXRvOIHgCWbdROMpS49Yf61j1KadqBW
-x1QeMZ9g9MD/XS+S9OQLEF9RFvY+z0l7+ho5p1i1mWP4O+dqHdOXj0Xy/3+Nnu9OD+ZQnvc0jxiC
-/NpUHBczqsffNxy2SmT/lYF37+GONULklF0ZH4PudRU5ReSgyBk7iq+CVrQ4J6KjYg+H7wbz4SqY
-rw9ZJbiaa399aTx2ee5XeThfGYy2/mv/ziai9yYVAqjTK8HJtxuio2/b2kjoNEXG8dnJmG923haz
-ZdTZRKamXCaFVQIsBePzcs1JwuJfitfDBeoK+3L4Gwo7q6/16xR3+2NnEpgtc8ZK9MpUnlJmi/S+
-G6L/OtclZktqdHxyY+S66xDPfPXuB1/mAryNcQclySrrvs1dDfOzriQ48XF6hUd/N6QjI4+ECAcP
-a2nE29NTvprZhwu/dsUVhvmjm+tfOq2xlDQidMq45zPjWsOUWcDLkNYcFve2gLwJdW6KIds9+vB5
-loIaQ9EUiR64PNLmij1fahunD9ppyEZ0y/OD3LVpZpasFVTKgEYXDsJuDEMPecT6WOnz85r16lkJ
-jihJmteqLeLP50dvsZsT03PYPLOFJt5BfQcTqMfQlTPEro99N7otEtZBkDeqrxQSamhbx9vtkCHF
-Ic3kGQJVOtNpEfep3PzuaqS1ECIlbHqW543AQpqVQwbJor+At8bFK3gwBAH0r0aLbd+tnOnpyDcC
-BJFjw+Mb7AOtJN4sU77rnptr3xF47wo/YTw1rzuq8b+/eUuErXIGT0npz2xidhaImGsPJ7d73zAa
-qEBq4l5QqTzCRSHSLPUdil3bQql7ANWtLB0kCuNvB0VAFzcge9xPJgV+cIjdW6sxWlQl26drAk7S
-JP3QXBcT6IxwVVjMNTuMcF3gXGT4T+oAxeHbyHM64WaQYQKpS2h0UDhRCf9PbYiHZ6S3IPbFWFnP
-Tdv+4XguUUjutOZgZ/vKmnYo+evhxAvaIeC/B8/9GaideVTQuHpCuA9uX0aachGZEcE/NbS0qrGd
-wBQD2DWfWo6DD/5CxOYvh33DQlDXVBWjEKenTPm+/IhM1jy+11JfQKCQMfGRMERojsue6ZRIj6/q
-svcAQwinWnuJpum6NY2533DlyyRiY4r2YLVncEOSmVNyhUJ4G1f37LsBJY6O16MuMwAhxWv6WxQ3
-5andOlCm3y9vGxQyDD2L9ILTzc3OKH5Nsq2MeNu/NK5YGQaFvfZyh0joU29wai8o8M87jdyk5O7L
-mwsjTMDuOzUZWmOmBWr3/zplmv+wDtM0Sy36yh/8YeUCZ+OUlP+5vzMru0ddOEGIWZ4uMkPixdbl
-Zysq4tN8lqqs0zupS4Ztc50097cMaoBevpaZd6Hg4nE8+nfk6/8Vc5rzZ5fiX+68YXsqWpWZ79xJ
-e28R3rlIH9GGlYemnpf4KfPP7iOVz8Lc29kTSdl/k8BdiYSdCIAk4ESv+DxuUobpKnyoOojsIrAk
-EuxamwG+Ct9j+goAtHL6mxYcbE7GCNout3I0jb7LErK/TB7hS7g2FMRJOicFCoqnm0mLPQXoddyO
-VoxrwKHwN5ert+5R/WH0+KnwKMit6UizvJuAv3VEeEQHFT/DSNSNtEsDvPOaMSZITckbD7++hEHR
-bCBBvWLGY94dRaboCr2gyhjaGWz9RMAZL643db9U/MHho3Fyd65jHz3uwzh1cZErfLkgEHELX+um
-yRQg0Uoo2ZAbngfRDdeDUpac5I/h+uMDJfLU8T0/U6tmX6ub8uGefcAXxdAT2588ywAuvv5H1WXp
-8FzgBlIuqQqiMnU/2H14DdRWbjhmLK76q15xyQAmOjGFD0DvDvdNMtHiTBAqUW0472/WpSwMoS5o
-ApEjIOKtaQYzX2WJPPUkVqvDWDznKhqKPmYniu5oMm3X5Rh/irH/TEybNnkGOkrIwaXhuncPvPXV
-X6EgSmHzGF94ZOKfpphgUgSmXOwkf2bTbALM1XIpAD6opTKBqKeMPBn4WEpnuKZ4K4JbFZF7yJzV
-V8s++A4epXx6Qt5G8a3L3eIQMYsQ2p8gMs/hgvVnit79NIF4L5EP9Y+I+mLhULQqfd6liIdzUBd8
-lvpCush8wBntmtAce/P0efcC+ZNySfG5F/2qW+uvusEW7TxiAjwdfCOWfJsQ9WOzabIn8I/ulfaK
-iB8Z834xsx3asfymQ5aXzVbrHQV2ntoRm5gI2ZSCSYtDHx2PylwydaB56JJhihNSlfW1eKk9qR9I
-lqcirMSLi0G5datm2sDMwsx42LqPTp8YNURRUCecYdHL1uWNAT0MofyJrbQFVVFPiy+mTJTGK2n7
-MfB8dPtu4LQ/KJKdoqLR+Cy4ChCqUAx31jovcR0U+ES2OCR0v8Uky8oazi9uK/5jMBnu45F55uee
-r3OGON83UFlxa5xTFlInwUAgHMNW04xIz/n7pmeWcI4M6w8iSNDuXIzQdfqey28kX2cwdmAcKugz
-LNyz22QAvc0Qy+QFnLeLaGQAxbgBX+iqkQ1TcgLNE2+7sEKJKfU//RjCUyQd2cd4pez8BIIoIZGP
-bzFm9NTX33VfuYQOr00Zcj9vlJWqTO+u9Kq4QTRAcyLaV4Ra/g8hj1yWdOA/bhSAAmvi6Obabq57
-ITJkAgUM4e7LTNJo6RRw0AoZ3M1VqqviA++PuaF7XlDvTBmGM74SS5KhYj4MWT51g5ak3DjujVAZ
-T/B0kdo3NU73BlU/vSn25PphW3gaN4TVS2p2BJsw+Ulp8FIICS/jcd69BGsKjapgSK3eKnNHgqNX
-aGqZ+mH0nwMWGoMDI9Ube2hVwAbLYyGj8ir6lagX5hbBIzxu7fyHcxMEp6jC94ADhjDnVX7/Ww7U
-Qkyc2lMD1FM9aPziEFoqVABR9bOPvVMbexn/HriRLPquGMUwzuRs5Pdk7MAoZm1kYtzDrN5llRin
-QVRRHF6Dglu0jWZVMddgriMMTREwM3wPUCbNBsfOmc59LM2R2JYXxj6Da8e7ZuflbLsnIwQ5GO9o
-B2a7re9dhEtpsq6Yh5lHsl1DLaQ+4XAFRd+UGazVy2uL3WiowqokdF5lyiy/9ir65vOiXL0+IXPh
-OS0ifVsT6W1kQfFTgmJBddTrO17rTvGHIRT4aEGzoevJSo6X3RQDe+Q5paUHnj455suw6WabAy60
-BfT5bKw1ZCOuNsbK/pf47q55AiAqtmgXacHa6INnGMtxaA2cUbWMP2Bpuy8BFglUc1PyxRIG8Xup
-N2e4OfHxhW663HkGsUVpI0g0Md35tWsIuZ4xElKV9A2A3Ml40gbdxkAWamz7gs+Ld9azQiwIvR7n
-JuwW6xw9L0EMvpzM3DlWNZje53dVkueST+FXvgWvZ8sCT2wqyKEhMcLsevFxfrhH7dYoWX0j0BFE
-JawDFiL/TNKWGXB6bqDULYdaCXzww18HSFZd1mlf+vNevJB/sayHYnkOzujL0Hj6o1XqjbSq9ies
-Db+/8IwKP9sFTgD8g5HYlj2wh54wDJ1SXMw1Dy+ZeOCnJQvm4MLN4Jl/KugqbsF8OOcbvRC0M92z
-PjoFakg++XGkJCTj4a7oYZkhqf4iYZEI4If3QU4vOR6da4RwUkA9WEXm4OTDxi97RkdwMpfYp146
-MRnEr8EKeaR8aDSfoqrq3uxB78Kjp8vSm4Pb6xByNWnnESKNHv0K17QN38Iq1wT3SRGYVwz0VUKO
-vYAHngwbV1iFpS2szuupD0M1yuShNy2zvWWt/++rjAEz39W8mYJDBUGqBoxyH6Tbvie4DVBK56iD
-ZRgVoNYt/vhpVxTmeKCtkPQXhTbSSiA9+S8NTmY1o/nh51g7jumb4oJTyHIwbQ8oWdCQrtoFPtSG
-3nnIH991UKaDW54a1mZwDt1aM46HYeUCIKTptKz20TLGZ1+7FTQ99tQh5AC6D5nCg+uxwqosqLng
-gCnjSgu30KwIvmae6aj9lqIRJ25lFY2RgtVxyD/8ONIl52a5EHxgNOdf01ASqf2h2TTKd6MBcmZ4
-Ysofo760S64sW4Uzfw9hxc5EnOuudGGmVRkSom0M/XSc9dnj7Q4e1ytw2JSoyG6qFgsg9GRafOzc
-1lmI8lsSmNjUPCVvr47Q7IjT3PC6aK0/he+ejjasfBczmkw3qPPHP22KsOGo4i4FInUAC/TIqQ7j
-uWBxcCF2jVeYQHZnO2lnRYb8XaRDut8pi6NT43hyML6bD66XbaszjSxtsIdOsrsuVEaLA+4jHjSQ
-SrS8jtD//Q6A1yZQ8OWpMpddIaJbY42EcxYrMaCLJiczLAbaRGfEV82/HYN/FQyV8Atwwis6DuwV
-PcKsMcCR53FE7lcD0Hcu/tsCJB627ujgNIoq0NNO67Dc+bPwEetzn6lgt864OdxcYbNcOJddTnqC
-nnswR6naUKypxW1QRrpGoVJ5mI5V4iHp6Szffw965kLA6kuvPLwgNIjTB2hLzKG0XB1y8FR4BqmC
-t/+JVt0Ja73PPgG1WSaOCy7w72pgZgyBPMwM/EXPEOY7M4UI0pFjEl9irj+r7vJe3l3DvnbIHKRG
-UtVKRMh+M8AcM9kD3OeKJ0ow1DXu4LHliFQYNKyt4wtcus/mEnyIP4jgTjyjuGYTVXQXUTG/j6tf
-ccLr053e7lUTEIAcJeep2COjv2THiMXHZyvwdOyj7HkIJD/4MMKI854noNcdpONVWRVyP7wGDzlQ
-Q72TeGuScMqnA+9N8TAxcPJ2gVzuHb9UYgjEYcGdb+Who8v1FewuB8HJ0hrlwcV3v/xFbu/NmoYR
-NeRdSAEHPMvPrBiqVq8trECIfYywoJ8W8l5KrwWxMQg246jdigBoSsFjGiiTppfLk321tjlNzRW5
-OkQFPN/1l4EhEKDxZiC3+cwXRAZXXk+PNUp42LNTDKth++gNuyCJ0f6vI96YTYKDyMrTVmeDymC/
-tTzXU6yK9YGuTQSvgaHXzZUN1Qxd0Kw9V6jTXmU6eW9SmhZABiJBWP2j9LhYUWt3sLRHkBRZlsVw
-sX7FX4P0FMO8YeGRFPeiEzlk4nHrEzMH3Wiq/oSOXhKguBVzHzXYmjukJ4RiAj2v7u7g80GYI7Mm
-hya+LwbNx69KaYAOV/v04SfBVKijtpiA00HC7AH4S1JaOm/QhmL7yJuNfRP6SA9MmISz3HGQ7Kon
-fTHTm25rP9N+OrS5wmO7Hv8kaGQUBv29ZZPAvwn7I4qVymhGZb3g955mMwibn3BSxnB0WtNMWFtc
-tuUQqRD25ipWW+c0yoXPEvIvsSWhshxgJCHFw83SHiqNKS+SmXp2/ozp3VaCpFm5mE4wh+ixwtUJ
-KWmqh4SJOgg2EvRJFluVT3sk3U301ZHdVbrSnBxIXQCjvMNu9ng4YnuaU9UwGrzWtLa8lintgum7
-Lo2e2zp2gFfA4e40jxvaCYWzmG5Gs/xWoDUN8+iNjRyoO9UTj3/C2tGQZ4Nm5Z2rRIqYmErnUu+v
-u8H9DGFD/KJW6XVK8iMMUIfjkRkjHGBdjbRAhXFXge+MbRPay4f0pV18NjMjvV6s9Oh92q7K7h3c
-xB7LMHjZxOutobtrMun963c7lIE/29x2c4y6SHe2VaetXdGKMUF87QPfv6Hf4gy1z3OPdwKRsc1V
-QFkSKLgN2+ysteVAciyQ3dB4nH7DafmHGmtbJVYjJhSuoyuxxiEEDHPiPRBO7AZEN0+cQzzXtYTY
-Al9MT7XQfV2SeqKMVdeezhWRQHk/fB7lDfjgfrKERVj9DeXJFPPmRUsXro4VzAyw/Qz0d8kZNm2c
-p/jWxq6K7xRqhCmTYSvR6yuZ3hbFMfcsH/z2Etb7zYRQ626ndUlGG5dEoWs5TQKhxZ/QC/GCaqcj
-M9Bc0gPWGl9x9d36dYKc1gQHQV/EPNuWfWqhcHZJAn3BzgXj7eMnS8J92ZkE2dempbfpDex2U2jg
-x10Wmg2xLpXw2UVRfEsfNUhvoC9F9yZ/PHMxxXasmDVekdgUjd5McYnl5YKk2CvnyuzNfR9jhBDC
-pl3qXOSS4CH7R8PAEiaupg/fIAhhmZUqxTyIap3RrMHW+0mBH9WrfxsjCjj9YwG/CKS+TBOfTaga
-yQrKgpaK+YIGE7MxNCl7KTryYsLW9E1SIlvwv4BRLRli887t5oXrZSjvjTS+THVNWU9EQRY25bal
-fGaaBuUwKf92IlNZHLcYBWewVkUREdv3rbioHqPp+QCfO0+5Re1zuQbUDyvl8omM53wnjqwqCXOJ
-cE8TUbx0pNMSeupsAcJ68f/thKp7A0nqehYH4eJU65tL2qxX9qMXsrh1qyGgckI+CwTlVFDo5dyq
-aid7Ae0/nRPSMitXfUFVlSHLlfcDu6eD8HzdTp2NeXUTWADVzttPHpqd6pGSJp0ZAzhx1k1cMJiY
-0IpnYsjBW8Iv+hJM8A2/8SNpVzTFaoW2dSbqfjvzB/ZqUukX+ZJo4bQGZJ9fXTfo/btPG4XtodBC
-bWs7EUj+Lghv0KTRWUV/Hi63BR3YnGvZSOXEo6Mq7lLwIDR2zT/qQty9LeQ2gui3HKaT4xJIn3bt
-rm+7LuG/6fJgZ065f19DpczgdzrK33CKPvgkRMeHD2lQRTAtKHAuv85ebaInReTmr0YYB8SU8yLC
-siSd9KUs56D4zXkVHd39ZamToSSiOWoK0LumT8gNRMGHnisTa8EgRL8h0VPKkDmG+DvGPGrMSJNl
-QUXy3OTk9v/KtN5A6ednOx1SH3YmC3dDHHzv/BAEXC+0XqOEnlEX30tF7+oLn17z700T0WmMn9l5
-Sk9WiIqX0aKqvtqBFOJYr3KQT8Iy1SRQkH/0ryq3TOXOs0cXXgWc6NPyILg4XJuhlMFTJtD/l4ab
-OPKwk2l+ap9Xb7O6AGMYSy5g47hJTmY9i/wQ2fk9UO5exo9pP9y/B8EVr6srPcAyqPpZ9qW2GQCC
-ie9Z8ftE8TeQXr0dVfQDwRGl5IfQ4sBidkkJoEnM7VexNKQV1EWR99pL3PH9fowcbQV3nk9ANhFW
-Upj7xzgUYFDKmvfjlUgSuxYnE/B6cwu8yFqpdUsUfF8TVmikejGpGHCqtN/kP/tmzV0CMYiN81EU
-X141A9SIHfk7utzSlnkHvLquq5R61/CkIoZ1lW3OXlDK3ZxKTnGB7PrcUJi1I1UEC1plOcIHNe4u
-rX5j4ytstdp0vftMq5gzPJl7knL0O4xt7Ej/e8mXH3QlToQDipIpK+1VrSExag21WO+KHPH118sr
-P9wM+UCY0jbOEns4m6rqdZ6JFwDp3sFazVucvmk4dsHjnLb7slmOfPBbd+GuyhjMYojf0p8TPENA
-z+gqfAyVENYASbau/idKs9Huie3sUnnV+YRm7dzcNcXie1Uz0qOIe1pDhDFART9gkYo7sUGsz+Up
-1jbBHquvOkIw637kBOYEmEa426U6YrZ5JDfG3Wp/URdvgEp96IX9XbNYzFqxxbYnSdenabbn950t
-JHYvdKGPCOjUCaKE/++QVRXJfDuUxjDCf9Km4psTZ3dCwbeuPVBKKcMbSDnWmfwhvkJfTAky4scw
-KGP02kqL46Wmbwme0aw7+uF+iEV77QM9aI0VP6VGqqhbOiq8w09+hquCPcg1vkyoRy8+DYlB0d6R
-+9v9kQwKToNs7AF/MFxW1jVsZZD2WXpzJ0LEK26Xa5ud8aLSkjXXE/XivaT/5CFfwRhY228vVIZr
-51kE5rShtApMHfJaPPGry/l/O+2mm/5Teeb4XBdzGGErdwHHwD3YTS1nIiJuQyterh2jnKVqj5y/
-VF/uBaXVY89Pzz8/gP21fyiF0axcBkN5cDEOhsnm9i7IfZ1q37BX5aAf0AwT5Qugo9IEzH9Pr6me
-gDf3yaoLjXDGCOlMDbW1s4shQEvYxmxxhKwg6iW1Q5W3fu7lGDaA/xciKcLzbGIgp2qMugwmrm5U
-mIWD/UWpmBBr42d56yZwVCl4MFH9lI3bBE8jbfS583z0pMl9coQkDlVLP51rO/NRhjDu9v6oYNhq
-oD5fQSbtVG2Ez3Z8Rap4QuvPPzYIVaNJ2F/1PSdQ7uMkYmeZYq1kOeqs1im9ds2N5bRs1WoPR/FB
-LgKPRkFsV/leHdPZj86KaBypRN5TqgDCHtj33ZjmbH2TZZ7Wv2fmz8tmDNvhERSHnYCOujn205dc
-bMOG/1656yyt5snFv1kNS6W2sezpKrqTcC3h19f7ohjDlxkUn29iysW9iQuUrLcVedAGxTPUWM8O
-3E9Qp9FnsJbYGKjL6Bx5LOUNq+LAHBJaj1NS3xKZvZ9MZ7jW3MBt5OYETMPfg3NHv73aRQQY1Ac/
-a+4rf+TntB3caFaKQRLG5Fo2bgFeeTIDhiwuYytCxWeadgfm43B174P1De9j6IgQ0T/ptE4Nmlhk
-uZvhFNqV73wQtIugRRiJEB5ufRskhp0MjX633wH189IOkQF/14LspbQGoideTzNivv7jjxH/PgGs
-ldITi5lSTeLR6NT1pWPIY8C0gxXnhaX/vF4TOF3vwd/taDTRuJ7kZJX/wLz28I6HnkNeoeXIwByi
-Eg7fn5QSmyIenGA2Q+sj+YZ+D9VuRiZqbSRQj2l7HOa8rA5/r4eLOee/UDKtTf4hlVYrCOJ8fH/a
-4H3Be30QDJu7KAocBWkX48Iu6/J00V1+qdq+xCuvCdeS7FIiV4XeCd/NCptHMEAmCWmUNzmFzZG/
-sBdFYb7oZtI+Y7wIcHjlJ6f2DCl/EpWbGBRLme+5qul/zHH9JJOiW7B3nUpHGixqI5q/W0sNRvka
-TY8o4/5fP1VZxF0ZZqoHSexpZPjHzFFoyDKUkdvN7VXKwmszB/yhXyT6PevN8175tul+lCEf2RJE
-QB0mVY6yC+OncncO6VbOdeCXQHiEBIM9RiS0TbW5HSv3iBh1h+MQU1l2gB46gB4dKzm5mjwTGEfZ
-qmCTorbJPPdhCl90iEkqtcyPzpKWzXwqSce+4GKw8xRFPhWZuWw2Rsnd1BVX1ItGMa9riV+SiNtv
-lFpKmsNovlqY9cevzpNzFU5eWaLjBrgx4QA85HmLBG21PFc7w5Se0MfHnwBtSh6EI86W+u0QGhFR
-y0Q7zL5r440LJ33kbnpRYd8Wmn3eG+ryKW3hQbWErKm3y+HFttXd52YsbeXWYYYUDt+pKbFGgi1Z
-yhMao2Ih4Y1FLpUSTnbIGNRozdxtc7SqTdF9mQjytE0a+vFmO77JbztCUcYNrnqtiRB2+OJl9Ooa
-YTRPja2gs9+UGDe1e/ggz5PFAcKpjux8DiTQ9//1RUcMpWBuO41FHeyh7ATVctTNHk9OWgMEr7Rj
-IcccLTPdFNRwNLrR8dd+xNqruz/swCL3QGFeL72kR6kyqPEgdvNXsKxYT6Veawtiyh/XmADvz0yt
-w0ySwl31OqvaTjqspdyVvq5wCWSTTytEZ9Ni8G7wGxebq7dHr9yxS+LwpdTPdKGiHnwHSY78VrZX
-nJyvJdgvsY8Rp/qT3sjaLxh3yRzMkpLFXMw4pcphz8wsqDZxYYXCJsG8oAR6c2b4JDI4qots/TKQ
-+3uI7u3oYQniUQhYEwRzkA8JSSuMBTiYs1Tne1Y4/n/RaQYsaaaCc/AaVL7OqEQUnZZ4nMBnc6Pz
-IpBDJRLwvALx0qmD7zRaH780arITkSDYDzxszxG/1KHo+IaPhY7tigO/GBsj/h0s5gyQhtziTKMy
-pO4aceTt/wHaiN/vlfeUzbxd2B9juJKYERLH/e5GJiuuAFW8gIOZn7ampPsjxS9ritIN9Wgt0RBu
-GgNivqSS380nIeK8Ffjxewi7FIex8bJ+f5s7ztJIYXndYAx9yTkuMYxcchx9HcfaggY3GruQWiOs
-Udcoa0h7V1Eah1xxEZs5QMdN1TTonvRmp65f0yPMhV7QRmd8aFykh0y8hBqWJU7aUJzMdBTSWD5I
-MFIG2g4EEgGN72sjMA6HbT8wC4qcjaFw7M2WpUznYQXVEgwd7DfBiUgRd0qDYBJnTMLpoSJYh8px
-9IoyKSdjxFI9WHQL4GPDfFfg8wlbTDbB+TcDHkQeoNgYPf6yEjY7O8DQ2FRO0If8lLF1dxkZIfzY
-z1qJjqNOPLlSUMc69ESS8BT0Wy4nScKCtUl7SchDXT9bVaI/dnpAH7WbGV72SyTHYeN+i4mxyUqz
-uisANhyisAfroOMM26i9o4jtmPJgNpyn7/dQ71BmFiHlUauwN+UjbMpXXsuGou5KyDjMNVCj/bU8
-pe7sEFJBPN0UQA5gzmfR3DPvadW20I15brKAZ8YtQ0vVDMaHYV0Ubsf6Qqsw6V/wxcYAonDpYGJG
-CMaoeu8YbOIk/jUtuIF1Hd4+5s6XKCVnNWGHh4W5sgf4n0awMf0CZXceAGYP92hSfxiR2Y6hpHA6
-P65iLE+PiRsFyN540bYtNJKlPq1t6OTy0ftc9Ng4tacvo4zfjzEAlH9wFzSNmkNMMpqee2YWh1vN
-3IpNSvfD9qgr4AmRtziE9iPCasAmaarLAakDUfcu1kPKCLgu2fMUBn/4AoJSQDGiVEUobz6dACUk
-hA8zrvGZSGwjftODCK++AV46QwtxsXvFXvgJaKwue6co/6DLnZwOWzZ9DrFH2ZAdEX7dXWtkhSK/
-CotIrFQTfzhU8XrNikUoGNFOn/EYkuwmOgYcBXyMpfgVUOGGPLbv05vBXvEfYfwUFeakpMgVAzU+
-412fFPR/5K6bulS3y8ooTS/C/6T5O0ClIKXb+5rmYLR2aIa0cYw8MScOKSBD2lp9SqOf6x0Zrmnu
-hgrU1gXVDA/LufW/6KVPPD1w+Hk2WIt58ztmEhB+yYT8RUtJlBgPPZPsBzVwa8kN/yED0LyuyZ65
-vu5hr0xo3SDOglXKjdeOg9x0I2NE+Ke99wUgNmmqEciTxbeDvOFXWPSBumpCY1mDj54GiqfQjQ9R
-J0g2mVh/J3NWrvqDZ7Xgs93LAiqbJzHCZ8vugsIIYL0ME1E6mfDmjnDMDErKh+xtm/hX77LY4DbR
-UrghM4qv/DBmijmm5/6Q8hbdymh4bqYgR//QVoTLq/0hROyILZXC25Sj9ryMwa2ZIuaoNdQ0g4CS
-NjIRm6prtR02jCGC7nZqq9TFJSa2QBxDDKriVRnfwvkXLlHEXqY1NINkwmF/0lqGYfc1fB0xmQxv
-QUPPjyeD9ZLnd2cz2aPmaBZgnvh01sL/Xy9sSeUZ1UBIMv53te+3MdEz2wG6r4iSKjmkbW144P6S
-nLR+Y8hyRnjMPVpxGVLHFxC2u3u4ecU5SjawIUeTOH0kREja/pWOOlY3jwBwLcIZdIJ2xjJw+8qZ
-tL0S5ftSuYQjcViiS9OO3DJLZZ1Ft/xcQB6QDEmuyxiTS9qPOuk1ACLiucJ6mEoKvMUBjsJhXdlJ
-yi7KOTmMdygK6SsNHhqk0ZsqRjoyZfpyEpxrMHh/IBBGk3dvbRyoghAVI+aXGuV6J/x6512iDY0C
-iFDDso8XEfq5QHsJBU54HoUItMTZuM8Ai9dKB/q3WwI/Fmw3toPDRK10QvhqhoBV1VX8gQmw/d0R
-L/4fQv8imMJxNhCVa3EeNY3rzgKgBs0GS2J0b1aapY5fqBHLhsd0HmdzDx4sAHvIHNMTjvDG5Z3A
-G9a31S/olM0ihivkWbBHtQd3v2SnGnUTaY9dXmSVhI29RCZNz5zNb/d+N/a9w6FEW3AxTnA0dLZI
-0WfzMmjLjR6eWR2Csff81Bt5K3lDDSm6hJEDoZQ9DdcEJ4qM8oXL8hZb0qjLA94JWTXeQWNATZB9
-Sl44uzcqYZgDqp7TNPvigptGqfEuJZA6hPMi5/fwiTJ+gGYnqQ3UyN74EMtsxeWxemKE3KUaYWMF
-NcodTQTDd+VluLxGIFiv+x/V3EnIPCk9RvkJN2NHM6+kDPoJiQgERQrQP2yRN9V+fsHIBzHS8r5p
-rLKH+AohxecrA8c4hXkNCQClM9OxMkh12x2f9wDIiVcZdKM7/y2zITJ+yKSFlj5rKihlqKrX41RM
-n1vaa+As+8XSCZrkoshOf09ZUyC0sTcpyUEb4639YDramrgh8WYs3sRRKM/BTbuc44MNfB9wlu5R
-gstPJRwl9maaNVutGpL79nClHGJFr+Z9TfstvSzx16AEOAw5O+yMl9mw3pZ+QANOpun1j9UpKF4U
-VLzwH4MS/YSWfKg64msYc2KeMx9g3BJWg6OBG1k+a2EqOXsjGOGGguSK3x3IFxSFZdxUoGxLeh1c
-mQ9freXlbj9wp0/HkecKGY4anY8wPAh7ned8FYfMFw1SGBGucmTKk5Tj4PvDARyJZ/EmhnOL8ePE
-KL19/PHUUDBDyCQdGZLb1De8ynA5N3fAZ7pRrM1XlAu3LAffx3d6xbDOwJPSZC1ouPRtfNCo+FDU
-YVhIf6pR6cklcunhVF9B+8AHkPFqq32WJluOiFins6dA5rN13ztsecUQrJcl0qaNOL71yK1lX5nh
-D62p7l2uQsrpTACtES0Yk7qMWgapTqEY8PkBGhPDwOgiE4mMAultrGsTk0gnd5onlKyWNrZCMiaQ
-EZvxoz079EEgkqSkrMjA7czl8m9+ECx7MZtCZAhAo3GIJXGP1iHKcaJtwwq83A85BVY55XUWFIgL
-4DPP6hu/tOlOlXblWSRKE3h7JKKjfTmmnEdGq4eP2qnnbqMbE/fzavrPnmI34FTUCpiEggaCQTIQ
-yac5u2evoL+R9LGDLgLKMv0TSWfXL1Q2hfG1CUAo1efkSPLQ0LYuBTfQaTSHgDzY17eE4GihQqfH
-odqIyJ7GH9zKi6vVG7mAD0yktNybTFZ6V3wUH8E9wy7k77l/8jwKHwausiboOv3jr/6XmOiN7fef
-ULzykr2AgIZARFRJWI6BRJxxeYZaPlWQDQXJNK2wQdBoTosS1C7kj2ycZgEnoLrWQK4Wdi4+Qy7P
-BE1nYmDQu5i2JXqwLzrI0roDLdQGYMRpql4Za/C/VjV2jOZ3MPQjouoT4SpQMC3V4A2gMId9IBQ3
-jQghDm9nUHoudeSQScsCfegrnw1+zF300j2A0//tPBM7410UTaVPuwCge4S8sfmc+C+eM/eQE8d+
-Mkws5wHN13yCC+0rNGMxwpddO89S+ufWk+0XZhbzs0nwSRMfR/QBh6MS8/s65M+9qIBreDAm+IbN
-YohYZjp0N9fBc7QSffaT23CWreRRJbmCbRXc0iDuiDaPq5e8OAUrQ4e/PdW7JHMKSFfXiR/AmSeU
-Qg9z4ZbwYtFcMZ+Trto+CkweVxl1mpU0YQIFJ0unoYMgg0zYzzNbYS2lpVYaJRRB/dDBWH6wndsv
-2gYPV83a6W0EwKcw64AsBX3DjQLFLFZpitLNkoYgJlI+/MPUFwRyhtKOsGkYMW/wrpahxlUdzHn/
-r/YamcWD/s0ntBiAYPdiRQSUlKtK3OL8FlQpmDS1aTrXvORPL/LcHSnuCBEvfGjcoEtkGuh41YDi
-2R1vRL9qUOukIdASg3PoRctZBLE7tA2Ca1ZFq0C07agHqKsIFNgmVGL7mxP/OUM59w2SiRQfggqv
-N2ueG576qeVtzqOv+OYNn6WQEf159rLmxxvYrf1FKOWtaLL4lSpe2ZxNxoX7zAQmKVZq2rYMN2SW
-MtdG5YCUJj/b0Wb8Ctd1oh0PUk3gYeeBTF6R1km8NjSZiPBj6ugBssbK3EWTdmDR9q/QYsviriOe
-KKG3EoC5M384RHjUgFLAWBCo+0YfGIbAUsa9vzQnhdMZo1+ch22er1bdSSTyTfnK5Oy0JFVuxcGR
-n4mmYypr2UHdi5wIUidC03z1R8hA+eApCrcK+QvBuCXKW8zcOKahLBlXWWP1HALyDVBO64vK7Dd9
-t7+ErMUGGSC0ljWB20pODlBqkIixZFiGw5iQs3GU2H66eFFNjlZ7XFGFQ0Hxk/GjNtti9I2eiiCV
-2EDB3bIZB+GVNDHYtTJUOLtoxgFeqTK2aw687nEt
\ No newline at end of file
+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
+NDdhSr/iZBDl9bVj
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Actions/d3ordermanageractiongetpdfdocumentsTest.php b/src/tests/unit/Application/Model/Actions/d3ordermanageractiongetpdfdocumentsTest.php
new file mode 100644
index 00000000..ff320f79
--- /dev/null
+++ b/src/tests/unit/Application/Model/Actions/d3ordermanageractiongetpdfdocumentsTest.php
@@ -0,0 +1,490 @@
+1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
+?>
+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
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Actions/d3ordermanageractiongrouplistTest.php b/src/tests/unit/Application/Model/Actions/d3ordermanageractiongrouplistTest.php
index cea8ba0c..d2d9623e 100644
--- a/src/tests/unit/Application/Model/Actions/d3ordermanageractiongrouplistTest.php
+++ b/src/tests/unit/Application/Model/Actions/d3ordermanageractiongrouplistTest.php
@@ -1,85 +1,86 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
+8se=
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Actions/d3ordermanageractionlistTest.php b/src/tests/unit/Application/Model/Actions/d3ordermanageractionlistTest.php
index 90877a0e..24cf806c 100644
--- a/src/tests/unit/Application/Model/Actions/d3ordermanageractionlistTest.php
+++ b/src/tests/unit/Application/Model/Actions/d3ordermanageractionlistTest.php
@@ -1,107 +1,146 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-HR+cPnf2Pu1o7roe2uFoeu2drs+MjwieJtWDojj3wLJt4t27AJ+KZnSOiZJU+t8iUZkyz/pglG+e
-K3Bru1ngWJrlNjUR39V1EjzWjVY3gYpA/RKQX+rrUQLuU+RM3YpZWu1qtwF5LUFpi2uu5Pc5P7nk
-MpDCXySYJpz6uMhjJ7yedjXfG9GkmFqwpj++S9vAvqJISPzKSW0OInUED1+qk17dvtEDQGDQYZlq
-j1g/eLOG4oszNxyWx2G1ro7mFOjkAdwyeqAiQXlEkJYlWRzBof0E6BpWlvtNQAlVK60o5HmYg1g0
-hHAnAV+J0BHMzfLqBj4nPtvfnzcyphNN2U0QEBhNLB5CCMPLMMjJf3DP+K9mCgUm5dAS/HZtYozW
-Gtqw46LCrp+xOHM2CoXlhELvFT2DE9oZ04U3zXZcjKgQIsBfRnvBl5rA9nLTQ2s95PK9r0aVehKq
-Rk+v1LrYsgg0IHL+3gt/WcQ0EhEwc3tbB87eB/LRpBNaZ7YFUcRwSm+1XR9GcD71IHOuJM7KiTb8
-hab99s7JA2rbgYwgO9jMnwuYmsHs1GjnQ2eb8qHqy88u2zfYvreMY4aWpWuCHpyudZhhSMYczeP3
-qde1nJqVSup+AneXnYntXXgEve5tSTB4mOQ2dD3E3X8o+SucV2y9PIRFM/RtFXdqdgt7JHp6QtgY
-zy0KUjTxapVsoVSejazC9UYp7mx0DHBQodKl5Fmv0qo5WgvSfQYmDSfQrDx6ffEnctuFsdAJvTwx
-mPn91m6ClcGHRg22bi7l1+2aKgzZ5cvQRUmm44QC/CJsvFU6uhlcwIzCtYQj4tRbnOCHeDtXbLNO
-fuWvA876gHzK8UmA23aBqqHHqQlRg7Y0dcfUMIYROZhQXcXBu0Iuf0hYAe/PwSeciSxr2sRmIBlI
-siRxI1MMijt6Q9noBgR+w4+6omV45mcKKUO1UxBJ4qOzqfyrAHuAqKISXHqOjM3DpE9jRjYoAv9K
-8mKx14njNspnOdfxTRE9EpNgdgmGtqOextR4Tk7qrgAfih0NVTzHqaZfqDZQ6JMNihD8Dha/HLAF
-9s0v0CSRIeiN21n898+KmSsyIu+1pL12k0U8fITgGNiZ81hc80aQlhp9E46v3U0ArQ3PzRU1RuIR
-6Q3CMX92slSTCsLmuGC/yDVKQCNzv2/V/RngJ6KhUc1eawURApr6wdv6PBkltTmZaqnb37OWviJC
-KrLa2Vy6cgLqlXKNEYIJDCATzXTO7iqt2+QflAL5NM/cIUfL4aRax8GFOEyTTZI+CqsY9k2qlyem
-MXomnqfC+szS4Gy1yDi6aLT6JRoQH8pID0qTJJkVAa1W7XgVCd/h2F/JleINz362vK8dLR77Q0hu
-jQ4TTda4mbPzvL9yrB7qz2mOKixDK8ERnqhX2RiFpmarlxpoN6iRR8XNiJiqO96ZHrPsXEVE0UHa
-RXtwGmCQq1QTBtf6MewiVptawMdIR+jW6LamQAM8icjntADvo1ltqRsXyDWxnq0SyQ9FRJ5OLbAe
-7fewjyHUt+jaAZIDQakj+b4qouC+UbScAfV7JSN6bHvL+9zGIz/rAeQOwJyrAJJJTG9ziJgzekzu
-++xyDqalTYoVuEuSpII8r5l9DDoNKoFQD7c315zKz48t7R7149uv8d3op0dVfoJwSp9qRSHcAc+M
-mcfFHzysFtDIQ5W2Az9UN9S/YG2SgqKZyfolgFXSYAh5vIasumG40nXJPgH5KgqggYuFEBCHjA+2
-CIAGiueI/e+87qJqtGbKXbeAV0vpfo52HJKel+nbpfrhPpexg6N9z9LtfjiW0aSwuDeXGRuTimAY
-+/Dv7d5A7FPDn2SCeZU1avDYC+z2QGgGQXjzSbtva0rHRqc1N4ZHkvptyGx6cuMQ0veAqX1DtE/M
-itD5evlfmvBnDsf+kjyecxK7y95+b9xUAwdd74TEa5MpWlLvGZzdaoMK66IR8+1YWsr/ngC+S1eP
-WgTekCnQsjPIqQ5bJdDR9llebgGKrPUUovwPElzn65xy4Y5BK5PpKGHSlW/aDYxjD5bBWmkV24SE
-Jx9wXxlsJztpcanRUbROSg3Z5JFmRCwTy+gdf/Xqq/a4VSfidoC8WJAC350Ixk63zRbaI7ycMw3C
-3Y/iIAfZkSDvxaH9+mdbQzRHPS9+B+A2wv+ucEQRDk7m+vCOila6LMGgkm0Lflf8iKMVmmdFTNz/
-TPymsTpK1ZEp/wW2Yz6j/v5IuoS1WbFhRWi7/LsjzNz3Pk6ONxA63siPJJrcvUhTrh4Ry8Dajgbm
-zJLThLodX7krnt9sgelvhaXsml3pWEQi67/yV+qWgAX0yOaogW9CqMpkcmr3cK4xW+SYWfopzH84
-ZZ574SbNHRRPg/5kP0ShMeHcyk4xNB2+3V2UrzWZL4bS2jTvAqkyW45aZ4qLfNEc7MwMJoR8KQz7
-EdubU9rgpcyLPBxmTWUyz+ZIMLAEiDEbsvZfaeLcc5QNeuZ4XXiLdLOX/6HoCw/OqC8GxcYOIbJX
-Kw8AaJZ0XHieUt0gv9hwev6z0UY2dsbYlhKvqllL+wQnesdDtfj/6vR9NLxnNwBQt7HZAaV5vGfY
-2+vKnuDilg6TnXD2mxiodPn52oUEXafnoaZihfn8GKwMMFzgJ/rliGRKMAn1iQAq9y6SLhlTcYji
-4c1i2BGFzAPdSr/NV7WnvOuC1tPdK8T132lhc9DGpjhml5+08IaV7JTD6juzfymZOnNlGRuL/q5N
-2BFC78tQcm2UJ6UolciYrQteZJMHoFRBNm0ll4cG27g3G5pPpz1ob2gDUPo54y6AM0u0jzbPUytR
-3o5rYM1Tsn4oBWglONo7dkQahdd6/9U8xMUpQn3evepqaZOhRUnbT5+CmKxweieBgmOaMNStwJHK
-EPqBuBEd6VBgedUy/igNSNXI1b8rL28d7GYHx2947Vr0Ey2B5lqaekfZnvZEE6qiXglTBL4Yw5ah
-/GMkJIB31bzLbAi3szu1Adqzo9RUkvM0svOAU7Vm2iA6RQOpql3GP45LZ8wElaKkMOzxChlBZ8mK
-S5SScbEEm7FkUcKwq/VGfbILvTR13NkRfbt/Kr+legG14JGb5y3K6Sv11Bn/Q8HuHPHtEWFiKkwK
-Lq1FA5nOtox22412LDxvqnbpnTTuxMvumIlU+nxg7x93cNBsVqZbHTctRvaoqEpc9MRKJrnT99VK
-0xuBkiC4UceDX89q0qLScFGi4iOdgg+1rIg0GZMF/5YEh+bVo9TphgrKFVMr0nFovQklVCTSQmhk
-EEuK48/Tp7LeLu1g93hKoFVCzKr7AZcYDh+WyHuanyka5YE2R2JsSRS1nqmITphgkd9Fu3afGwNA
-+mj0b0pEdAA9/Ig8u1f0GocHuWuxr+FwQWl69NSqCUbe6gKttjaI39ryvnsAKyDP+uq1pOa2Pu7n
-qUZDkPO5CYpV64KIkeBKS2KoWjIKNERZismPySIAKPH1R/OkE8axb0vmC26/12EuXBRaOOWMKtLS
-bZ8WHcG6rSkAdAKeSrZmBVv5pFSbHVaJUNmO3cJ56s2M8rxaCDzJwX9lcNE79D9F6GFFVBeOdGBy
-tuIJ2/bOMu+zlLF+IUI7usvzkwIvHSVnbIFDSPgTb0qB09hpNzzvEEHBwDXV1ZwCW1UYTaQV/zUs
-7qiPIjDizMA/qb/rpXMVL08mvd3gpeTxgDLr5yVjqndfFVeG7pRrDgowcOTYhvxMgXBmGGIl8CEY
-BNqpVff/+xpnz/ZrC90PCtIm2Z29a9xFyho5DgzkYOTOK4ZhPKhg5COwrnjkp7cOcuIiZggOgG72
-UflZmRA8pU+TO6mxzSeYov0lXPj1gyjef3CkRKIFnE6GK6sKorIq7vd6GXhn8VpdWsJmaLhsiGTO
-la5Lpw2ENNF82+5WHlVVGuLLyunX4aHb9zXHu8Cn9ExZrNjkXQ5VO1isFdwmgap84MNdczPgZjDS
-TODQ4B/cIraTZJ3mLN52bgld64p46mT7Mus3TsE0TWef6f03Z6FXnxbCfb84EWVrgsAaz//qkeRp
-rR81FitzPWjcAacIV+DB2EkSkXJFy/otz6rYSe4+BabD+V3KpPZ8LfUcb3EKCRtRsoHCXStyIN2z
-LdkOq3uSNEe7tRObgGEWl7RzjDsLlCL0dd80T7k1wKHcjvuNMaVdiTKIGwr0k9w45lHC/FTBRyYT
-5nWoE3f9iCDscOS2NVdmywg50XmitK+wXFR20k4jX0c1/U0/9ROxf8yndi5t9vqdWVa36fhxIovU
-aERAk8LCvluxaPQO4+1pzXWOj8lW5szubBjui7jy3eWEKSAKmso/drT5AvmwYmPJQ/zTqZSwWKCv
-IY2VIjTXldJwyW20vhMMCAZxvw/3AwXKBaVL0AGnMqoCg86ppHhhKhAllzhc7HZMDDBqHH6bpkxq
-GU7GwwMyAVsEcMfFosGM91uuHSZ91dY3CRP9T+RlkCiFl8kZGBe6ET9k5BsocZ99jpKWsvNw678/
-pVjsxOaYlJN1vzEezUebXqJogMV8ayj9l9BErQ8xEannsSu9vzld+CKBKr0DUo0x+UM5+YaGmwo6
-kzNETJ3Q6t0FUaR4qKBvs5RTFxiKdJi/fid3h+ne+t+pQW9jX1RCSD0du/W78UTQ74h6GEKNWKbT
-4bzjRoZPIW1vx75SmgdXybRSplIcq1gFK2K6fbqJZgnDRt2P4EzmSV+v0XQHC2JUKx0nsC/uZpe/
-YqKvzPUK4b51tTLyEXIRvbk9aPYo/dqfKBul/l4HzHj99OwBy/NaRmAhNgd7tbUA4GWfrvDqaGLp
-edQWOs+6RV3gZb/C3f2qNEuG/ta6ND6eVNhP+bAbZH4mid0wwcx6/RmHJOfBf3lcPB9MhthI8mI5
-iqv4RYjFAEhU9iLrWLPiu+5JGGC4e78gLqMwSO1YmmGzKTuGWK8GxQuJBxveoAWEo5q1WhXHT+bj
-LkmBlV3zoLmcWYhVYTylksvekLAyKTgSHKhokn3ofcefQeO4vSSRcb/owDort/p0XCX/S86BjgmW
-ygvkzWAyA4Jof/DyICK9J6tkIy4F8E9wXx2pt8M9cs/xwgd50iAt2DoJrTRaca7ZYYiQ4WGfVsr6
-DHf5nsqNAICEoV0zveePKMjdL/SRv+S5AMLZ2EFP4s9ze/X6NqgkGiA5pUQYjcybKav25P7cdxzv
-ujiWkSvtjL//4jguySEGotUa0Vs4IyZPoQZE28zbTtv1UlSapffOFUlATTR7cW2ArXzr+rbNEGHv
-o2J+xvd6coLv3eLacgm6sKkJIg9/bwtdZWZei6YiblPufWe0/VuStmwAf5251+yCekwt0Ofrgb5X
-1RgRnTm9ik16XitCWBvlTqQsgoJcCfGtBH14NhQIL0sRAqDQD9zc0LbbvpAN1N8D7dWbm/76dMOj
-5I6f7v8KRqpg96OowX/uxHdENpk2ol9PDqGgfRaJFZa5XorLrgIQ5teuZCVOcv7TWFQdiJO1ybcZ
-jW+Y8XrtAjeRzjT5q7G+8umm5tVj4WxXnNZTCl+VWGXtaxcrXpIMeG6FAKX+95ByDL43kzZE/n9R
-Z4xuQoD1LzOqWT6zjVGbnUBfh29oQBzp6A+0tfBxFz2ASthX4rJVfMkFMlBSY9VQxI19msTblbvi
-3sh2xoJvCnTS4/Sxjgp+lVI13CAYh35ikZfbC2QHEWwEvxzhEIvlDV5eux/0G7CrBHDOaI4k/3Ou
-jGWXNI824ANplmqwBGVnuv3tlKClpqHYEVsb9VRjic9GDQGPIOLYTotFxT6QBA+OiOeBdDtVmaB7
-ICD3He3pxaOmgf8fCcoZbLq/ZdqhtFm+RtYTmwHNh1niYvEINrEkuc0Xci99sj3/PTl9Y4HXgr4q
-3Xyr996ZntUiEwVW59CVbFbZQbWpyGHZLLXklxvmO6/cff8czznbPnozVFztYS2vnKu8QXbczOLk
-bDOfoaj79LJKt9s/RxIrrz0wV9SdUZRZe83En6V4iqz5MVv2Kel8dCSdfUAHuW+aHPs6iaJ4O1Z0
-z0f0t41daOCpTQM3sMH7ODEbWfIrKMBeMLIPSJblCATHtlUMOs7M20aoHdvT2DG9hIlWgs+kk0n3
-CvfPM4jJD9FeKftM4jeSGmU6nWKUQo/PAMitCew4zbmzRKklAjN+oyy8139yr1LjpDBQj5+7tXNK
-WEkjvh6Zjcn7D4b+sqQ/NS1xBRwr+QZ0NEd0WHKk5/adhdxjD0N/cstrCzriBg4zdYtG6mqi2gED
-Lgfgci1L1R7VJeuKlZ3CJSdf9j1sqvdPZzjre9u0jTCPmpPz28xgn0mz8ILtTpKq+ZG6CIggj36O
-C8liDuMGEL8ML0eBrbE+z9zLdHDLlMYyu3ziqb+svodfb0oV0vsfb4IqZevTXCjxzzrtMNCnPR9Y
-UfWJe/9/+qBD8Xu0ZT6c4gjixRgYyTz0G0xdUbcHHpsvHdjipqR/5E3zHMf/8zScTSpC5jmM2ct+
-gbNZj9Ag2u/dJN2dEqciGCuMyBOm/dLenG9Hzw466V/viHRAgBgeDIDH4tgY5WOj1ilrqBz9/RQ3
-mD9s+5OaXeasIlzMCaJIAl7v5az7RqaZOXiGvPuqKsm0+CjhDjdE+1AXrywpOBEo7Kg007VBLcVH
-ciWeOJPQqVEd35u3wdQfuyaRj39v9bb6I0t0/yEeiNHuSL3Kqgakhc/w0sQaIPvNV8te6FYgbVNl
-J7Exa6OLfazXAU3b2jY/Emr9vaAuX0jBegm9Ste9/MV37EWT4JXjjTJHeCgayvcZ8QmqbRwHeyDi
-sNf+j1BSMVfLHsixz6lsIfw/BIDYyQi6CUso44GSk9h4BtjHtqQPCMBDW+KSE2we0Ipr4eiDrBJ9
-R6De2cYiWaPtTF7s+MSur06fvFWwWwA/ZMNXSQtY519PA2nqxr4J/nFRuhVwtOxk6Q+bMOWd7oda
-K13UYJDc3KIXJuWP1HPQ0gqrS6tf+G1ZIu9W/hQFuH6g1tl14mEa4rRyPArdeS0V9kR0qJKR98Ix
-ob4S2ROr0ALA4BG1YeBTwVXmy4i7tkn2d9aYLxYgDV6LHi7GyDIsVtDWXxZ1AHuaz5cLpAROPklX
-ydD/bwkT4H6T1htOMfAXASm0xP0faPYLVPB3bjlim8Lt0WEGEfzqhZhn/cwoLsfWt66M/OHRn5pM
-f0MFvzatH+PaA/4PfxBsUKKmahPPR93IWt0nHyF2ZDUgyBFXJFUyOkgZ3nVeO08xIB6UNQ8P2PpK
-roHHZmazGyUKZbPZNzf3sTNDOD0PQ3k86U1D5jNks+ivtc5j2vQI3syP6giMWnODH+6d+PIk+l78
-uDM8bbA2+mupFS24POnfMAxF8QRp0fn4hKX+cdISLtFLwouDB03g605NcDS3y0LtxhJM/jPFbfbH
-JRkLassPHyaWV7F9KwZgiea+JfI/IPgt2hrna0+WhwjkU2vBk3k4qq5bC8c+O2r2B7/JCb7y6/Rf
-pNuGG7hqcQcvgp3UGIGpKsAC6PVzaIKbJURug+tlkC5nv49UquNF5l5Y2XQe7jTrPNYyeWeJZ6wm
-hI+/CFy5Gm76kfWM/Frzs8j07bBoszIJgsTETmIc30ru6W2re+c3TaHSjhLUHJiOs8dTAJTalyU+
-hjwEDRBp8LsmEm1faTI51NBB9ls+Z0epR0Tmf4HiuUBWb5wdOw9JmdSsZMUahwGIGeNtVpCc0EdH
-lC3AYehVdKJU32JH6n/htb+tKXS4eEqj8UtOnbJVCdP5sTSfH7+mG6AoldwJlr+VnKW62yL2PuSO
-jxhWiou=
\ No newline at end of file
+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
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Actions/d3ordermanageractionmoveordertofolderTest.php b/src/tests/unit/Application/Model/Actions/d3ordermanageractionmoveordertofolderTest.php
index d5033bf7..a93b5e91 100644
--- a/src/tests/unit/Application/Model/Actions/d3ordermanageractionmoveordertofolderTest.php
+++ b/src/tests/unit/Application/Model/Actions/d3ordermanageractionmoveordertofolderTest.php
@@ -1,279 +1,283 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Actions/d3ordermanageractionsendmailTest.php b/src/tests/unit/Application/Model/Actions/d3ordermanageractionsendmailTest.php
index 97a82870..e2461889 100644
--- a/src/tests/unit/Application/Model/Actions/d3ordermanageractionsendmailTest.php
+++ b/src/tests/unit/Application/Model/Actions/d3ordermanageractionsendmailTest.php
@@ -1,174 +1,300 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
+lka=
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Actions/d3ordermanageractionsetfieldvalueTest.php b/src/tests/unit/Application/Model/Actions/d3ordermanageractionsetfieldvalueTest.php
index 5c3eaf1b..9d36c82b 100644
--- a/src/tests/unit/Application/Model/Actions/d3ordermanageractionsetfieldvalueTest.php
+++ b/src/tests/unit/Application/Model/Actions/d3ordermanageractionsetfieldvalueTest.php
@@ -1,96 +1,138 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
+gc6NuU0exvApslgqlOKR50==
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Actions/d3ordermanageractionsetpaiddateTest.php b/src/tests/unit/Application/Model/Actions/d3ordermanageractionsetpaiddateTest.php
index 8bcbe278..86380c3e 100644
--- a/src/tests/unit/Application/Model/Actions/d3ordermanageractionsetpaiddateTest.php
+++ b/src/tests/unit/Application/Model/Actions/d3ordermanageractionsetpaiddateTest.php
@@ -1,100 +1,104 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-0EwuMVbta0==
\ No newline at end of file
+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
+BG==
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Actions/d3ordermanageractionsetsendednowdateTest.php b/src/tests/unit/Application/Model/Actions/d3ordermanageractionsetsendednowdateTest.php
index ee4e44dd..864225c8 100644
--- a/src/tests/unit/Application/Model/Actions/d3ordermanageractionsetsendednowdateTest.php
+++ b/src/tests/unit/Application/Model/Actions/d3ordermanageractionsetsendednowdateTest.php
@@ -1,104 +1,108 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
+XLKOKkx+Hskpe1h6gW==
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Actions/d3ordermanageractionstornoorderTest.php b/src/tests/unit/Application/Model/Actions/d3ordermanageractionstornoorderTest.php
index 2668f9af..4d7d2d43 100644
--- a/src/tests/unit/Application/Model/Actions/d3ordermanageractionstornoorderTest.php
+++ b/src/tests/unit/Application/Model/Actions/d3ordermanageractionstornoorderTest.php
@@ -1,91 +1,95 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
+MxMrZZOf
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Exceptions/d3ordermanager_actionExceptionTest.php b/src/tests/unit/Application/Model/Exceptions/d3ordermanager_actionExceptionTest.php
new file mode 100644
index 00000000..91cc3abd
--- /dev/null
+++ b/src/tests/unit/Application/Model/Exceptions/d3ordermanager_actionExceptionTest.php
@@ -0,0 +1,93 @@
+1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
+?>
+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
+Zv8325mQvLfblap7kZP4sdG=
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Exceptions/d3ordermanager_cronUnavailableExceptionTest.php b/src/tests/unit/Application/Model/Exceptions/d3ordermanager_cronUnavailableExceptionTest.php
index db982cc3..cbbe0a1c 100644
--- a/src/tests/unit/Application/Model/Exceptions/d3ordermanager_cronUnavailableExceptionTest.php
+++ b/src/tests/unit/Application/Model/Exceptions/d3ordermanager_cronUnavailableExceptionTest.php
@@ -1,78 +1,67 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-J9z88Wa/mXwlMTdygbcN/1G1ow9agwvG
\ No newline at end of file
+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
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Exceptions/d3ordermanager_requirementExceptionTest.php b/src/tests/unit/Application/Model/Exceptions/d3ordermanager_requirementExceptionTest.php
index 8f1b6e33..d0bc9db3 100644
--- a/src/tests/unit/Application/Model/Exceptions/d3ordermanager_requirementExceptionTest.php
+++ b/src/tests/unit/Application/Model/Exceptions/d3ordermanager_requirementExceptionTest.php
@@ -1,73 +1,87 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
++R47sUPf3B1R3yXXxHYhqRMUvW==
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Output/d3ordermanager_debugoutputTest.php b/src/tests/unit/Application/Model/Output/d3ordermanager_debugoutputTest.php
new file mode 100644
index 00000000..28026276
--- /dev/null
+++ b/src/tests/unit/Application/Model/Output/d3ordermanager_debugoutputTest.php
@@ -0,0 +1,103 @@
+1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
+?>
+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
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3OrdermanagerRequirementUnitTestCase.php b/src/tests/unit/Application/Model/Requirements/d3OrdermanagerRequirementUnitTestCase.php
index e2b67001..7875e2be 100644
--- a/src/tests/unit/Application/Model/Requirements/d3OrdermanagerRequirementUnitTestCase.php
+++ b/src/tests/unit/Application/Model/Requirements/d3OrdermanagerRequirementUnitTestCase.php
@@ -1,242 +1,375 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequarticlecontent1Test.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequarticlecontent1Test.php
index a88e6059..00ba47b7 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequarticlecontent1Test.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequarticlecontent1Test.php
@@ -1,76 +1,169 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequarticlecontent2Test.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequarticlecontent2Test.php
index 55a2341f..9a74ec10 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequarticlecontent2Test.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequarticlecontent2Test.php
@@ -1,76 +1,76 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequarticlestornoTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequarticlestornoTest.php
index 93137db4..fd1d6a0e 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequarticlestornoTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequarticlestornoTest.php
@@ -1,70 +1,76 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+HR+cPn3XnkG3P3lBsYfJnxRKngjdFurfz7VVOvcuX0t8fIeCH27l9Q+h793CJ9zWcv6CxnZlYD4V
+YFsq00v3ntSa/rj5ehiSwZMj9XTC4Yf+UjV743X/rUS1Fu9ViM+7KEVQSmfHFu+dJBUipLa40YaM
+XbvVYGtTl/kj3D7g9fKr3WqcmAK3Y73OVRuQrwwV96xtvDwD6kbcYdfI5R7scuvb6NSaIG2zCNk3
+87s8azaKiENktD+wfGIQI8+SdFHDYJ8G/Oc6P8HMeDbwkZJqeisGsMoqiVDeLueOSXshU1MT2pvb
+Pwy9A26d9wsxil+t1k2YZLp8VBMADbc+LoCp0lzG0+RehAUgL3uBz1Xy37A9t3TBZTpIVIEjxx+U
+hXlVat6nwvo4B1HLcX7PE+cTp3s96DgGEtKs9HO56nlAHLDvErJ86KU7RyNrwLct9KJWwTgxr4hp
+25C5p9BQRZ3HbtaaMJiixi/lZQsxVqkuqThhaAAJFTDVxtqeLFT0LT4qXu+NrzOhucGrRM+V0kWA
+whoQ7Mb57AgcvDfzxHBpih73mXODiwkWQejC0R9KmpOoH/bhKM+fThl9ShA5XBScC7p6b9dsQrTA
+q/m4RgvUmKN4sCiDOMWclMH82JcvvBp+DeMhONfPRAzJqNXn4jcnCdN//fdrfk58Ty6YMBqhnx/c
+AfNautdnhN57v7eEl/VNL3ied9Yg5hd9UIe1cIhFiNa9RXe1PFZ3f/6vE5UwlHM8Cqeo+z3sL2LD
+IrMxcghUh6pHAl4jdWPWpRLnsGgZC00729ryDlGEb4N/JGzd4piIpQdk6HJNzWlEQAZPIgLPHFE4
+rOmQc//v6kotkC/TOoJP0tIE5mvZbMPwmI7nHBIZJAE2jMllcTkajlV3BnXQs4FfNC4641ljqeoo
+WUq+9krQlEgiV4hduQYXHF/qwLRwFyTJxJ4Q/vOfLc3M7RleXP7PoEY1TncnsBhLjwsEgG2HWXEF
+PRpH8HfhETu2DYbx763Ta3/oYxEOVysriDMMKGIzux5vrZtF30tRkTRz6grASg2xQeEwGXumZ5ax
+uEzbD5BFooC3PI4VlZtyee/Q0nk4Bc0p9lbuEuuRCe7K7P1YzbXqiNhvKVAnvy0glLQbeGgSiIaq
+H+aJJoBsldhnjKalYwwiEXVOqzhBX2QE7suW9vs25FHSUrxm0B2FSEoYTBfGYbSRndzS1OaHAcaB
+W4OVm8H4WW894RiAqV6sOKxXKZctZcnaA1zHY/JIjv7j4J2ggpYls7/2awEWUV1rPoGXzaozMupx
+zQ+TbwW8P7Wnt1EV6y5mKOiP1B69XialBcgNGLIw0nwuC7opiSgm0mxxkjbH5Y9m/vj1rVEDKIQd
+zouQn6zSrt9fNii4V18mJfENmF2lTud8ZeWWTWPC8gfiB+IZ4MOgJn1SQQzuGYvi2LfihqRSo52T
+yfCqaRQGGmQIyt3ik7KLDc4ziWL6PEvHSgDnE3tAhg2oT3DL49xZqslGJOpvrEJZ8VltnXMMGqRM
+qzNdn7Wljoj0QgkBLyWdcKWIpmzAA+95qqUeZyCGw7g0DcziZsw2hXdFKHaZjd/y33l8cycayf3B
+gn+eXOrkaRomrAsg4feNWK441gOsn+maQKvmB0fWDXSQTHXut1JgCPGhmN1ZA0of3Z3j7A5D6n0B
+94rtJ2SXsIJ/ZHekyb4qYWqk1dWHMc/1XDO1Fe5ay5V4u2g0E0+OB16pZ2vBIw2Wg7HDz1ykTh/l
+0+ZvCqDbRVydtI4/E6+aqc9xzAzAzcC27xfKRDCIujX/rSiuErgS8iiN9yNpN4VUPmxaJtnqmiZ+
+0/c37JzmQD+z6x36RtQs3eidlnycD2TsCuzvvn4zCNk9Eo5W5Cv9i9Y6dGVF7U6LGJLzKJLldegw
+4j+gJIeRuVHohjzjagvRwU1/E9d0hOzqIWCu3W7JK5pdZQAztcODtARwCenT3QNgOcgHBtWvlQp9
+93Xhb0LhVkhr1ExJn1m5PDyNYPi/tYfLI/fN1qk6lxhkmL+rOvHFLVii3nKQD4s/kyUEkOCO9Vk6
+l8PZxGaXEDwKPAcDvJIf+2O3tu/SyKCOXwUvvxcGVeBLKvuJ4fHyIL3cgSpDmb14atkUDS9pQvQ0
+HbBVk/c4gGWk58Y+yDFMjZ3Yam1upXVMo20agHoezCghegr6MHnai+MVvueXmfNAH0Ej9YIm4imo
+uTpBT9K1WbInzXk8jcAvqmxRGbkh2O5yNXQ3RSdRsLQhaMiQJr3I2WYxg0DTvIzalFNGc6WIqK34
+7FUrBz+PCKdAiXXtHfp4pEHn9VRguTDdyuzzJeAXrLyeIV5p5kbywcSrj0Zy8qqia8WIWYdtW5rP
++tCbr98uM5xHElcpt6XDJV8QNEZT+eN66mCxKLr5pBchjqUm4PYz1ZeN2E59XGC/oFsKFefkHb6Q
+zatNu/5R0fY7MAbb27nfqsVZhBskq2ojDIqxYCmLE6+mUEzjZRuvAb66b5/AnMwoIXkVMPNGdQoT
+7J2VJkPvfd+gehbBAMBg6ILEsM2A8kqXTfMwz7rReBASnpg493cH1tqTKtDCw3fOtC2a/09Nv9Ov
+prblYd7nXhlLddh1fgO7FJc5qebzuleU7Nh4cnfOCUVh85LaQkyWfkv687EWRtVpgboETtzcFssF
+ytrjLg5nPeLRMpBa/tLm6XSF0KmqjPuv2i6l1cWVv6sa43ZPcNqZARsR8iZespENbtX04UrUp/UP
+HUDXpGx/M54eR2KLrce7A2ccr4IL922tDdMuP9qpqI3mKGpF5BTFQQbnV9ts1ryXb6BVbo9wEFDd
+Jwjr2+RizkYEVK1qWg5rN90JffSFMyERM1hLT8fesIxboECdxnz9LBPJeOs2gILnYTcrYi8MUTf4
+KgmqZ9Fm51VLDSbnniSZr/I49GW308zUVZQnTBmFlxhw7EVcS8QH9E2dd0e2pvk+cbmm4A0Bu/1z
+TlclX6JPLt2QnspO2+qYXnPAUTRCeeovzevb+xgGsdVwpKRUENToKhQu2G0qUbVnVeUuBT5cj2Vx
+XRPXcnJkU7wmj1RGzy80rS9qZSzWwJxqnrsHNW+zCpd5J4Aa6zaHWYxunqv4xRv7y2hskQnP5UeF
+ZX2aaJ0+sXOSRA/Q83jd22IQAVDZhQ+VG34AhApd5D5HiIvMzFxMQ9lLAlECddYy1UyCC91ebNQf
+tGAixmgCfrh9/tIaWFJfJzMtfKlkslxmYLN/nxqlgO06/DdBkpYjt0IhbCXEt91Nd7ecFno6c/Zh
+FrS77IJgL5l/jU27MB5QAxegqnvjZKX681Se/CmT5gPQVpTeeR+lbJqVBMFWVFwIDGroTOqP2K45
+Te0FhRe8kdby6+0YpMQEGyYeRZ7ZGqpHFySihuZa0VWVJ7qnwXLQt80ZWEx/hJRwL0OnDrIZRJTj
+kr+SDBmQIyadiiFqQR7bwK5D74kk7vqHOCIHEXPVdXdxXrbhmZybEoUlvGABehPL/CSYpH2jyMfZ
+PPWHzqrvme4MjQgGJaZdJwVAPrGRG4eq9WLuzkha4MYIlMJK10FS/xw0vHZ1VOXm7T1HYeI7TVFz
+iYHfQAmNGbgkOtcaL7CHvLeB3K8haAN2QnPUNfk+OJe/cV2l/m34YWkp6Myr6Q7HLfwnNSrT8du5
+wVp/9Fv8zwqh7I5V3ENkmow7apLClO4+WKrUZ1Q8RKM8igwQKO98/+1AEMMfotqp2mvndbTGO4Fa
+ZFcMG+3JDzwJE3PimY52L+iFnKqUcCf3Q/FvW1GSOl/1F+yASMiR4XR/iKBb2XQLKuzRnZXpBWvY
+VCtnSeopfkXfxnmX5AT33MNJLTztUnGPZwECTPEmBunBqZbESzow09M2RibYzt/gXyIkcNHNCXi2
+ha+58gn+9seR5Hp3dbLLd5FC+94qR0IO/XLqrndlvicKBwBSgxiei4lY89ivmStYfror2HnLlv4K
+pAykvDn7uXS75c6frELnOTxyWYiczchpXNp+xA1PpUpdPuSeJeKP6COh7KdrtArbsQl+bpHzoM5b
+IA8iRtokUZMz28oYyFQZNYbxlLVlXmp/FLPAirQcleWVB71oMq31LhpgO7ydV0y0Fy0BWUBIqTBB
+Vh1+lLuxOflOeV7HJ/zq5GlSg+u5W6U05BeDOOMXs1WlMN/PPTt1krH0heu7cXanw8MJA+Y6ctwK
+R3r8Z1y+UvYMMSa0d4ty1lBQUN8VaZMSKOyg7Q7fPYSpg0oz5gQn08HfzOt6EMN6Sg4vispqVHjP
+1KJ9/4ZGVLralvWG9Nk0lXKK2oU+QJ0cRBDJq4NmMn0dcGGMhHX+g+cyaWHdvNzP3EeDc9Tpc7rP
+Pa8uSLcP+ztlzG4kn6PfW7T/AxRb148DocAvXDaXwnyneZ/vrypjiH1WwKYv6haC+KhHxqG8wAXl
+vER+eva2Dkh7sKV6eFJ9Fe9/q0T58bN948r9CUDHD31DbekA7DgVrXag3bWMUMnzzQ3xNDDqmilU
+YX4n5C36uEH+2IsuvV9CI1Yjeg2X7OE8aKCTsrTlBddu5v2SRynch5HGyP7eGhthAH+7482Y8IOj
+C5AUZqfKhh2kgUZojuMCXSb+dRQ0vHlcl987qydPfTHIalfwsDfO8gS3u1NRvQ6LGTG46YO3KVXZ
+IClfwVW11Wy7uz/wk9aBpRhKJq3ZCgQ4p3Blagu7VCAD1fLjspO5YuK1c5HPLftrpcJgtQx58r9J
+Xct7kGAYT1DghNbEI36qBAWFj/bWR6OdVGrrWJ9WOy0ZJyEQm4pzUoKtTlm8X/FbeysCnZVSXyv3
+g44r4DKi4SuEp5DVPnarWqUNoMLLmi8ArhC/FPKmhZQnaXiiqPuGKgcc8/qK+fzOe5A5J+D7WE1O
+fwK33PdLuBnmK/Gh8GWjXBi2KQ5mH5j1ReaMCyEFBpzlWDcPQuUBwz+xOwMNSAY6I8M2M3Fd6vSd
+3x5ND+gW3kIfEKxU+Xm1yRZ/Ge7JuUsSqxTrmJ+vYOwjME/kV5Ygcfw4zf21bnAOBLOEuNXW9ae5
+Vd4LIYrO3mIMlGncqo2tOzD8ruOvzxiKKKrIgvaIoXu/2Aqi3vR0WLgvJlBN9Qoj+XC5UVW5rJ/n
+Ehl/FrhgzPtEibjvxRVNNNDo4ZjEEk8qEF540xkcC0iF/GehaUm7/3vwia3oY6JQapvTtS51/oFm
+CDK/ysEE62664jmcg8OuctvSlfp4QjH0lkRbbrB1NqDTQz1zikDx7ro+W91dNM71BvS5/eRhmjb8
+pUFWmeNiHEyDE5sJZAubXFxmUwtNKVcqnUX0ut5gdzeu/3tosOmAI+ksWNJG8xOvyQD6fCf+cmS4
+YdX3Uu54VfmBYbUQEFDDW3xqKro6rVoAsAhclUjVYy9UlmwSWk1qktO9JxSO6+OON9AeSnherTuY
+fBaJhByue6rgWoEzDiN+UP3mlc4Znk8eVU6qZDZsgIvSQX5ToCmKEe8KVIIugtmtC0==
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequcountryfilterTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequcountryfilterTest.php
index 1bdbd7ad..6da14524 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequcountryfilterTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequcountryfilterTest.php
@@ -1,69 +1,102 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-mLDoqK45j3Q6bl0=
\ No newline at end of file
+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
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequcurrencyfilterTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequcurrencyfilterTest.php
index 0e1cb083..9a6e8a4f 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequcurrencyfilterTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequcurrencyfilterTest.php
@@ -1,67 +1,85 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-HR+cPuQEpN2xMZP7GaTOKv2GxEp4ZsckkUzn6zsG5DVu5SsPEQd+mWwbmyaxx8VMFOTpg0DW2HvH
-MiKQGFL8arHt5iKDDobCOOkrN+qQk52HICDjut0G6MG0GjzEdNWj/egWxsonTSZfJV2aXzoOVgX3
-7sc74CLxqTMZHxJs2vtgKWlrJVfLlan96wKMMIW96Fp7VpukW3Px6UPBv9Nlx3WTYAcIBBDvP1fT
-IjwYw0sIRuMjoDc0B/qHq63ukHc7K9V9l/qhQCaRphauhu6/IygG3XYyuB+TQMlrHus9lT+Xfmfk
-W2rLf5xYnndSimZUx4Z5hdTf0SsvpfWNMdSVQxLktzv8+r+kZErOBs7UxWsUI1BtpyEWb+20Zbme
-/HeSWkC5f7Y+9gOnzREdzx9tQ9sVu/J09m6wbdAmpG7bU96DMf/Kn5nZyxXIE6o7ADd+TmROZSt2
-hVvk9nW0KWTSsE2uY8m/hGZ/qY8jPyiu9bcc/xmv41nEE7/I1izxZVNs15mpmS1iaV1adnmnmtMb
-ANBsE5je7klVpDv721U3LGPgkEwRiFqT0dCZEbm2KDq4eLop2aWYDTx2vKLDZn0B/mpxGpCj1LKW
-T9c2Dfw/LHog9Kk+R+h92RnWn7Q7cDZZFYQgFpJJjZ1bqHHp1K/BDMK8QWXBpDw0r5shQayBjHk/
-tU7oMNGSzYr2IXf1YbYg3wpxE2g+TPENGZOSMAy8BjWJzNXA/F6Fi4NrAEr146CU8w4BdBx9oAjq
-SCADXMzehngz5yNnu4C7nASXS8NOKDvtS8qiU2XA67iIGDPO1T80Iv2qGaoe6n6Np7Gp5VH1JPmN
-U4PtsIobeNB16LbHYkGJuMvTWrAmp+ka7/vUAIMUv77bjwJ77c7PdeQr1UwYJw9ZjhtQpW9blGBw
-o5YCGD41HCSvt+j0wuX+ct1+zvy3X+UKjkVFM+hzLwR+9DdetAAENXLl31o1oiFh0BksJM3DCCgi
-Alm/D3lFY0xnHgfA9TIWDIqNce9ALF2PBFbqQ7RKMBtTITmWC6Xd4+1TUiXU//tysjIA4HRP8xr4
-dbVYce4Ldv0zQq24TQTBSqYMRGRIbuxwg5rWH8M6Il3F3FCI2Hs6QB+957H6hfgNtuFZXCDx1IOV
-tfcgvedrmLU6i6QtIVqhqb5JF+a4UqDENusLg08MFI+74skXIoWjChIcFV+Bp66IMdpes9K8bztP
-ZRovHZFiJ3eR4uh7sS7ckfUqISZwx+i0aYMR3n/hT5rjOhBhPhp5E+A2s3YmLXhN+NrMvjnWqchW
-BjMV8AoPjWbXVCXRdkdClvCQU/Cj3V2nysh09273y3R9zS2D4saoq+2aLcd/WOuWCBf0ypWGo45F
-nhPvIZ91jTVA4oAuGuVM+z/sIMh3EJk+AUMGr4N+fzFoyD7ticM/1YTaK6hz7/mLlr1bjTlhGApR
-Km66L62bG1NGHk0XmZyFKH9VPgJYTNVVHo1B9WJqSs+kvd99H2YnGQ0OZgVJHyOT42Hyp+X5hIkc
-7XDjvHtw4OnYjJ/8M9VITItz2xrA27FyvbW3s4YOZ2PV3iogpSd7ro27NF8cgeHR9LhI1P5n+LQj
-iJXD3fvVnZka2C5/1E2JJru8wxfpGTKkwziVHJWM4PSIQA0mLLliQ60z2c9w2lqbetAXfOvo9i6I
-JzGjMo/HikG345JxWtMB0JvpttVLxUpIGTaPHCDoHNwbGutIWbI2ekV39nxt+U3VNFUFM2ZikTY9
-efFJ0BnDqyd/21C35o5bUir11RkCyu4J0cjFTglJGV21rXgj5z69OmiJdNkVkR36bp5QleOGY9fD
-hcgi9R1XREiOKzGA6btT+yNFfjnaryS1Bbn6TGDfYo8fPlIEeCerzqQ6lFOiaRXx941/RD4BdELl
-AiUCdmLNSXtHB384j1BdiiVyzu970rHyxANo7WK1lJPNd2u2y4XBqzaRT5ElthLS96cyDtxU9AQi
-O8IfP+0rcvWd576GeXL82n3lQ8iEILNq63hFyx9T7bBv5PL0A58Va2nT3/M2OLY2SZiYjplbIyBV
-uC/sExjXCq8QOOpEqQfmH30ChqVb1u4CvBhUrOf0SCYM9vAzsyZ/aZuBiwe672lJLhvSMesOtSFh
-5q+hxz2i5uYn9PUJCeOjWICmx6s1vzyP+4OAegktEA0S5ANjbha8fcSKJ01jeF5DETLS/fOwwORn
-mAIyXMT8wdlfTdyuBQ95Vy/ZyAf4zvwi0szRkhdpGYx+azKDC0lxfXFrS14d2OXGugAPClzyR6FD
-fQ6GdmOVC89hTaTpSDMGlWBFr5RcPFRBQLMEiX3oSu9+azBuRQSEWsY3hIgxDX0qOHfWhbSgg9Hm
-qvDFSVvCOBwKFggZzEeaK5Ma1q6C9nlRKLl/tD7MN84//h+zCkVsy4un9Mn3qXtMN5JHUixy3mZK
-l4uTzkSlcCGOMJKTWtkDO6/L5kuDE/DMgaR7ggRvQEX4pfPS4USAlYhx1rtAHzaVES8D+K6+LXKP
-V98kzCCob9UYLds7/ddguqxSN99NrNqHlnbmajaITCVChbjzFv0vrB2TqZd0mfGsW1dqE6cnSvU0
-0FVL1I5B5Pvphv4K6N1anyjBOFYHq1lq5UkYojUk2ZYb2cqnkj34++3hNNmEj9iRUSjMDPANOxOb
-/5318S8ga1z+8pkpDoFJwUliEVaJGGMTSS8lGIXBES/eAlWoRP/Yywc6rq3d5FKClf3eHYbzHlyQ
-02b8V4UCV+Fxl4TweedbGiSO1L5dpqwJjJUR5KrPdv5cND8gEkbVcD44IjWvvY0JrDbfrp9p+ILr
-KfpzWo8v5SbTxcZPemTUxGp4iOd7Pb2ywWol+6d/mteWjQ1DWjJSCsMMluB3+7e4Z+QmKgMIpIHb
-6aUceEjf5AhyV9UhAgck+4w5r5wi6+wTEMp4vPtM4biq/iUw48q64WogV/4e85ozjczCi/89moSZ
-VyXyRt7xtD76l+FblJDhr1XB863b8VDHM0jLBPuoG9QLZcE6Ei5B8lIMVeOavEe5VcGjkTopwWO0
-DuuTbDHZg40EKbMq0Oh5N40pFU0OpLzO5STV/rj9rEEe1R/u/Gxghd4iUbVBGrP2GVj1oBhHvVhv
-xaRNCPPM5W3sR5vC1dEMDSjIyaFlHwudKMVNXv6t/NRBwcnjIHYqxKIj5dZAJwQFMXimqFI3vss8
-AZFlpZPLwy7vqioVuM03Qyr9DrgzaaKXuqzjmALeA+g2fBVzJld8vNzvCUWsfigmhQQKdEHuFQDp
-ZcRMzU3lgQYE0KjDqpNQnK2Zbaj8sp59VAafncMDSvzAdhc3N0zIW25C4rEDtaHacFA/NQMgACl5
-GfT7ClcwH0kXKv5+Iy1CicEh1trhrZj0BmyJifa1dEx5cTYFl86ok2h9m6BBCaOiRPDDvLx4w4Fe
-saaa6GI9FGmRVwVlZfrCuKeusLeLVLl6hCi24wSaAsebAtHRhr4vh0EDLOVYfqVhJIm5Ss8IMZKO
-W8xfWBY9YwbbltVdCqUTTgPvhW3CouukpozBddMvZFIw5ak3w/orPIoZDkkXXedS4wIkKlwxVJQY
-nm28EydwyzjJMwU+7lCBphpVI7CfdrqC1ARPRXDtoqp3s1Nds5fjuuKrjMlkZQPT/Rbogjt0Ho8l
-lXhXe75xsUMc/YImd5ijwK5GbnqrxM3zuZVQ2eLcXi7BSDXN2d3ituDQDaeAhOw4/nzyKa/No6Ay
-tMD2IuEs81Q3zYcjFHuNSH2P1+0SNm4j3MY/CJ0TSl/1gg/34wG0OlIVHjRxPH8sdxOv7cWfdRi5
-82sy3zM7CxgzVpalQkciO7LomalRPwM1C/oC9IRY886lqY3zWJsurk29qe3SbTXsyPwc4rjzUqAF
-jdMS6ee+rydekdRPOB38ZRIRqjhoL42OAUxNuAu6jKW0WAIDAh+tm9dxeVSRSimWgGdYszHBV9FS
-zKlzElnUvA6IBE5OrpPv9PKlLswp+Q08RRhePQWoce6Vt6ul47NR1t4LLpPapMwOCoGf4sSwyRev
-L9xD7mXqvI/i1GJfXJv1LzjUdsdIq8uOU+7jqWzkWG4AmCZ52kYd1P4C+KCBd69Nl6oBjUU5e3fI
-uViu/sFIX/PzE6E21PxOfr41ZqUo+JjZeE8fkptpHenYTtNwo0EKruff+SK4iEYm3y6TMKjACB39
-YuYEyhLA/hX/uUnvrJW4XFt53yk4HwUnQErJTmtFcQd/4sMyCoYmHibUFJyu0mkyqy+1P5xzVnsN
-gYDqUFa/OrucN3Q6XFY1J6US8PWnYf/xBAMJbai24vp9LI4Sa8Avn6wF8hOoJt0hJjRVzoq6HiR8
-iELOou9SpbReXQqG7PjSViLosa1fMhma1fxDQCLvpUzgtXuoN+RdJknkT6SFjg9h+diRqdg7dU7r
-4UUz+A87OrlkUG+SRyOIUsSHJSu/zWis35TiE4COWXlsf7fj2SVnq3hUuupMLwVT0NSJQRvVE7Gl
-qPr88PtpZZ1VyIbz4f8x/ISGN8aTNT4e40+VdYZuNiYoM3yrsaHedqp6rN6muGb9V/KRiQKCgbe5
-wwgh81K650k1XjuBGbTJQleqKCp/IlPWzA5DJ2cEMsznWOcAjR+UGEh3iGEvkeRBO+MczjFKg2Bx
-e6eQHIDKa7N6SKHOGYFTG0wy3GAMMbTPRXVkuhLEiogMjjKTiARb9M05OFeAVHA9ZcQydMf7hgAZ
-kExcqzTG87vwYYyrK7S2agyXieOfcM5hsCmPApVIUczcQgsxMAs1BcL7KuKWmClqIUtSiZgFgPy=
\ No newline at end of file
+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
+hU8=
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequdatenotsetTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequdatenotsetTest.php
index 90f5413a..810cbc2f 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequdatenotsetTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequdatenotsetTest.php
@@ -1,82 +1,106 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-2irc7IJr+Qoam4g+M0vB0W==
\ No newline at end of file
+HR+cPo2s64E4Ak5qKNUDOCoykOxdtMEGyChR19Mu1CQD6VhD8xwClwuWyN0+zRktsxSBYy/AHFNP
+lknMkVRoIxobJR0qbyujyAq5DT/TWnghn5CovuBkanDs/2yGvzLvknHUIct9zNziwVDD3kaWyojR
+D/ZiaAACLHlJblkiuimLJxdtKP3ICa/zNB0sjHqallMOr/VRup+Sy1joHPfM+bd3f4SviAcWv6b0
+Fnq6A63+Cdi40/RZhWrSZG7FkAxs9q6fHDaUP8HMeDbwkZJqeisGsMoqiS9pFu0epym9iCmAi3xb
+TwzOQFHiAdjphydiy2cjyWTlz9ELTsiN2V8HbjOn/cKKkh4lJLynxNS40egWtxYITxXR8FY0YMTD
+g2hGNPQkgworfEpdoZNXooDQwUpog9CUwm/fXAjmp5D4C2ReTaFjl0jiqwV6sy0RhDsmcAjACdqu
+VgqKTvgWdw4GHx1IhGjv0epAixPHvf3XlmXFf7aa3M4GHdydFaCKnHAHxth2tr1pYivXOofdt1CN
+GwpjO6NKRye6DDUqsg4YiuAXbdglA9faBIIg0YBAzfcLt7ndsQuKkfoaJi7ZXAEOkHExxTG5XV7q
+EbGkNLsOhllVJMca8/Qv1yC3FqCCp5nsE4KJsB9qTRUbbXi0uqp/GAV/Yqlls8eMY44otp6+C63d
+XiLVdVPBh5ZtRohTdtMCpfjMVleINO2GeYo5tgpGddPXh4I8/Y5J2VrMOIYaY+TiP6dePdWYv+sK
+UUjujtFCqlX7fgqxfZ00CLO3Pk6UVc3TA2I58GfzAEuZXZBv9agkuxXYyYeg1BXqKF36Ws+ZvwMD
+xkSF39ARCvL5w1nChHRgaROzeu+9uhzGhvKrpT26qtGlCHR7mhHPTQweB8EGjHEUThgTee/M+uNI
+2bQ7I8mcT2LXPUBblWue1AdiFgF4RHyLk9taZW7BZyFWBu5lSWv0O9aRVfVYVNf/rRVC5WWEUQKF
+RnmY6/Y6D91l58TYsVAIL1DeX8it2/NRIDIVuaaeBCEeM6y+PyFjgo2vzwia6iLPZXnNlTihaLAo
+yfLaJFtNRXQPWYQTAv1XmjfiYEroOo8fQLGrGJiMk1h0Re7n2pGKWHT0zVLFmYHz8+jIKARFnSnV
+8LD3EDHYHxZHc44ih1i5kUOlsq48RhYxWtYBsZ61LLEKlYetrQhD8RUfFQ7w+DTK4zQK9zJcwgQd
+UzqtiR0agRpeBVOIWmzWDCNa46lD35q6s/U6Veo/my3avCfxSpyTdVt8IF4cB5IclL8qOFUMvRx5
+LcVhHXVqyK2vk9g574tPrZYesiNddVX65ngJNYb27NigXBB1pDUgqrJdn5Hz8kQWrk6mUgQUBk8k
+X6p16OXdvHK7wr2raR36GKN0tlFTBHcTNt0GG3FPE7F3s/pRMLY9ZbcWY90GTijrYMqsyhIIdAeB
+HWNgIYNE8p+9YVWUdDF0ZzZk+li1kSHsVnOBIR29P2Rbzha62kQoR8FHmHRYu9qhjWMM66cV0NmP
+otuv7HmltTCZZgmF9ybjVt/WTpS4DrmiI/vJn7KDONSgHHMIcF2YiBoufbHYLE/ErDDlxmLX9V+i
+JQjciNG980AJuTe/f7d2lpVETEReI5a1YzkLMd+Uvr87y2nC4IgVNOtkUVV83tQe+dI/aQRgfmPw
+abqqn7EqSt8aRIWqXI7x/7KF5bvm6pd/FK+b9aA7pH7d4vzHcqyOFSRvgKW6jRTHd8i9ZMTTeBRh
+Enr7j6wqS9TGqBCkbqKZFO+m5bZ75i88RCY11z7V64nDvy/uINx2cbwe86tfowjD0U4+I7WPGDT9
+AHbpQfnt3AV/qoD5ZIFq6tDCNscsvsAmCW2v/pZy5ehmqcxr5kogsRHAu0rNt+6Sqpc3HhA1q+vc
+JfD7FSag9+wrARPECs3u34ltzAKlPQfBpxFHDWPbsVnlJ5qGqkBfeGtPdgEglIJsFNraU1zy3ej6
+0YFlI7SrJJZ8mejlSwZ+Bj+/01ix34I/qC/bo7EpdvEU6FFJlcWkA0z9QTZdkgyNuTbj1X8EE4M2
+k6xD6s8YCFOL3RQ60Qc6inPRH30rsrfBO3070RJM54r5xvAxGvRRksrrjyMUmKs4r4ps8/v4ZJ0s
+QZvN7byEo4eJFeDGqxJ2TozDiu01/o5baAl7DHNPXgiBrHf3DTd2OuBXrsoPWTeczvJNKPOpEP1q
+Ojr7C3Vlsi+3Sgs0xhimJy2bFcAj1Y/9VadJxbRfMSFkFZHl0pMo8unSY8czp+0rFYf+QnnFSflH
+RGHsq7klYg85ZYyzVIcZZoR5IHhbV1x1HTV8yQ3qzxEDIg1ed806YHCHdiuUVEpjQhUWGXt0Em0G
+JwwSTIXFqE0Y9HrhHec95B1jg3ZsiUC379wpwKKoCSkRQOrESyrW2NI1JI09thOA+v9k1xMowfRd
+zmvmhrNK2NSJsXGEqFG4copeybjBp4AIVZGwL0t2PZKIXAktdButXTV7+VJ7l4Xr3K8KISyRnF+y
+6RRqISf7qk0OVtaQilCnO4inDrXxjQzmdi1E0fIo5uCdpkJ++k/PHaWKt9nQZi2qi6Iaxgzg5JXE
+ZdtJVFJCIz6QEDZuNJkfQ57XApbLwo1wHR8llO3QD9FLWa0RhorTAEWOY4SaLNM9fuO15L8jDjD1
+ur3cwVrfXuGGigZWJ6DBSpI6Bq3G7o9MmdAAeFwO/mI9kiNrcjS50PNbHpScii6ISfToOGxyijE/
+mLEsTd6ndpXA7m3/8AKdgfRY8SBCKSW5UwEUzQgmvik4Y9mqggGkZ9UgefiF0u43lAr3SbMqM1BB
+OKkdwW76T9bKNz0Mu806gQnaO7fuT8Z3AVt/Uf0hflNq/bTePXUzr8OUcFqzK2OpLr5fwd9AgLQQ
+3AmH6eu34snTq/4Jx1Krr4wK0eDx3bBoYcQvyM/ughig2KPjavMUxR5RYngvD4rkh+qoZx10ZVUw
+UYviKMz+8iJ14Szp7kXQCVC21na57uxWoIiw+agRqtpoSG+1cRsGRCwsRE/hEL82rXGCIpQX+fzM
+0yIvhUcWg+fSqy0Qu1/hYpHmWrKOz+2oeegCMD/cfrYlZXZ+oyuH2uUiO62ev/0vBKc81Ehj4znz
+TfHduPAolqo3FmSO2hbNi60vJST5flTo4n2dhhCzgdmZdWFksmqO+Ib9AHdUIyU0Q6nHxXn+hOzn
+dbNBtYPDWhTqv0K4z9lYDVUV7AQVArzKbRWeoxT3jrjoTJBTcwvnXgf7X6ilDL8dtvaUleivtZ87
+sD8U+HgB33DBNIiu9sCH4hSSs8HWQqglf70hkvkCJpD/RtoJ17CGfqOTh85M+mJYJ3/8G9JuQLBc
+LdHPF+kLTXnieCVpfOGtjMirWjwARPI0rLfQauO+AopqkiGViNuAZIDfjjcl68NfuAH7FzoGHBwh
+X+rlDdfLbcgfeH3KFOP/oNGn27rB5kMYeMJ4aHflzcYVa5ldkm9Bi1owuCAiOXVrWOJ7YAVlVZMm
+ez5CEvxEmcA2HnQPabXkZB6F/BNq6JBaAgj/3x0NYsMQfI5eaIiYPEhbfb8Zi7uJalUNkfbCvrFm
+5wCEynvR2vBovFP+bEMS2V+otHODOGNhCz1oMdymZ2U8NNxh1f6qPsj3qoljlPmTRVGLfO081siK
+z4PoLPw5i0Z+kzjJ00x4FzNXBPKnurJgjHsRLfYsJNQAcHymDUZDZIRbuMRK3RLPXcFCkSJDmGZt
+o934xSa1so+VWtHodzwW3WMRkfPERRM/jPGnpQK+4EjMQ4LWIbj0gI6fWByijJAZPmFFDq5I268h
+FleWYkBTmpq5gQWx/IJJHGFbrCkDbljFCJ/5H677HsiYuNF/57D55VeW/agmraDv5NqRYqhH360J
+nVLYKx2L+3fTBuok1/sQY5+pHT9CVJzxv5MA03LVT7aZd+kgqzW4MRcg9GoOAkMcouVQ5iIprcGL
+9HHwsyg23ZM+M/1Sx//VSaB4oxLPD2eY19ThI6DOXhdKV4YP9God9bOFWE67jZYoH6qiBXJ7BWoV
+5SjbSWXXW+YdM6T1FwIJAUM8yIn5/irQ05Paj9YAW/K9BuwbSOc+NAD62Vs1dRP2ddHichRWI4Jw
+w48BMuM7xtJJWXQeDj/6GERfe3960khPO/TcDhEL2ArGQQgV/x9PcLFavH9s5SdQ7awwDHSoNc+k
+cqnuKOmbXjRZw68vRR5skO3k2GuuBR52JlZ0widInfnh5kTZUAz+WoPgloOl7Hh5oqVyOjCkMw/P
+pRW22yrf2nQIiqWMdSqRiEGg39mNTmUOWwxuThVzJsEJlIMEIscz3HkNQNEEPrJ6AOot/k3IjoI4
+wu9vozbFruzhbcg2ZaBPeAYiXhN44Kgw26JQEnppY0znjewHdNmRHmEN19VDwmZJZe67XwREzB/Z
+qRjiQQOSROpb8UFLplq7hwYNCuhqqraUFo8on1Eo6lyHazwSLyqzmPYK4zsuWvyI1tz/7sbwe0Dk
+Q09pR7eZkR3Bb0TyRKyfAaXwvDabrM5Sy3CzZS6AMvtnVsunlQlGVVCYNw4qV7V0/Th0bNCSNn2/
+6yVErk77VKVBVvwuGp68WMeZTF0rgTtgzxdQdzyMbFltEPguVsh+7ASHlrGxb4irZgeibfThy1yQ
+DKJHeQWCbLzRNgLVbhQmFjeUIlRvTDTjDbt/i156oaRadj6wSdjxzSX/fdmL9hW/AvB7i8imuNcw
+ZAnJPxW3O9HyZukbKNUZOQH+H/cODEqSe3cf3fYg3J3ZTFDnJvYMfEBtvzyazkeKiCQjQR6M1F2c
+C55O3WQJTn9dD7oltG4UDccxzfqztg29s9BU41Aljr5XZ8kz0nLunyEy+vYrdlZIsMPhNpAhVpQ7
+3VUH0O2qPmAwg/UpEcCRRKacd1avQK25vKOv8p/5cycaNz/fGD5o/zv7icv2Xw2X/nr525DZI++/
+TEvc7e677g8ORv+oiFsHa97ZDXXoEDT+xs4M+vZ6X+SnUkgCVoIFIbQnyOMMU4GwqpdAA0+Gt4EO
+WOhHRGDbEYMdraDgzAfc98q4qc+sOGc0Cc1DHqADLSDXZ5OEv0gSvZ/Qkq/jHG93kOIYDqckbdyN
+fbiqplc5/nxR0Hq8Kssx4/UQuPHI1V0zJa7SAlUFmbE7qAPyo2R/slr2q8IRVr1ytQgE1HBWBfHm
+A373wJKR3DWLR1mVDqa6umnYZ0FIhbxRBOqYb5yY4JbwdR+b2dLLFevzNJCAT1YAj4eCNUzwEfCu
+fz6I8n2ZhqQiL0IC2kogvuBiOAgUQej8J4P0RitPbmiWjLFk+frPiv+zhVjwTj3zfsHm3TVqsEAe
+uFqxzaChOulWD+6jVLxWaz/H2piuZACbnuJwOQgSi/ocw8w0a83+0BTG7uOmsO8mPXUYCWmL0OK/
+t9pVC1+sxIX/MHEy9TANEfVE6Z9B45cMM5m4qsAU/2nTRS3LGT8OZqo3soZPs3q5NQlzRG1ajlJx
+OsjcZME5OUJi4n/IvtQE7uYwl2GFGM8AJZZsWlW8vlKH4k63R7uPaoR6H3qumKCksXD92gbP6zCI
+5KxbAeWvN4O9TIslTq3b8TywEJYxb0ZHImqhvHi8/ReaGpFDHN6dR/WwvQFQ7xEZAlb1B3578gAB
+aBnVvHdPPnGt5E9GzjBrLnHEyS2AeAnpK8Ql7S5X4Zgrom4cPkbrJyWTVvd3jnYQmJ5c7f+l0fdg
+7xjDYiv4uYQcGRk99CrQhcZdksz92KoxtekeWhdpviVJtgtoautonNRuUWrE4HQFaRM4kesm6A+k
+Uk1isod410zt3YYOaZSz/7W7hdh2eaAHex9SoljSajVqMkkRa+zxGallkOR1t8YFhp3SxIBK2Avo
+7SdWuCZ4P+T2HW/bvYyU2oIE37E0wrsYioK+9/BHNIGx8nn0qVxkk665NsnZ31iFUCXozv4vUKxX
+5YeTSrJ9qe2UPoRPIX4b4DPPx9ldAmGjuStS7uU8ZYKSjGn1HVLP1XdsRZAX6XaA2SaiJnfRDorw
+YuHapsIkyvkywrNkUHZYyBIg83OuNdRSRE1fiF8lIXAyj0+J4tP+yShEKjI9A7YCQyzpnzFCqkqC
+OMPms9FefsDqN4UqsMZnTs46U1XXhL0rwpZckSh+QqQOYNgcu4ilKv+h4/f9GPmh+nQZIi7Gc2Ak
+BDhVzKkytgwRteNrimPvk79OhK2HnHgnlpQxNXpJe4YxdV92cLWCZFMhu/wQV4JN0QbPU5onIlYu
+KVip5pkwdpgNuk9ArxivKpJ4/yBurC/42hTJu85jGsPuPPA6laPjY+q4LHBA7h/noXiqsaBOi3jm
+8Ti7snu33IX9olBtHi9cXER3+2cssXv0Gs6CkZ8TJPXB4alJ2Ap+krjcQJJG31f/NQ1EHIpVvkiz
+ut/tMo7b6L80jc+rsv7nOoVU1X0uyiRJRJc+oA1rrC7B+PActFIdjvhPBSSOR0AfiJ5x8/6IeHzM
+xTHAPIi6YfujiT3PX/NtDN36saFCSLHe5Afub8mVYcbRfpBfAt6tTA7t+SaIVqEzL16/jxSA6WHn
+dJjeXUxg7AyrSLbqRL+/+sgVTZ8PgC12HjRhP61x/vph9R1eIh+mxjcUSCR5fgTSmjm9g2nAppLe
+TiMmFvEaXlACgXfqXrIY/OLJ62ULG4oI6PlY84ytirHsZje8FY+gsDUr0Xx8JqDslKeLKDBVCvnT
+w0LXOKgYyglFubLZNPLudKFZtlW2nJaOGpqWMv8NP29iV9EL/XIkZ62kak+UCpvcDP62gylwh4fT
+uIADyAnyWu+9rmG0m7V7clO2QsbqoV/pYnq2cvlyFUlvf29kmhruLogB8JF00I/IrNQD/agfhXbV
+AcTLy1xdwF84yYjQvosH1X9XGEosmkbR7hjIV4WvXM3HoLTj/S7h4082e6H+JXHBw51BD//+GagU
+YJr6EBvW9giEQ4Zb/f+io18O+f1TaE2LPhVaOgb3cLuG3CzlS5n4G6VZwWZPFolAvvdqOze50IgP
+JZRITNCFxWpa15GzgxF9RvtEVmgGXQjohM1EX2Kldzz7dA51Z6YR+Dgt3f3Z0cBwcjfGJME9i5L6
+pO5Kr7Gbd0+qf3CwpxA4kgYwllLM8dQnivkv1Tu9UtlR2wiX+ikmC2eOn8v5Dcj1KTTOhnI7HLPI
+LcwjhxLTh6r7m/eAfKgexKRQjHKvQeFgvM7rfq1nwQeNgCcnCoPe1En6HG7gKvGHAkEVHxkvVtfb
+Lr8vQ1d3eOKbDc4VkQ/9ZPmnQOUoSn3VJ4dTYFVSOlj3+eq7BpfnU2Z7KkOLury6VCOjo69eYs5a
+yjveNPyTRcIqiydHlFh/qbU5FQURNgeXc5G9rc6glwh7eulFrHvdnknJvhw4l7lSOymrzJUUZlHS
+AcUfdhQr25RHq2KDz0d05BcIuawH0HHAfiYeMn7TRQ44clOUXiOPuQcjgSYKrvTw2yKm3U9WVdI5
+6BxOE5lOJicU06YmAMW3WndBM+m5DegcFYodBIS88OgPqm3M3zgKW8LfJDBpL5forW0n/FzZukGS
+xNiHwFhVNubtMQuhC9GU4YXTnNeFgrv4SIO1GKzo1W/rT1ylNaweiSjRCNMMfziHXK3ZDteMiDvl
+7753jtgF+WqcGcw09+a44WmzhVP5ISp8ZIQDqtOQeujLfeJg8Ioo2kWLdyrYYErRvp/I3EwwD1hs
+Ymc68sc4v5zbt97znrH6BRwy1tlkx4bMUAP8olHp
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequdeliveryfilterTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequdeliveryfilterTest.php
index 3aa4072a..8f68246c 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequdeliveryfilterTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequdeliveryfilterTest.php
@@ -1,69 +1,102 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
++M+C9VtU/6iYTkg+xhczfM5iOm==
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequexecutemethodfilterTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequexecutemethodfilterTest.php
index aafaf929..0256094f 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequexecutemethodfilterTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequexecutemethodfilterTest.php
@@ -1,232 +1,254 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
+FQZGiNd86btku3FIgFFTi70=
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequfolderfilterTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequfolderfilterTest.php
index 85a11813..fd609906 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequfolderfilterTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequfolderfilterTest.php
@@ -1,69 +1,102 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
+RjC=
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequfromordernrTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequfromordernrTest.php
index 1c6e54b2..284b0974 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequfromordernrTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequfromordernrTest.php
@@ -1,67 +1,83 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-g6SYTG==
\ No newline at end of file
+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
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequingroupfilterTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequingroupfilterTest.php
index 86f2fd0d..3bf286c2 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequingroupfilterTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequingroupfilterTest.php
@@ -1,69 +1,102 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-lEFLWUmAsFWr95dQXqDPMY669d41WAqQhr3t
\ No newline at end of file
+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
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequinvoicenoTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequinvoicenoTest.php
index 37c1723a..7f2e9dfb 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequinvoicenoTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequinvoicenoTest.php
@@ -1,68 +1,77 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
+hWx+w7XC6zFOQbhSAGI64VtorDT20L6v7fj0O0==
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequirementgrouplistTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequirementgrouplistTest.php
index 8f1afcd5..24b4e006 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequirementgrouplistTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequirementgrouplistTest.php
@@ -1,114 +1,115 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-zkeGxiJLbAlyRPtqgV4tpRg1Xlbw
\ No newline at end of file
+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
+TufcgtMzwLG=
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequirementlistTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequirementlistTest.php
index 440d3350..f9577c6a 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequirementlistTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequirementlistTest.php
@@ -1,219 +1,244 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
+UUN4+Im7w4QZHJ+iCQ/iB1HV
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequlanguagefilterTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequlanguagefilterTest.php
index 44e5892a..bef30264 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequlanguagefilterTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequlanguagefilterTest.php
@@ -1,68 +1,99 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-uFS+knEysy55adi3Uj3ifNkCpy0=
\ No newline at end of file
+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
+yaiOgwkXwpSfFNoHFLgLy+2zlDuLJBC/4+wK
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequmailregexpfilterTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequmailregexpfilterTest.php
index 3c7ed1d3..b9a63da4 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequmailregexpfilterTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequmailregexpfilterTest.php
@@ -1,67 +1,84 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
+2va=
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequnoarticlecontent1Test.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequnoarticlecontent1Test.php
index e2cf1638..510a8967 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequnoarticlecontent1Test.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequnoarticlecontent1Test.php
@@ -1,77 +1,138 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-W7n839PdbWyN9MPg38CFbB71a4L4
\ No newline at end of file
+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
++0==
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequnoarticlecontent2Test.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequnoarticlecontent2Test.php
index 0fd3b293..59056022 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequnoarticlecontent2Test.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequnoarticlecontent2Test.php
@@ -1,77 +1,78 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-HR+cPw9E5I+16Eu0N8M033e25iaY0MmAL61Cd/arxqieAjKrdGO9b/VAnpijUUmBJUH+z29JcV5b
-az6p1hvOPJEYeXQk6HPgwyWAEFLgR3TN0SYcWl8/zXYQScIK5Ra3oAZN20hA7kPrFa/kTluXs0My
-FzYgtNP54r/MDG6urSdgezUC+22qN0/sMPhUJGXaA21YSGU3IpikD3KKlxZOpXeh8RFgLHorHZdQ
-Xr0c4bfaBdfQq04FfVP9bb+oCsxUQXPPLqpLdXlEkJYlWRzBof0E6BpWlvrxNzUGQCpkcKHrthg0
-BMAY3lOrs1o5b5JaPEypU6FIkXQhQzF081KaFrBPc8Du8UNfNgFo5xrGgVEgIgLZHih5i9z8ZWa+
-ReYJQiH9zdghBCs4q91CNXddHS25gRIDjJt4ZhqVqbL7wa82iK0BnRKUmmTF79Ai/AT6J/03ZbdG
-lLwj6hbqVO/yfTwHsblfB4ecHzrihbyXh0kLDYANH6KTe9IJuaM4jdMqVkZfltYAv69St2QfR9fN
-h16V2dcbsZceTwUvBsYWhf3ss3h8gjCtap2LjUr8Yc1ETAaMNRLMoMeNnn6Y6W/spGSKebx7P46k
-PvkiQ1Iy48OWgoYAACP7QPv5bJ1rWz+EhoS8hRIKO9vDOxHp+J/mFQdpD1Vpb57f1lxaMpWBpJWZ
-V8gDIX4ZlX+Q20AlyIDqrwr+4Jyg95QRWNFI9rjMDuFPKSpHGPHRYT4BGKrOnkoKQJKBgceRHpUD
-mj1U9fCMZYL/40DpkQpihnhbtS80VdWEXRPIcflmw66sdLchDTnCbKybl+eVd1Gp2WeOH1zkbcVl
-rN5Eryh42gp2gBaCCNJziK+w8urTlLI47OvNKepwH0Wko8jkzj4m37smR6GtRkHyQ5RhYf7rg4NK
-u/eQCTEyAdWW447vZRHmqqr0QCciKRkzlo8/5XGWNJM5vbL0JyTVqr8aosBHgZ+jRUqcV5cTm3w6
-ifEN7WN3mvk2wrymHCwzCfbxLQ8Zvt7DrHe8I4WPRW+RR4yGHuz+uUczW0MWPskRHQ3Eh9zyE6kc
-J8xHd+r7pYA14WHch/CIpYmoWuilerB5SsRYaA7U40HQymYwTNEOrSmKUfCWN9ipl51sYQX9zaMx
-Sm84J4SZkTXwLcklUmZ0v5MmKPXAlJTsC3NuIfXB1QUXfXFxmvL8TdGL6+BzmTs2hOKmRLvMk2+n
-QEz/5p8WhuPNMlfT8OYCY33R73azgGVQmmbJ8wtjSpHLwEm5pbRmPwOokdq+SuEdZu9IxiHXRDk0
-TbrbSo85MIhiY2YNIqBfmxPRWHSfDDia56X6r1AqybKT6Pve2xjgpEZU4KlvMaNoreK1iwO2xJqC
-CQND1vQsXn08hgYuYQDch/qLoOXoNJKNwdykmJXCT4H/6rRu9UvYsp6Y64JofcWqxr5x46wzyPHo
-Qckt6YQHztMpP0HDwP7S1m5qx9fzvKQEdgHzKyL8KmrEJlKklSiFKXm2lw6V2yqa9B7XRMi1mFGa
-TtNYUwJz+x54JsISeuy0FluxiNza0jQv5kPaNlvq/b73b7oNpwe3m1YgLpUC6B0MylliNsu1Ccbl
-tHW2DeYoX6UlCCNnvqgik8ZZCLLus7Q5+D45oHmEX1cLL9GTDWRsJAQfX7nl7HgNk9P9uvQPwevz
-iWj2tlJt8eS5Zny1rWqmcmjI/wd9uTDPtTj8TVMe+141TZN4oT9jdMLk7uNzVleVYCHSO7A517i+
-I27Td+ypZLWcY6og1O5B0JbKKq1BPgG2LqqS636UFPohq0P79cqKeRF0XAVQOFY5qXj3Dw4kDjXY
-awLVYD6NkTgkDrwvjfx4K+kHjmFghjIKZ7Hk2Ako4MmoDum0SvpwB6e5HV8OolmtKLVnts+e6L9r
-e5TByxstnxB+O1CYZ+/qXDYH1tz6GrzFFia0jXnliqJwojDar+TB5FDgwUAQ9NYDejCsHMo/xjfV
-A4sZgVJnUvbJ5oIjAdw2k3KdkQTiXdBnrK6Y2RqtlKHw2gt/LSRdm5UbPXIvXd+/qCO7WRN1QHLC
-HRJI+iwIIcyFj5lLTTBgMAtpCvP/ReRGHoXYBlI/a/tPZVjIPBBSgNVyK8ysf1Ut+zTOaUs4s+v5
-ngSGzxn7Pz7WYUgdpQEscllaFlwiOs7zxXUtpKDOYooyvXdW3cG4wwt2WY6aUXVqdG3j9Nj/PJiJ
-pvlAdKcwhZY8QGiUHYQ17I5W8V21n28Ea9iKb86UrOE77sOrgXzvAwDhJui4XJlxu4g4mVWLiunL
-RC/lIm02n7cZWFAV7Ga/iupkLOBVn6Wr+yXH6nwDf6j3fzGMwo65LpOAHbRoLShtRl7bWbZqE+Zr
-15EsRYhcwWbNmDPAo2HAU7J1rB+bApz9V31FMvHx4kNBiRAj3HJqso6qASDohTVvsuAnf7cQI2jG
-9BJf0fsszXuX+KC1ojlXm9V5O/aJVd/HH8dakMQBL6wwWUpsb8dobJ3PNHXpsQtb2RGwAmbSy7EX
-H/WSTPaq9NqgM54eIPbxmDydZBMf73Rvzg6dSMicY+1E82239MUZm5iFC6CatwuWZ7uwk8vtJ5XO
-koF1ALW9UqbBDL7zYzzUtGG7v9enf9YUkkuVYJO1NmJxwinFNZGG9ea2J3I7cdK3V0HAm8uBEWo+
-lshqkid4Q+k66MgiXW6GzsCeNuh8s0DoTDJMU2QW9AlEeXR5GrBm6vS9EjQnOtrqZXDI1BAsGezm
-NVAeYTJI4LRd8LdeQ34AOpA1/irHb0B4ZSK/V3CPoTZKXCsQegvVPZs8Gsth9aToy3ZdI0KBVMDr
-oE01H7XpYH8NWgiX1wGOjMJ4bWAHX/1l4BR794rPl+LzW6NMS92yDQ6inU1TqiaMMAmwOG1wqUC5
-odyZqF2sdL4w9yw4SgD5jigByR2kBUu5PjjsPWBx5GBnSh1+x//w/5p05GPK+ssF24WnJKiJTtK5
-JP+6Or7UUMaW0NbcVacGDATpscBtWJ0osEEO9EPAI18E3r9j/hk4Wmb+sr4f0O6pQz9U/qTvjnis
-Jb84UPqTFTl1nPj3L+MwOoGZLDdymFEXTK1EXrasEWIM2nKFwxOoGKMQDv8LX7cpmMe5PxTF0oxl
-EKrGt7pl/DGisst/fkE8ecwc88dRW8aqsgVKaEfFPoiGZ4AEeGXjnB2TSsIbDeLTmGBi3Zajuuzp
-by07oo5sPdmrtP6lQhRs1bbTGuUHJFsZcqr2Y835G/3RRvSq1ky/l624VR7ekl0IsurrVpVp8v9S
-rxsb7m35A2b4B/mNX1HcNiES7BdLBPwHNlJho55HrBk/qQHZNkcxZdL+f8Vv6l1JLSchcrWZQ3jR
-pcms+PQgwtcivmTWU0f09QMbi2zfr0F4GbxGNsz+t0P9tELEidpFn5Es9kvNqiVNLz98pwU6pYG9
-DAdRUXIupj0rQ/+fbKFakyrld0iYdcPNMaRIvt/kV3B8Ye4Fz02FmpjaTGPRDwKMCC8PTemQfxGv
-YKLyRvGxLiIzR7xv3fUQ9W26QwaHh4rRhqXbb4mufBrJxDQNi0O79fVgeaESl7XRNpAZTGKzCbQC
-m180NZzanSL4rq+rmZvxqrNyMqTTRWbpQLiuPKNpChEdeF3WzyfKizHSG2L6zLDpabCICuuZz9Eq
-3+giS6gYzuEn63xaeW+evrUFwQDWZzgb8aR2p3IQtXDYK99O8I3o1P8l2hV36NoqhfX3nmrziRgn
-jJPbzzOB0RJKsTR+QeOxSQBpy9iizenXen82N1u/Tn+Nq18l71Dj/vZKIizJOF5wdQlfQPIDZqYP
-Nj7cakFzOK0THTwjvi1tkXESU6U/s59RWrLeHJMamvnCEIUxLOvYdMBHFNLuJ6OEGqBl4h+K1Wv8
-jVe9XiKmyAUF4207MfnDY5XERym/0fuwzKQi5etEKjHzITo7DjB9lzjHxdud3wgNaky8WqnaAWt7
-hLWgBETGphRyCUYF9wYrIa24eIoQNHntvlALNIH6f0E2qmtmJL/4mYkExdjP94GNPTuhCk5TGLnP
-3hX2+1Bt9SmdxWtFahlbw18WlQJTMiPve2EmxXH/1OgnvN1ZXDyTzGXSsaYDU2s+BmT2MuXPosWA
-dAcBCVPsHpDgfbx/ToobR2W5au/NoIHs0xXzgiUlTBTndu4kG//EZD7S0PPcM30XUxeURAed5KLc
-ZNJ40FCULaoVBa04b5qSUzw32OdRaWXLtzKgCwDpcd5s3Ap/ej9hI0qZyKvP3VhgXD7gGnuK3uKH
-eWtPGwOs44pDOqtaStkUhgugCkJ0e4hAHeRQ/Ln6glFTjFulKkdzwW6iVABsjfA5BhRzb247O//0
-QEjSIecayiFtniQca/F9VucK+A7vUeUai9pzXEGAeU3iBdW8CSKwG8ER99kvO5N2ya0K8AFehd0K
-us8gdUhI/XKFyVzsDhLYNiEoQFIj/8e8L/tjdCnlhz15gifOtscPAZgzZWVLvUyvcpMTetOQh+0l
-zYuosoBoBeRHVeZQ0ad8VoC9Bf+nj1fwPh5VvhGPVo4u2JjKi0PgE24eYbGcEsKnQNCK7GObKfz5
-HndMmtHeG4j1hijOOXSKhzjwFhkrKvL3JLCx/OCvWael3F2Pr5EnmrFADmCZiHrOXiHG8nkL9COL
-r+fqi2dN3V7WT//zd2n9/YWPwjmm5lqGE2bG6L+AaAjpP1eZXgQTI3hchkvYBoEze0TzeJHfuUFg
-+jHE1iBCY24v/ica0l4bdW1tXtq8ocoF2sGI8ntSDprjU+bOzbq/IyIZGqmUyvqKHSKtOune3pRR
-rrtUNk5gFaOlFwui0CmOu0jACEaj/mVdLNEnQUBSacBJKskhNJbAyfupFgQwqizjInvmk79F+hpS
-t1XHx8G7bzD2DpNQJUOdpPD8MnTTUQxRwLDTz26dydA8ZXUU+QtZ0onPO7Y9xlEPDVm4DkbxnLUI
-dp7MyAU6PDwcxjGSdMKJobXLfRMbESm5NneSkl03S7wuN/mSxyVF4W5WHYXKkYWmXMYp2/4SoCzz
-Sxd1qo2Am0OoIea3Xd0+qbOp7yHqBCLdgS7cH65hXn7/oU2jYG592kgVvq3GtYeOmy4BlO0BT7GJ
-0QTwCSSxL7xZn9/3E9VQ7A+F7wU5Ma8PKEuVd4frlGx+mVJINfCvaxgf6F4z4ihSrq7f67sXJkfU
-LA+TdVFJNcTt15HKEfOt/HddRtO9dYla2DFgNQUUEF7KKIQciu+aKwwSKzxcsnb/Gn+01k3Reaup
-nM5DxX3U35WSaH8QAt1iYAK9hlSSi1+/WwjF3+rBn0I0MvcodMVGhU07GVzF9jnOXrn7POZis4qm
-PsNr5qgP752IHUXvDUkZx95KbrapyV3D3golhSQnjNmRxQ65xow5ABtjlwI/ZUSu7VEnmUi5OT5s
-7QEYEcR9YkfvqEoQIPo+OQselvDGtuMp4AZzfTfHY8NGEuy83EloutPduX0gbD2t1u2u/np/8e6W
-sNBO2m==
\ No newline at end of file
+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
+f8CMSgNTe2f4
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequnotinfolderfilterTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequnotinfolderfilterTest.php
index acaf9d48..52c83a1b 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequnotinfolderfilterTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequnotinfolderfilterTest.php
@@ -1,69 +1,102 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-W0==
\ No newline at end of file
+HR+cPse2Rsrxt5D30iBwJabAAmm/Bbq9WnfOpgcup+jHWFhHebaZNc8SK513TVk9OXnhPYXlugC9
+Kq+6UfXGbjlfxDFejyeZLVbsWAzvxp18Tes9RKZL1WYSAYE2TkJJ24Y+XenYRev9crKTrxW6D6lD
+94lUOuitnRdjWCq0sWF+aBHPgHelxHMuV2cM5zttrOeUD+Qwv4P8I/Qovts6oR9WqXKmRBgpAIxx
+RilX+3PUhlk+4dqCVNtXZvr1H5EwnpCGyEcBP8HMeDbwkZJqeisGsMoqiULfO63AERGcVvGYf3xb
+RwzE0H6EMm06Qls4uFeGWBqSdHFVaUaQP5BjuH2UqvnXyujT0XyUYn45Ljz0+wzWpOujS7sAw/Yw
+dKKLr3cPd4UcaRDvcgluwRFjlG0qaGxJ/uHuNzhRAH/f58TR5CzuaEMTvjuSIoR5a3766iWcg+WA
+Au0/dq5NCKMVlZ6N673wlTqxVp0WJrBTEnRL8+VoiPWsgFkDNPbX79NEAf6crYoDjhMcsGWxr0v9
+u026hfYSLKvOfF1vM7tQlH1L+C+35sATrKC59iqpr9ne9X/T+X7nzebZPnJB5/ThEsxnzmMa6Pgc
+xCQhgB3di8R10oQ3puG5df8Hza1FnNKmXgyxY8icl2jIn4ypHvqsSpZ/3HWqxIKdkQtqGs4d9O7p
+IQJEkJMeHbVDgjQJ2+i2kR84EqoKprsYNechV5KuwkNr7ZsF/Lr20CUVpTHTlEtrsJ0W72fRmdjG
+VMB5ZHT2+KjgU0cfwPbWzJWfgXvNA8DMLWVVElfbimlqlaOLRmRiHYqVDGHYLLKZe11GZOsoQSm4
+T2vbWyXzFzQqE0eP4IAflgOR9SZx3F4cUzQwmC0ziVHzlDukxnpDInxqzQp1Ps1dZ+CGXuUmfLt6
+vZgv4ucGajURSh4S3GxXYkJOYrxe28bLpcLJwRN8jUc4AXx8vok4L2Cf8tFJOVU3uPOTcmNM9MwU
+HSJ5vRQ09jaD82LdIlyzUtQ9aDgATXWlHfAm/fEaBLMbimUX1c3G0lA7l0C82QBywGcFSDu6462y
+DFzhLB+Nx5TXUcV8JFiC01Q+wezObJtN2Mv3h6dbPk/x/6iWdLytRRIOmUmQxHNEDRLxmbOOeBnd
+5eG38KnVTD8wiawKJUFrIXYyCCQqORz+d3/KTnalP4mh65LH+LkuIPCelI8z2HzzGeZ8QwxY4sLT
+jPiQViDbS8f1zkyBWNSMUYQfhTBiYbDFzeszWhCrugw2yL/Tijwz15YEb18EMLX2MkzeEn9QgjmZ
+UxRuGTH2Y8RLLP+u/PQj61kyd1ETqC2xUP6N3YWOGXKYvVCHJ4e1JS85/zGA1gpbn+HuaH8LSIy4
+zbyHwcWhuoAVr4FlzFUjQMJS3C3A7yBExxhDXeWnSuxB4F8SrpK2+drPkm5YQaLPjWS0vFINskZ3
+qganqAwu4nUHOH+Nqnpm3ZI2/LkHAXGEvW3cs2VHN+7PhO782+lHX6lYH2d0AKuVo68OpdJ45rfq
+sSt4A8mf2RkT23exaZPeeKjqvLSwIsYoJI2n+AFDoAJXEo8E8fy8RTDiZczsCePRu7JJspbcq11z
+rvcboSoAfqRH+6hF5X4TT1ihZntARjx82Oo3JRTYcFblRuHDgfc7ZGMerjktz9Dbw3x2aeP+LNNA
+uHqDnrJcV0Bo7rf/ubPIGpN/S/qNRGGErYZjsoEpyUCZG6FzkegPuoja5wbae0VyepQl8V8HizdK
+vJ0czGdmcn2ra37xM1xARsEUzHRDow7MU+oAznuJCBVaZ7i+VoxcBvRTQXKjYERcAoZV0R8Cya53
+FryZ7bhSILAADsYMcouct9we93ConggH+yRa1hc5jd4kbU8sk/Kg0aIBaljtvlIOutkiIc29avPs
+/p0LfIHhlQP+40+aum6lqRj/xckf67wP5dCsHESuUfSY8FhVXVDFqO3BtVKt4B4pbt1df9VpGhGK
+rmp3ej3eVihALRLlo5Z0D8phK5e4lZrHaK1q/DJM/FHPimJpI4jhBXfgbkx44jvNIFyieenjX9kf
+I9pNipFUglBuIaxSb4iKhb2img4qTpMsLRKmvxztjOlVJMLeBpGAcQjWWxoFIClOylUHCg0EFQME
+/bFX1sAgKw8+0Cov2IQEDSCr7YwZwe7sTBGj2SvAtfDVGolLTQkj6TDQzUmo3XmDY7fWJye7kWb0
+Fc3CJDv0GcRElt/xevZkkWXEOXCcizQwhElLZEtsTcg6G+uvn5JwTgEsYh+8sLRl5xWudOPVlM9n
+CShauJkwAwomLsoJXGbnFuxyucTDQFITGPdQRqQssZLirMV4yoDii5CUxGGU3aaT+qLA906C+9g5
+KtVphybpeF6IZ9qepvdfLgney8DPbmd3NnJPoFhOdkOOB9Nndui32W3wfRP3oj3C8M6K+aT7Wboh
+ahweIsqYCtEdWANq+/MDdDI3yDARU92ROMBjtgJKYyMMotBpmzy9hFGMMbo86/5uNf1WrjHKNeIN
+pVlWQGU5rgkZcyrNsRGs9UzzQaQqLHLQw1pjtQO2hT1el8VjO4HhkCTdU5AVye0uc2VWa5S1otYF
+8ykPAZzMtDnIaWDARuObTnCIm8JZ6bO9gx0UbX94wuyWk4eXGd7l7gK/YTjB7o/h7vBBKx+uZkvM
+Sy7ETKdIivPz9X8qbomS9JKmeOwuMfMesiiiP5eWS2bbevgVTXiG1f3xcl13ZnSH9tyAnXwIx76B
+KeVo6MJcK3XgDEuJxfLaIEQ9NzOxnrNRqZhAxrO8QkvXGQfxE2hNIC6Hmbs/xgUsWvTISGtNnuIp
+ViFqGsj6deJc4eWBbupZpidoj9zG1s7plnl4GjQzSLrf2QGphxsD8mJxCTEmBsKcZlQQpFRKVMK/
+C4btq7G2WWzvu/0dLgvQTQkqRDpYSJOwn97i6NDd0YJ83mD4tpqKuGG3M5Oi3VmmJ0vsiCxQ3LRm
+0AMdI63xrJXrvtKxL/69V9L3rm64xTMG0VBWWF1ZOn4TNs2fmOij3vJLt+aBbkIM1IjYm32F8utZ
+TXWjEv9RtbILpFlEN1+jSzgnDFDerT6PPmRWcFhqPFz0UmoWg4uaTfRaVxV5oNEuXvOspfmaMRdP
+tqNFevUa+xuE9ZkQcmLcPlBn5XB4ijkg+UBUf4BjWPaAlgyxS4jYlqO8XTf7MLDJLlhRZQDs2OdQ
+mVfhCf/zCm9fe6d7D8T41enpXNkI2T56zBu7mMOHEnT8+/SrQksZnj20sopZHe/9dg/NrRkTqeUb
+VEg4ZgEQUM3honwAdEWFNZ/j/iptRvkR8OGd2RzXKwGfCIx8kSIMZ8SeqAVK8Z0uKhWhqnqvHSFA
+5jniN6xjzO94RLiAqVON3Els23QEIwOE71tBsTM6KfV7BRQGZrue82ltesfRnRkyWhyzfTFKpgt1
+LKv8SiIuQ8ieIDuhdVcbpANwOjVY7bh5XEEK4vA1Gq8VCJVyoKA8qNpfFKukFUmUf/ilIpYRMKDy
+2KfdYx0Byfc/hTuF356oP6C/0JexMvcdxFWVgZdqDW0q/KvU0sMyBacWRWkH9VTBIVaD/5dATxJb
+kQbczOYgROpNcRmOKFKskKVYMSFOteHeN0jnmUB4+k9IDPRbWqpTVgFlZ59Zym+jYRP2gUnY5/3l
+foggKrAOcBmRzyFOjPxHnRQdjdMabBzTmpIhL4X2yO1Kv72hkQMDimYHsXHaqIVYfFJcFTTBcB14
+3lDD6QgE7IXv8iFEsf3aAtU/fm5he4m9a1se5YXVnSBW57h/3SQSpmyl8HaUwHXSpiKgiQYBuyMJ
+T7KYIhC/2pgWirIk4bm5QYU7GK0aCi78gdX4eMwP0okuBl27+K8Hs0wo7Fo2X672S9OcC4c4GEs0
+JOiDQzLjwoweHG5ybcx8kEhYofQ2aiWI762Jl8+g2cS4xB92SiIG+vdz2HSjT93IpGFsmxYITfy5
+63rteLIXze+adhmMXIi4Y4mPIMSQlIHDNoye8Smoy3GFXcnYk8iBNOP/H43c2lH2WeqJBofPfYdN
+HdztIsVQ+fe+htPF8bA8GbcoBsbBypY1wC1h67l3TJ8COCCSvMvZQIes5I5P6x7sqQg04IUuoD53
+ZiZONPWp87EIfRx+lUU041FjPYNSxD8rjDY7bfqqVVUR/aTl94R7+MTgLJCsgGAeNO7pINx5tFxS
+J4OhBFtw9KvkPaL4pvTLP4Y815LalwTnVSf6BzvNn7muBqwBrZrrGmk4ryceZaqoS2EaQyy1WAv7
+D0Vjkkzyl7qtWDvCYwcRLziZEnv9boroDKOUr6iNQiOReW9g11BC2LJrbaCdIm3eKpRqlkKFFU4Z
+ns+YIqBODTBL1rJ12KE4JzlJPPvhZ2j0CRvmb8M/iYMemlX/QjnVXwXFRUbPoEZ5a0cJTNjoFU3x
+xAeXRsQvoH128qAGWI///Jsat/4IlqEy21BBOLKM7xl+WMYpyRi6FPnKbQxjIeSP3Z20WBCHKyhQ
+W3YdLkj2PjjAL1x5mpkUfV70HuU3nAOOPmsaGPTMsagjOIiuXuuRYmAc+p+68XZ1bc9QIyw26fYY
+VQX8Xn+quj1OCokmLt2sHOCKxkKYEki3YLrcBpKNUioyPJSHfycJnU6xWx4QICcmq3w4nTwEH+21
+D8zUSH+DG23bN3j7spacOTLHbB5qskxrlDG08pZNST72KDX4m1OicCKLkQt1SOwB6asKdsbMhnAP
+8yg+YxR1beA0K2NrjVFyYlSRRFcOdVTP9Sq0Oqnn3ilfg8GA3bDA7k10tzwdAwGB6uePDoY/9qzI
+CBha6sDM5fkitFjCup7/gAz4hOZ/1xU2eBNuMBG+KUWfgRG/rHgRILsrWSFRw/prak3D3lnV33uo
+XbWw8CzOxKs8dD8B3RbBSm/o4tmYcDdtI8tGnMu2h6KtF+58Bxcp9TsXKCEhQ2ZaPAoOBZsAFlmu
+kXg/AqaTwvllVjxTDVhZr5I+GPioveWRWN/WteSIEqacrFcnbxF4nch+0D8YpBy5WTFQYLA/DkFR
+7VSf1pWwTrD/98PrUJh61Uuruxgs+rhnipGHvFRcIgY5v59f2dTm+KJb0orNy8e19I9PIkXOFn0b
+a06rTpwvjCz+uiGt2CRKO79hdfIs1GWww91NEXibWK0iZwkYl64Kjrtm2Fy3+Rx4kwUe19W7txIQ
+v7XEwQJu8Ai/2MiVsHlAXHhOVq6+bgo23sCW+Xs1Utpi6gKHQsqLol1l1IYLgyNmE+p8R5lHAi/z
+DunIU0GlXf+x2aD7/gLZ5Q7SDX8vGevftYILA7zDnriAtPoNi4M/r6zGXcMvCCF9XtLRe/smP6Ay
+FaUHICRSsuFudbFhUPHbMct9oSSpj08YbVqaReb5+7Oxo5KWFma+wqqMICQhDqt+ZgPZrkoSeWpM
+PEDhCqM+shGKuoGuacTKXmODsWC4lr/SQUUyfyzmlLq73sB+0U/CqolyQy5YwYoTdrFK6t8UY6O2
+HPJRyomm2H/uYHuzKOLZoDQPpUkwvzZNoVOBzDg95YG+d2EhyM7HHONPs+c0jxMmxV/0qQGMlZli
+RxH38B4Z+vnXbUHBm1ZDd5qgGBBs59beZhuIGhzu44GJORwdsapqwezLDr7+TEs99Drg4QEkAN75
+H8oOsBBDvjVaPw7lKu+tjOrYXsvGCcuP9OedbomklkPkz8XuyTR4BgVo+uf4XsTvvOzbv5jPVBaB
+UZ/cwRtxm/p6WJvPq1AAXaeNHUUCf+18dydUj2vLtTH4JTF97yPY1uwJMT9oWmG28RDeVYJ2dnFg
+9sMP/12cD6nKOmbdXzAyoV6D1lb5QNqiQO9pTXJZxLDJ5mcNyywoGhTaaA4xR/TO1cTypasl4HIs
+R05ftM9ayWd7fFH5AxD0uRTrJiZyifOw8drVgQo69iLAvjKsjiLjv4sAfS7e1K3q0gxOeXUP5PvI
+8dRxCVHgLIKeV5EGOXqsSQHf07Dnh8iAcNQidhpMV+B1TkKOBnVJ+uYwMiK85W9f8BkUeBEOFGZj
+LBdImOTn2O9o+4uhh5yNu4ztW100quDcsmYjfic8KHkWCGo7GSKeZODNBPqWe5geD1noN2+YxKhV
+/xJOsUf8OP7VGtLGPjmN1/rhfN8CQQzscy4Xu35X4SJGjLJ2Rfz07c/Obi8qrwX5vQD2TWquxS7d
+KAAqQv4kSG0Re5aztrgHzwrZSbTpx400EF/ym8XqVeaxVkvRUlautrUqgPX4rtd8E2RnML1mKSxY
+b1Xw+TRmQ6eJ/PP1FkBPdHeH5M0LjfNToQ1Ce6WwXvjo1Og/ngSxQSAI5T5LDaTtjKiQt/Jofx8h
+GSVCeta/eQrlgUezZVf8Ey/LR+MoJCX8XJX9YCDYBf6vTfXNJrAtZXtMoSxbjvlVcgm2FO6kkq7N
+/wXFG8++vZjyJTlL+PKhahUuPZkzqPOkLqXkHe2S3D++J5ViAMFcGFm65F2yYsdmYMg6OkOR71J0
+AXHDc2NehmJldzx3C7XD8ahedueJLyAf7BXfgQAKu8Mk4DZj4hZC9XZNQktbNiKjvphVEEL8/yuK
+UEmD6Al0Zf+CrpOO/PUVMnJQnOipsYlqZQPvaUfd+tcAOr0oIsFrSB2i/bjI7VpFiqvJsOvECSOM
+bh8Y+O2dJFP+K697a6tXcPiXZUIyZ5qsmREagQIEpKvuKuJEcxStwJl90Y5hHYlH+Lqw1DeXJe9a
+Z//en17YQiMtCqBD6c3/up5RsaFTik3dKks8pVkk9HWxHkR9iWitsw+S0PiPlj9rACEcLnAaf9Gi
+Txfe5LDkA2HjZned+Ti06Rln2UL4b+e6ToqvyHZVCYyec0oG90Vmm/tb1DfZfxcatFH0PuMm/w5S
+nJIPuS9a1FwxFUCD63i0C6d70OMBR2Nbf3h/aonh5/H6jt+lDWedvr1/ziNqL27UMiS8AOiF+Otu
+oYvhw+NTnj4T/k/Loi4x+aTFee7ygDmB5mLfSPhhU0BGpP+3odFddcQ9mWT35TYKh0CuU2LTK6XT
+e1OgXSPidBjrlOoTD6qv2QnHh11jBhg9KW37BcBM1V3eS5S+hpv955FcrOVQsCLUPBew9pcQJeAG
+YqI5Igt4c1OMdq0uycjmQ+P15ypbKmW6J+GQn1dfMLPVcUboQjAKBbi58H9W8se3/LL1zwwXiZeb
+gpJftRRh19Pty0Wl1kz9ffyK+65zRF93Wq6n0PvGX9nG08xr5GL/Dtr5cyJkTIcCRkAXmZuJ8oQB
+NpJvNEaCMFOQOdeagHAta6Rlr0bk7TbsBFPI7KUvNOBPM4MogODjFJ9tdIdW/R8wI3rug1D0IIEY
+qWp00hd52D6Cfce+BDSBX8h8czeQiUpHiKLx1E24jY0Lc9t+EnU+WUSxDo11c5BUMOQCMgdKd35q
+sJ+9WhMxOsl7
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequnotingroupfilterTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequnotingroupfilterTest.php
index 5094c008..70723f9d 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequnotingroupfilterTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequnotingroupfilterTest.php
@@ -1,83 +1,115 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-HR+cPufJgcm42oz3qPS/JqVEu79fQhDqZBLvcCCMUVdTUkY8l98IwYbqf+SHnPFfEYgvfT0qP+jz
-2Vf4yjBtA9AFgNfV0Eiqdo27cpOF3MVtFNCoy2+rKyyrdAAywX20sOGh74XnbdYhMeji4PPWc39k
-xWfkl+n9r1hphoC4RNAOG6L59YcR0iAtaPL8O/pAcY3iBgtrXeJXmrBsFl/4MsKOZG3tEIeY/YDB
-EyHHmWPSAqF7iFGppysFZtvxMkYroREXZfmft5iRphauhu6/IygG3XYyuB+TnMeeyaRwbHt3HlLs
-W2qIi6Z/mO9eKR9re5+YsJRjvDVJtayiNgUorAk+YnR8NsYZqH5PrjzYYVzDxmVK+ZO3s946RsLZ
-vgB76En3D4bcQTfEJutVYhw4JNbzk/vUedV0GUu7t/ifhR7SLeaMjRbB3Qv+YBzY3cDqDUPv66T8
-GBAXkFBC5eqwrRUhLr26LXEnnCQpOVXNx38SPFauq+pFUqb/VySv1jn2U6S35A8HI8BCoYaLstFU
-CqZgvSsmD4f8r0yLSHZuGqTuDyxZ3xLDdfB/+V1EYcEI24CUj4/Zm9v3fuSPZMbBnNxze6cllFFF
-wdFTcQ4T85gYskpKRVtKFvQWCQUJB8qkW/Y3wYlxOkXD0F+uJ5XkfoiJa/4aJeKetIRubSRbwL3t
-8mmwbOp/c0ZsksgZ44YgcOC8PvwBSja7ERNKW5+IMBQrfLlO7fi1Cjv3Wkn97wj20i/TM0GOq6YC
-mje5DlNbvdehT3FaAwo4ig357hyVLIWX6Vg2zxvFZej4DmpVAlnCIFo57KkPL93ReROH1DkCS8GW
-N7nw5uNZdthSXxPTuF/1S5B7GRubTNQPsUkzV3i3f/Mg3Wp6zA15mqpJ91gBhdOKRUVQM9joA044
-lM6PKPD1aSPSTK+npNVlmw1ZhYN9rumZKDXhenDicGXeamqjbEewIS8Wz3VCT4ToVwK+w1aCbQos
-xZ8LdHjt1iu+qvcc+PUVMlZbrYzd3cc4Nnl4pc0wgBT0AfRIMi8L6vCgvx2ZtUWlZQsVKsBTE+QD
-6PMxS47fAMOsGsKvcWKiyJL2ugGLJQWrW33lo72MeIaw8K5s7/PMq9a0kfJdp6NXjb7aYjg3Wmrm
-PYqI5eRwR9/B90gGTvrCtDVdaXJgo4zy5fV4yRMDvPQ2RsWwFm/A6nk77buOnrOF3iIM/QoeWdvU
-xrZeaGsSTbaxPkV7LfFipCEr/Ulc0kY3VE8PkMATSi4ML2pG3F3lkFLyLp5rffMN5Bk7r1zw8o8o
-xEdyIZk48z1s+93RFtjqTcypoGrCXT1hdEKDPh4vAju+4PH46bvO+fhbEu2usJ4WBQsk2qnkbwgA
-L0dzI9BmzoAzU7SwBlewT/H0GAKoiVxTHvFNR0Ft1q1nIIR+MwXfVeT9JzPECx04k/u0KLhuK6Ot
-tGVgef8vUqKgJXyqd9vCT1X250X1MHSuX7MxEon+ZvCXaOCYmBiMGaMKp0UDM8f5KKJknvEU1SMG
-EB/g7yHi0eTPOFQQwv8H1p8ZpLTuZ6r9TloTVwVF9xgqxd3l2YyRscTytx+Z7QDSrPyj/2+JWTiJ
-gCHrqEGCImyH9d+O2CvdOsnAEnr1PsujdFXCgSw2XX4a8aXA1xa7EVvXI0k/5mftaRQOlRhS6oVi
-HKTebcLeDstWxkBbLEBKAMM4OzY7ytipT4UXpvLi5LONLDfQ/LFxqlsPKGGx37omrRrtwHpwO9X1
-CSDzUABZJYZ5NLOTP3aWSfDyees0Qg39T/ztuvI5pcq1arG+3kKoM3sfE1b1z5oWblt02NNQwvFH
-HbR24Obq6fbQfrXiXuLacmaBZ6h7mKp46zfZ2t76YrP/To3f3mVIHwOH8jtFDjg6ETazO+5EPo70
-zzdRnW3Dr3yg57aP0/c25O9DmECS0/ixi053HG7pYKGuDpa6EoYTy71rDqtTaJcn53/ERKc6M+vL
-eC+XL5MEGXuRVXBSrKNPv+/svGFTDyAOZte7xIUB9MQ1xunq8MzNLpekRCpcRZS2/uMw4nwfWgv5
-H6Pa8VkCrmExL6xJA/Hbwffi7C2khTdRlqmkAC5MGIXRwivjqJFZru/f9Qa0fWjY18feSqdLIQ9S
-Dy5iQCsp14GJP2o+22vBb+13smIUH/H1Wk4DwUP+DgyfLBWef1y5QG0Rsp1Ow8dWobWLEPt9JGLj
-efAiCYIgOB1tPnvYRk72JRwNMFj41d5u3OmZLsJFDnCAYXkZC/3AiKNrr5GaIBy5cDJBWD8IeMFZ
-OaIGVdAyKWlvvkw1NtHf5pOYigmrJHZWtKI41P8hdvo7TJKcBOrKPP5xW+kMMQ4OVR3WnP2J6w/K
-Emft1GKAu4MQk5dw+gAR/B5sd1Z/56pfOYljWmsHpbwSfMqOjEkwSE7F/Q3HFkNLgF2KdOADCXaT
-G4DLkB7Cc5og28Q++Qvm6/i5klRgqMcgE6O49SJkQ+IvlKhEPQOqV0tobj1xqXCAPLRPqWuWd/Qx
-0t970kJn5WmnfStr1m6dWFzlaOFIWPHjjq7lA0DpmMOzexVynIdeRGHlSiqn2zlRMZ5WAuBEOgTB
-waDhmWAFkaO7ud8rP+TqCIqWOHLHzBT6HjQaA0z3E6JflCp51lZdNF3oNacylwGAlwdR9vbNA8qZ
-RZFBUpxy6doUbKaqNB7ij4B+pTKv0HzDQKgUIijgiNYZ2C7iUbjRkYRTkEnROd1EEwwb7g1zv4h/
-9yr/Pbjp6QDfUxYJtf33Fh2A24aRoQCMqIhRrKbezHde/JdS5OQOh8Kjc7YKasWFtxV8+pSljjH2
-vPo3pgdBakyxkNNS1PJ0k957PT+Jim1UR/JoQhdN/Vks6M1Ze0jVMrsdHY4lokiwWUHD0l6a+pBa
-1AmJKWb0fq8hSxa3qvGCdS9j5WMeORxuyDoqw/b7Ea5Ro8cFWG1gzcbmfNGKPvEUUmpVM0wRS4DG
-+d/coh71hzAYQAac0KgEuVwkpVZBiRplzGD1h/nGoo8+BWcD/ARYXOGi7dW3fMEUFcBBLHtvjwTz
-mU6Q7TFRd08rRmQ00vfyUBqOo/cAxYyWNtsZkxdEyOSZtnmHgRlSNjaPhDLF4U5FYFW1Rn/6KMpb
-UPkwJjlNRogKipFPz5kSchDxakEvJZ86SEKxy5m62F7YYTtG2vE73+KtAzJ8ZHlibJ7ofZWgFYuL
-WKsPQR+9W2rEdmH9N2t/B9MsVRAu2PF+b1lt83zOW563ukM26JUvubI67Ibh2iWOKRInFyXKHdb1
-1a64ha/9qOmI7IkehQzXoy8LGKcRSooebp6VKJiMsCj6s8MT00j8svx4jDn5U7oKLID9hEFiZlwX
-coVqvFAEG+ah1XzFoPMXYEZkb6Eyl/zXOljuOV3Q59QEnBMs166zZ6oEeO87urVGnBUN148WLbu+
-pb3E9pebV0qa+9afi/lvmIi2157IvV85ktiXTsPgY3uGWqvitBj9dTyxuV/1HjHQwJ6YRs6od4Ba
-7JbqwS6URN5Pbfz22VSKRhTD9rw0IsliTSBRlkBNHbNULySEMxzKjlTMtBvTafnUC4RXftYT5QB/
-Qi2Le1JrCZh8G6onXaxayqn+laBlv6lw79OXUbvNiyqwI/E/01v3w7oHFaaXrKUFDwtuBNI3/wfn
-W7yWclMyymWT8RE0RroNVIod8kmHYTuLHARVaq8gbc7bNXHHhPiKmK/sGpwG/qBI2r7aZlyOHTe4
-DBHslsOu1ehFCK/tnB6z5YvQ649ym4vnCrD5gP/EV/cmHzNKD/z5GyfS9j+t3NlbG9NRrxxE8QH2
-JPXcc4C8/osNORsF0xEn7xeUKR/obAdoG88LnXX8ydIQcBc4j6JvcHmOM2zLyx1k6HYWaYNk9IGQ
-g9nj6w8+NOnliEw5iqQ28AHY6jCejepc+dpWAPnQ6wWrBPJMXbA5+/MjItjk5ncKLiNfbD1VfZ4d
-Qv3zbf57dN84AqxLG2aa63xXbAZXLT5GfrxCyHGR41WiWkSKUnHIbfmz6qY9Bu2tJos9pUVTLsAw
-caF5B0y5TTKVV8ZzNvsa+f7rwJC2Q0gV4AYMSRB2twqOR5psmpbVJ6Nl1pNvOyw6ZRIoC0dX0bea
-QAvVTCT7iCqk/mxfZdFz117Bu2YclsbvIimWQp/ktiTQ7CX+pORuhjlr6HRzMWtW103ZuX8797so
-C4sFhM5us/77yA4OizeG4YsBYOrFbiUcFn9C5gOaiTdoFpiG4vCNSic0UDR2G/ItuvGQNi00IhTe
-BFZej/nV+K6e21QNWHtyBDr7lQkLTm5/UdQ2qkQ73+768IfOMkOXkkBUb8TYY9QcJG/Rt8rOzy/0
-Ygd0GQaatxacpWwsCiEs9RLuzczZppqhA/TaFUz+jAKq1T4godeOMFu9qst3xezEBDnsYX1OwqL/
-VqV3gwhB1G3DB/u0TuGt15/FyymGRV3ni/xz6ywC9JZwQtFDntClaXsfhJVPSyneu1/4i3uzHo/6
-ZfXwcKveCZZ/BPxaK3eK5yk05RO0B+xsDdalPCYJzdNFu8FBaPxGZuwx40p7GsbnY8d0XPbtOVXL
-TU53sAWJU4YS9hNSE+f+H65Ozlr2fGDHCtSvxcUvAO/7xqhtUvtNZJ+Zpow5/9eUhv0Kmujh0ogs
-IOXA/CvpYY73mpCRvwzZGXp2Ic2fCt8xalhAXqgd0ptCiAhVKGT22If6niTuZwOkc0fjApwcqkWC
-yl9bDFlARY0vii4zMbTva5lsV2Pezupj43ZONMV/ipQietU9TGBj0gNkIKXux33peB6bQP1a3E/l
-BJ2Rka/T7FcBiq8EN1GWUMpP+LCSVL9i8GF+NsnpMcOBpPpSAJjdfzxJ/JdoTsccjME8V8BtKyYV
-q7ckjrK8W930s+uxWucSjzrdDjadw8BX5svqtf3mNGK2VQSQp6xBRpq1EfrHBbOCyZT9oN5RbXFh
-Yj8+FwV+9DcYdUAzrhQxZEsROZDcpAt/XC1pEmoumwlflJfTdWrm9J74zz0wxk500M9RngnibFGk
-DxXSUYpSDAA9lk+965ux0uWsxew/VLOqtTE+/IpDO2MNEkTt7JT+bcpsi+EZML1VpLsH7aYRmcF0
-uSNfTYdPjH9L6eRMHzawfJ0b95+hdEyCY2Nd5GpCapwInFQOtdYAPw39q4JGToUxyLOM/1rV8rwk
-5Zfwtzb17JGX5ac/vrbkdsc+pqCiOKOFUsPt2PQzkdQ34TfWvL24EuWkhOcliQoy8QmwOMPkkTnF
-EarHpCyjeXC12bjCQH6JwA9IsmZ13v82k41VBSodk3rEGa6Tb1vKACxypt7t13PFdbtIO3QpEzRv
-ooI4rQ/tVt/AcZydIG9ykRRTBXpvMDA7pRv3206ja56xu2aFz2U5yWoYd08QVsEtSfg75qWgYe4v
-6QRkYtEvaAuwdbneIcZKnF1kzxQ5qGdnSEAyzAvo5i9cIE5VwTleM1VcsTGFiYlf79LvMYcjLW+4
-fgs/vSbbWYWnepiSE4i9oO9CIUQOdJGjVStYNfYlM0n1Z2LZZIbs3jMdcNYOX3doyt57mpWaRnjG
-HTmd0FmD/R22JwGJ1a/7WbbvDocUSf04rLunbmtoKAWJRDcIIwneVjNT3xznY14WuLycMHp0p5ys
-aaiIN8lIpOt1C/UTmIfgX5o2yA+IaU7xF+RqXyGI/od1+kEHClolzkGXuXyvqBnrk2131/Bb7Ytx
-KOlpGpNOpIcO5EXOYoRse2CTYGXKlDfKpHa4wR5bhPcx24kWklc9YLHgBW/lCiHvc5vIo5mNXTnD
-6NdIswslgNInTGQucFdir35wN/RQkeSj/JCP58ckh4cWi515Flz1BSgXoyP7BoaKarnOMHQ7Ey6H
-GNSRRGzCG0NiiRb7bGNwvSgMY4w6e1g7bge4kJgY/dMDrnYu9nPnvDuCVYkPHtaP9lO89cqzhMG/
-0iKK6Xnnr+ZRztfIPtYyzpIn5G==
\ No newline at end of file
+HR+cP+YyQRJW4rAy/N/ybx9sFHslOvZOoJMr39Eu7h3FzY1pFk7nRI6coMQj7NFv5Ty/jQ1prZx7
+tgZTYeHI/VYZY4hTPDiR/SQCIgG/Ms2ujEcxkJsF2BC8+IBOslYCdYJFj39VZB9NmlIDKA4VjGKc
+qhGGID4IxT5LSZ9qcTet3aRHM4dzXnMFAUceeF/ThAoVOKUve3aB0MnB3BFuxY9QYd4TKNloJd4M
+KRij0Ogh6p8YPl4Ht74ArFAyVYeMOLwQ/1F2P8HMeDbwkZJqeisGsMoqiRHknIci+WfAu6gj93vb
+TwyK68fwqkkw8Dwx4ahxejuXf404Jt89sGZ33PHvM+R7IOzBygaaIxPCT+qlWS9cLtZgvGrE4+ai
+JqFE0hdH+GlKWzrwUFm4+GhDWMK50kSeK3/0/znIzDJZ0jz+btNbbTuXW+QSNN+w8Lh3a7uWUHc6
+azLfAh7Tcbzj7sMNdcPJ5dQwb8RPUj8FbObwstQAY8+cRd0V1xms+C4o8ImE5jUXhyGtLlTDoX21
+xnwH62DxYsZXhUMATz7fgMC00TNgHmkak+/lCxDKM9UDC75eJE9VyobCVaN/amBp71Cp2NO3K5Yw
+6ZUVVfwvcZ9dCT+fcfdtf0gy1lNuxO6kiKqxZAvxiboXkmJ4ZQ495MYCHWUVS9j2FPd5QmkTh0KE
+eQtETk+Xcj58kZTdq5eSa262OMZH+QXiJ/bwfb2m3/+XdPn1B5wSXAQV7udweqFwQOKznUa0LXvk
+R4QifUDOAvtpbMcYP9toilGfH8Ebahhgg9PYBSZtxrRUyut254rEMOpKTbEvG90GyOnBHtxbDzjI
+dcB4jGdrq8Ft+L8/MfjebF0p5dfUK2WY7ymNs4ArgI4pm75hFbC8PXIhoYVcARiTMxG/tNEcHLiQ
+kq0j7eHAGpf7J9SOBohs70Uat6CbkHaCnISQOa/tsgEWI6B9x7Y5oelotEId1b4ZZRTREardAqwm
+pzMVjc6Gz18FUV///4uqcPL65cbBspDlNR55XArkBQtesbCHpoYBuGLENB5uXQ/0nP0/MZC4XHYQ
+IQhLq+l2Req9AF2zNMsmwP8FtggJFsHrbFI9Y27FE1RHmRpqfGG03koxSWZdmE1gCVhLVCJP6D7u
+gXB0O2DUwxqfDSldBI7PxEHQMQkvgFUOi2e5X6vF6YD07iY8pgy9GgIKtIG1u6S+nUnFS/MiHYKL
+OTNMk4ssZjI8qQn0JKJbpz+OQdQI/OBBIvsT03jxdO5/oRg2Iz1K5loIG42emPh3FyV4YKW/fuhN
+tHNix3TT3BWC+jEQ1L+N20opGssUkKuCeU7L85Tn1si1r+t7c7TFnvOtOQEus1In+yjincm2O7qH
+iG8T10CtDxvpXDU7rKhRwDQCPFHwygkgCRXCKXizeBIgOEBmpGmTYjXUivrAX04PWlqlqYm4lttz
+StEE9sfobRxx6Strv0Q9bNTYc7eYaLQ1cnt05HrNPuze8oUFxp3QjL/TR9w1jYHdxwHuAQvFNowh
+xleXwkF/ae8HYDmJ/E6+ZQlGZiCZ5/6JLdr8XoAMOCKehMGTfQAgeDKLK88BoQkYMEQ0HAK04pqq
+bnTyBUvBJhdXx6QFWdWUIOfwP0h7SztPwo/rZrrg3ty/cGDF48crPCVTer/9c3SM60+879kjPOaw
+vuAR9x/qNCku5a1yVDAUapOu+I3TZHVB6+dVBC1x0UHlMKMnkoH5Ln3ZkVx/riX/x1rYNtZuPAO7
+eWWcJrcOQ2YuVDHkXDPJOEcM1L767CiJagY6hrtTpFpKsnGk+KalFNB25yJ2+N7id4Ra/r/ulI8a
+awAtih9rCT53QrFANalpE1QZKqUcWJlQQJXStscN7Nysj5L//OvkL0Ax7ghNKp600Dwy0JEvZTaA
+fFnNJ8lg9fTp//hGqehjKrDJaNSiePhpyE9t3rvcdHyCEji39V4E/uAtf+nAPTZCTHHa0aS8+jNI
+ZygI+CBKOujXlwWg9jhEOQkXHXS020eSBDKxDnetLIZiBiWLWnC/o4FueviA7w+DTzd5ryXbRsyP
+3svXrTo/AQ+n+RRHvlkmm2H4N2gykRBmelYhfM14D/O1gSUDsOX9H9gDiDsQbYDxj+uFGy1h7Ekh
++JZAiOf00l4eKutvsXwCG8M0Piz0B9w4b6HyTjIutHGLXwVh3ghItDLb6bH4nb3MX7+TLDMPcKcb
+WPUcsP+zihC5VI3l0FgaShF85ntVGCA+5Uh/n2Xe1Cg0eI2VloScaR02kFCtnbEa3wsNXx18nQPH
+8I0eAWp4gB1n4Py/6vvAc9hsYfVtEb7G6ex1Ne9WIelkcEJOjEwXbqLw9PN3f4emnaydRSMYPUVH
+B/9qPvhZBm1F0tyz2Z4GtmATrXM84/v5DupRYW0L72x8/u2SMh1F5Wb2t3sB6MPxQm43tJsoQCb+
+FOcTM1L0r3B58cW8J4rD9AgkSqtbcFY5J5Ppt/LwDeyNGgIMq1hqNUcxM6rUztsqSkSZdT4ebNuc
+cYAz5iK6bUf4QIDu4D7U6K7x0E5HC0C02YUdU/PBmoNzLqi2wXgGPOHy1TujXXhEqBpmESGzVv9Y
+N4MIuVFnzTrWKcR5qYJNih45LvqbGVzCbThQdfPo4bDOjAyvqsfkbvmmdtTO713zgNJtdNJKyl/2
+ESI4o0fOZG/8gyV/7cx+trMY7h3agk4cTyl4pYOAJaQSoCcv0lU/4bF+/d0VJ/WOWYoAK1rIWlNa
+8nzYuFUqCfal5dtQq9VAfTKeeAQdmD0RObCeuhomppt89Z/L4sMFM30rytM5+N7sq34dYRPtd3lF
+sGRAy3xmL243yrrMLye5soDTdVRqt0hENC8g/2yqtiRxoD/JFMxRyoLf1+sVfXv3ObKPfeDd988l
+bIeS40QsU+OS2R8qgB32RRaSRlCpYL0cN331tkZIy/1Z/VlOmkhrCrzO2rh16QYfHde09YIfiHNz
+A9wvKo8XKsgWuDnZVb3yG0uJ0oGZ8cIvpAOl+N42MKigjfMPyet4atD7DKv0C/Fim+HC8JwcbzHM
+fs/CqNmKb2ex/pz/DTgyPIqc+jGb+NJ+QCfh2FJfXRt14RPkyloT2M9HSFAgw1OVRfKpA2YkrYCg
+00SYAK9uHopkdQmfBbu/bJAM9Rikl6mqT2gBRrVdSe0Qbclw1/7wI/aqrS8VqrNMK/kEWMMRNDrq
+RJRCwbe1GS0mzj+DgF8z0Eg7MOv1Bvs7kedsPPh6K7uCuk181m7aodwyo+nOHH6qurNjJSrvm9qL
+iQ2VEUtFxJ3eWuHdZ8O/tySgo8jDiXGPW6aR0dDFY1dhAIJFp/tKl7zRLP+1Q/p0Tn1J5H3Wv4uo
+NK6k5PNaJqBUAy4BBwXvNSFQLHXz5jibs+W6ef73kudZkYlzQ5sCcK9IyqRkv9rf5x8DvT5xq0FQ
+XrOOPGghOOtPMxnaXHym0RL73z+hINxIwArvBUeZY0ej6uUk8++nSetE1n5kYgb2LLzkIopdy+eN
+6B7R4mNkDBK2PAke+fcVPkGqpAmtk2AUBpka0cAqmQwlB2o4EprCCSQ1iWA2S31oSzO99aFDhI5/
++2mEYa9nGArsBeLchD+3c1625Lwk1hW+tEYrB5izw/QBBQAQ1vVyhEnzweV3Y8nRQwIVsDYbxfR+
+VwzE+H03XdjgtvqP74Hlk1hDjDO9pocH8h92A/HgQSFv+rYWLIkOBUvFAscjgy9PK6+kVxkuQL4Q
+dCrsBZgElM80bNZNUHwb6H6Zy0oR5bknYRr4WNFUeThTdFmKElrOkV4reiwkrFNuoqut638Uyy0v
+s7v+zJwJbk9tcw9LzMDx+7CCsN0AaBCE0NltVN9dfgHBOhJYTA8+8Nitv+eckarXtew+HnvOYOV0
+Wg+EAC5x6/ZTlUv+gx5slf6EHUywNGqX6rA7zGIe+zzPECASk0+dhG1BAcpTomzYzidSxI+ww+Aj
+b+zB5PG1bLdkEOipxmC1L79n/nYED/tT53ZtUcA0mcDMnrip9/O83u7+nQArBIV2WTXhB2HwfFLg
+CsOxsbSu5sFkZ6Y6mT9P2t1w9vnmtDg5UP3YZXlEowwZDtw/DQ6SopOO7qSu5NVo7qmJroXqLe/A
+vXBkMQfRIJBi1SMXtKIYn6Rt4hGKkFZNxkhKK5Pa5MKWqoO2pp7l8lRMkphdsl/oYxctRyBfUrvo
+NOff5ZeJqm+K+rqK9i6C5HO88jd8Keue7daCcCnj9edWluMsgUgLcHQijA6dG7lNcYxKuz/I0xNy
+Qv2R5wXQdlsOIZ1jhsvxEnhw1Z4LBrnsCBaDZ0KQmkMR7D3z56ovtQ0fFYRaznMSHeRyaorN4mKE
+YvGk9V1HV6RAXV2WbxR9bIue8I/FOI7/+He5q6lCUvWTfm+Q06+fKNuPg+Q2SgkM2Cj4X+gU3mjm
+71Q9V8HZyyeH2sqMD6bU3zL1pBykwwuTfUcVNWUPq4q8LImdofJiTccX0ABhFVYqiQUm2bHfO6Fc
+NFvSV8cp0fsblI/ZmmZiN/y3HqwwkQn0EhF20EYv2XwDS7NcC7UY+08QrrMlgx0/PmduRFrUeo/y
+2tj1ox5nClM/dObry056GfyHv/4pAtZMSDhj89kjy/bGBOU1xy9UnaOhyrx3/cXsw41FHoYBlnR1
+4WXdck/gkA8uyGnH8uMSpq+2zHcLKaDfESWkFX/WQkZ1PblSiJbt0j7KnXGbLMzeZncojhZmyguD
+IOesK/Qso6b5KTHhms2ZWyykR2MjcZviNUdR7zutP+z3tLKqhJUfIEOf3XfeoSVGTdGYf8m88rW/
+c+X0VQxaKkDSqXxVSpE1XFmjCjMXw2HpuOK4e1H63aU8R0Z/kK9Tq2mravGArmxKntsQ8k3RK6Gf
+TSQWvd8Q/Vt0QwbBlA9lXxn+4Q4zeo6zPHA7MTSHax+Ww3DOnfrPjZqBLs5zyXs4dZYN5AKEwlfX
+AF2TK9HVAd8V8hPyC5FEMBZBy5sb5DI2Zy0BX5DFvHbaVCthTgiaPWS8pDoqdnsfZ7ne6qR6kVBc
+wtxc6r4h3PMUVxFrG9Vqh5lWLuuZe0zFPUJVn2BVdy0hETuQVbdBEFue64Yo6Mo3Yuuv13RNcFiV
+1Uf3X7FMeFbxCjCOp9GzYgNJhVidW3yOxyhr4vat1tF1EKT27210/DQUfk7/wByMJd8AXTlH4RN6
+mGBiFT9nAKFyf1a/kI4j+FWcC1gX/X9F5qzSBGUey0PnrZBWShvqLyT9e79R5Vp6J+cxRYGAAvzW
+GwU3acoMVO4LD1f3vqBpFfLTYMSK6AaxpDdSsn2Flw/oIVFrRxmzOwCDQTC54fGiOwB4U4+8azh3
+OnGqFNoZasjhI8EkzsZJaQSIcayZ/0awr9Obrjrk5voqVCQQ80XgcxhU9rOlhtGJS1vDt0wThBew
+tjUNXSj49MBi6UUXo3gH5x5goR17EAb5kjWDeOWNwY3mZjFPlKKrK+io2JHkJV7MH2YRRmykebB6
+8WfoQtNW3R8b1BWWUYCJyl7wPSSvZfNVr3zZ638niJktRbp1itsW/I5zFOuXLbabe0U0KkRI35JC
+6V1YPa5o8W5+z7aqWzxpk1ZuVKVyPz+kJo7m988Sl2YX9fW6lVNcEiLEEe3f3g2THsC5e22vfew3
+U4S+s6u1sXvEAEi+fIaTxUo4rmTY3vQfaGVqN3ONWzSGaj6f6RWJwmfeEwNtq/c0wTwTvjWz6ekX
+BNn2p6VRk0M76onynMuDWx+x/YsMitr7BOLTY3lNxzwg73NQJdpkiESuPeTZ/J6NlBCggSjVYmim
+K4AFsuRkd0+YNgx+34dRB1tl6iapHmBymvTR1M9SPCjPiwyMHJvNoHFMiXY6lF0LyBkgkSYA7FBm
+qmCd24L03iWfC+Szc01jUhYPrDECqGDkGmu1AVZI9WUZM8Y2ZMzdQ4wX2z3CqhsAZ7UZojHFgKBK
+MQwtTrH0bMRtC3hnlLE+TcYRxs8Rid0vJfqzmGQi4VePhrTtsO9bJ2XfPgaVi4dqkyIcHZ/ND7zO
+wEcXSY9OjAuZczs3Ux0XiUnEy5M3Mn0zIq/zkqoobqA7bl+jlyd7NOfcsCnLaIJUxSQmZkK8vnVP
+nwOhVBrX8r63SX7xBDh2cIxGvYuW0l8EGOuq0P3gBLB3O5YJuD/A0a5tK6/4A8yMd1L6Mc/uCUve
+/9H6Xq1VEX2Lmb5924EkitDh6vXPhzfmb7lQU5IPsOXx58qhUI/PIhOU1om0PqYbqRbjxey1GcCG
+34dZL5xIoC5d9hr5ganhBw5HCSjoaK5Yn3FuhuC0TSwHAOa67l8L3CLFOj2aPXxBertGNsYshrpe
+7H15R/kYfiilbT6NXP8MOcTSZ68njGe4dCPTR8iXFLeC0e+xSqso+tkbZUKBv0pOGqglajjweiqg
+VHZHJRCl7Xw3DXPPtIE1gxPs06E8M/7mCeppIgdfd1U6wjXeXzXbkYwo0RmPYmBZnNe4KZTV/cfL
+Zb1ItCrLys5XaeeY4DOhs2i5KtPKGTL6odfl0fl4YH3aTb0Uq5lyCcRcGK1X7dHNgaQEBcoJuZzr
+JDgnutCIDhPVNZhl4jProy/uts5ITzAaiBbuYySKgyaSwkEYy3zGis9WIcVNm+lFiYV11mUWa8PA
+dYAI/S5uWNba1qqfAyOVI/7LAaDbCMyhxFh7NOgFrsVtIV6p0vId2k1kRTGvC7NCnpPIeb9zQGHg
+YJU0XwryVT9jHMW32GwZT2XB0i275m7NQl67B3UNGq+rnQA5jc0vmt5vFsbTI/rXvdGJw2d1p34S
+Vgfizno/Hj43mWneecIEJw3013ysKvLV5msQ/qrTcNb9V25zMJ/0/hpfVOa8xL2TPq+stADmvNwc
+b/cf6DpHfEnS9cyYXYKjvacKfu8U6h75KZ5HGvxGcibYQygPGJPkyPmYIXHVcyoV2UddzEEK6xc7
+HYJ3tg70V3vSaMqC5d3ZjEdHLgn3eOQBm4Y7Agjgq6+qw+JcdMrgcCzhNm4OC6/ivMVAz2eZZdfk
+29xyCUisB1z78HcBPBSC8ycCR5NWSZ5FMxEyceZ0pzkdLP4W78AN/jLQPRkUtnsYZMhqo0YDK++q
+NP1cQ1N020+Fkm1H//4rJ5XEnQQxxJdtETQh+jG0Tt8YnAk/bX3N823FX2KovTgXtgP5OkB2Ovvh
+6RwcTmeoXheI3i+6PMwzne3KqfXSFNds9mwxXmz99sNae4RjtaDvFKpEQ5uJcilMTJf5AGe32Xel
+aWxKUJBdeJKF104ljgvx50vhXbzjWaNyAxYq3uZcCfgDgxzFZXQHEykkt6EjhEqhn11T3n7Hf6YH
+Ty3BE8fmJ+ltBNcaq+qz1CZpAVPw4PSk+5E/7MW/huhePDNZlrThbBzlGZ68LMsDrs/nKjnndg8z
+47mREb1etdYHhEeatc/0XdOdM30dKFndjyHTenf+kyrxYddWbsIJXo1f8cjmSffJnOrScygO7LAu
++dCtd8qzO+32jKHsx1sGllRd0G71FHnEgE4xz29WlW5BfvBP039O01LY5tKhgL6FHDLDjiu4mseH
+iulhFsNvG0mM/lxTKAhMaPj+9JFGe4iOgTWT7asuhGgvGlx+WF/h0tfolKYGIc2jmCMnjRRdgUGE
+5TcEVKqPsEOiDPpsfjnY/yuWClVT7Uje8rIc0eDbGBMfuquEBiobbIJXZsNCqhRG4mVp6ZyMHTy/
+Y7k757vB5Ghn+By+S99dio77SruhvQ0R6t9JLIaKL72iO4LLhVlX9JspYW9oiICZXMegr8OAiDwJ
+2ILbxhFS6N+MY43vcK5dk7Yoqv54ULleeMn7iSEHQQMghxyrRIWThr36pweux1zdxzS9KwcQPcW5
+7F5KSDaA+RJgQEiljW28lqmMTKX1dfNd33/EPa3Fnv3vVN81AFTnhhNoZUHqbONLAd85cTpR+Hti
+AnR8rCQegLX74t1f+x9rZiGQ3kofaIwVo6SAHnpm/I2rGkCwpz9gbbq4rKPIJ6cmaTvwk8GpCDmb
+dCKDWCsCLjvvBQIc+8xgzq3B4ObJL73LlBUCGlweXBUMwkVKiHuE9qogcFqYk5xZNU/Ab+jgyUY+
+q06+kQTLQG6Y1wcVSeOnSI0cOrEQ8OvUHMOOW9nwFljXwWfr8XQH2FZW01QqrGW3xv5b9I6+9UMu
+iiGn0PKJ3HqQPJf/frXrh7SpEi5Ky+8enVMknis5zNHfkMhAzbhAW5w/r70w3r4znni9xWNUG/J3
+K1KxRAMHDj4ZxQmpAImogz7qa2OLjNEmFsV5b6H5DRafBi7F72Rjwh70LHACuDThTsrEvJiOjw+O
+HwcudjwNnkCbMfhQgkFP2mmnye40UMIAPbFDs6295NGPQObe9L5+Mkf2EP93h3FyuY3GKl+iyKpT
+NcxOgu02RFqPKMEUedyza6sPEzbcGWH1IXiArvtBbPh9LKbQMZByMshIk0wZ/CuXmB6VjAOHpLxF
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequorderfieldTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequorderfieldTest.php
index 804cf9c4..5f9ed406 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequorderfieldTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequorderfieldTest.php
@@ -1,134 +1,214 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-ncwWnFM12G==
\ No newline at end of file
+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
+BmYgDg/SEtZbVBFnhJDJffcvjbO=
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequordernonstornoTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequordernonstornoTest.php
index e3b0ef15..6d70e8cb 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequordernonstornoTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequordernonstornoTest.php
@@ -1,70 +1,76 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-Xb5NlEVJ7N4=
\ No newline at end of file
+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
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequorderstornoTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequorderstornoTest.php
index 298be98f..63b7529b 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequorderstornoTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequorderstornoTest.php
@@ -1,70 +1,77 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-bfipi+An8eS=
\ No newline at end of file
+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
+dWZ3smnJwQ6u0tR8Im==
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequordersumTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequordersumTest.php
index 50028f0f..7faa212e 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequordersumTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequordersumTest.php
@@ -1,86 +1,189 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
+votI96aDIq+gZVVIzm==
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequotherjobTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequotherjobTest.php
index 0998a952..36eb9966 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequotherjobTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequotherjobTest.php
@@ -1,114 +1,177 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequpaymentfilterTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequpaymentfilterTest.php
index 6206ffe0..27262fc3 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequpaymentfilterTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequpaymentfilterTest.php
@@ -1,68 +1,103 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
+bq3TZG==
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequtimespanfilter1Test.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequtimespanfilter1Test.php
index ba39702a..2df26125 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequtimespanfilter1Test.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequtimespanfilter1Test.php
@@ -1,93 +1,186 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-phRPbe1M+7ptbPGVeVGlak0=
\ No newline at end of file
+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
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequtimespanfilter2Test.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequtimespanfilter2Test.php
index ccf0414f..39f6472c 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequtimespanfilter2Test.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequtimespanfilter2Test.php
@@ -1,78 +1,77 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-0Egvcwjiim==
\ No newline at end of file
+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
+jD8/S/+kMEgwWf+PZm==
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequtoordernrTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequtoordernrTest.php
index 6d628a9b..f27ec95f 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequtoordernrTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequtoordernrTest.php
@@ -1,67 +1,83 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequtrackcodefilterTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequtrackcodefilterTest.php
index 9339364b..187c613d 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequtrackcodefilterTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequtrackcodefilterTest.php
@@ -1,69 +1,76 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-D+jpZngSKH3XTrLE0koeCrj3V2NHjA/gf94+
\ No newline at end of file
+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
+ixy=
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequtransactionfilterTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequtransactionfilterTest.php
index 788b61a7..46978f67 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequtransactionfilterTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequtransactionfilterTest.php
@@ -1,80 +1,97 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-HR+cPyVqOYVlKrS9zZ/t1BH5GgWCo4cASXjrPxsujWFou3ZhWkxpKOe20hPB+EVKWmYijzO+VpvU
-+GEFjc1JpMBHm0MgRF7wT3KxSQX5TPfKKWLk8Bf8c44KWFKhGQoNpS5U36IXfBS10p6//mVxYn5Z
-ou/XB6e3EUG+38EB7C7wuHzZ0dE2+tLOtqYxj0HA4A0QiyT0ikOv68dK6ip7zTREGIFYpmAxZS7d
-iNLtcVZseMCXPTPV9bexhcaP6X2YLDDJmOo36ywvEA+1lqlAa0uOlE2/dQ1etlziKW7Cfu1YBO0j
-3x53VNngztNCWM7mA/k3orEEsJiqjIdyiu2TGwlyg4fVf5NqtvsCAs9FHLzjPjgpU0wKnyNB1DWQ
-8QwXRQpG44RbLqKujMVro+YeWvIQb+cwmie3pyWoaeA2ISolOMO7WmtxUEkKO14VM23InueqdiAD
-EsPjDjqrqmhwZvIB3AkHWm14Tv7+fPPy2Zca2RfNVE3KE9Frzky4ei7w9fV5sU6YJEQahDmsKqM3
-m3RWwF0hnWvzE6F5yR2bek5O4K3zR5Eldz/u4InYniES0KMt5UzDgRqctQNn5+9lBqdSyldYH0g3
-VlZukaqT843ABMxgASxnzLMlsWrIDrT5X5fL2MGOHZ9cUJFNl33/4/yDm37RjyMfTG7YlMPlEfHs
-ZzF7aJiiEhgoKjfX3p+51/QeP+bUCg9xou5xzAfCQYSpAMtO2g9/3LmYTXqmwQ8T19PjkqHqTaXr
-JILcmJ2ERN/5+6XujPA27tjj3Fk98lWDACZRGxZBBM820FHBVxpOBZzjVCfoJOXJ3cqjMPhTDKPr
-T21hlt8CHg4+5LC9tvIamgXCxKstqDShIls5ot+7dyjUXW8LjJW06mLC2wVGfeptvKZHr4mDzYZ8
-lakCVfgiZqhmaFOYkRFAhWmtx+oJVfB65U7MUP/fbyLL679NbZNujOqecgWeNr2h/+BsB/mq7wSR
-TEcJ2QMGfsyNNS99Y3TDI7aYgpsJLMmuTa6pbFZjSewR2iLyPbZCoIxo5iHd/u0kklxb4uALEF6O
-sFUQXqUU7euYjwUraXJz2dUTJsRpw1Q4KgD1lEL+wi2oxINDYc0Alkz+L4oAu+RK1nb1Wzqge4y8
-3Xww+3kUCWuj1x7p8DiC50OgNkwhSCVxQa6se5/nPPuocxt9pDJYATg3DGfObddY1FSk8xhQCKt0
-r72htSFA39xFP+G8avUjRFbw91UipEJjKfAbpMawtpwKJPr4Vpjy1VxRRQNOsxoUiN/VtqKLCT4f
-bDkmMM3mz4WxzRLYPds2z7ZF9wv7QsqwXusNwQWuV/Ay1lRWk+UNTY41z0Nkwo/WTetroP0sbZlx
-hb5lQ71UjeglBn8TUE5tmySbNpv08i++YxD/xR/YCCMOGYn93BilX5e/2y/glx+cKRZHDSsqOlCI
-1hS6iYAOrtv4xHSGj0vgdWKqUL6BiS9UwK7fXD8M/qMfrctxw9g1eicfD8tVzG6VG/U6txl1jQzH
-/Anqi15RSKW1ZbirfCMEfel+FkD08OU50foUObtO3DgRLtJOcNzX+RbONiGOTb8lPA07Bl8/q1ub
-EI+cR2V2de3QO96fUG3+MnrMPyk18MJi4AKa1OYVmu3KsXZg1GZYw3Ri9sQjobrNjCMTZQLrPONv
-6X2qaSbIjRt/XAimNoeeYxctRly5HGOZGlCHYRTFtcqX1GDMbBmclURqJOcRnBvPqXXEOQ747jNH
-Ea9CeoR8ucbDDW/zzl/B7qPE/u+yc2FssCLfE/knMbA91emgdHUNXJUPINl+zWy251pWO3UETxQt
-GfUadAwzep1QoYW7ggQvkYHcSVzQyHtXetOL3IFCEbjLHCkpvqaRFZOFjt7yRsQ84Xhn01R1IQP/
-bZ/Vmg76Mk4IQRXwzedDGNteKvnfT9uf4t30EzSVc87iMrLxxLkEzm7h+92gbPAOgp2yZNWnu9F3
-Mg5jHFXkjLXUYzqvRBUxa7P+UVljRTlqAkuEWQgdcKRPHT8zmT4k+Y9RwmyOQv4YujqtAW1bH6te
-kDMAsAJuRf6oYyew9wuTJEaq3gpdu4jCI+h5LkonsVlNeh/393M401AADpraCUIIW4XiYdyP8+iB
-DzeqdnSQBeNIxrXjnFeaP/bMNPdFm7KK8uL0tovFHB21ruKUZHJlpNFKdbZc++5lFOF8tBEuVIv2
-RYoRT9o+gOmOXBhUTYwVmzLXPlx59dw7I8tu6L6C+u2SP0csw1xESka0jTC0dV2ZDCbR5SN3oTN5
-6L5k8Ialg4xKgXKwINkVXU8hwdf8ORqlumSmQhhUR5hlYnREY88+Fzk4T6ZIxM6292GSrxGv1Zi+
-e+yfiEF1v4QKG+rZVW1V4Ke7ctRAXIu7ibue29gg/8vdLif5KO9SZr9WUZTWukU7nsG+NBa1JC2c
-ecu3FgSfHiuvmwDvVUTXPoKlZPNKl/kt/v/VV8YhhLlKihC13rPtJhNQ8eLEK+KC89I4cNf1CAMA
-3m/Uck9y9nITmqmpesQ7gz3gtVivi3scznnSIuKSKi0dTJs/t2H1+3XKluHJvA1Elma0p/f18PA6
-4JBY0saV9GxD0f18vrjIyA9Oim657d7m30Cti1JHPw6ObwH74lTP0w+G1bLDuUAT3d/VfHdudPDk
-CL4a/eOWLPQIbcjXB3r/QRH8Mak+4WD5Mh7tne1JgqVqRGQgVksg6mm8J+/vgiRe4Qpw28o2yB+X
-37hJSfyJcVQYNZKxcj2Eo68Qnhf+y5mIdRf/2LsAwunFeQEXVfVdw8r5mNTggjZcxIo0atwXvJTi
-uXDurixlWhuCncgY/so2hecHY4uDNPV0QQBdMvhCmSC0YHjKYTiX67OB0NNCtI4uVf+q3r7ALB96
-uMMQjGvH6Pj7SunTBuGoHW3L/8BZ09Szhn9PfbiEhIKsyP7Vs0EXszSfE0gqQO/SjdIvh1pdKTUg
-Q0L0MGj9OPl87/aqboTl02WNfV+17il/5gU4Zdsv8HEC2vfcDAnCwU0gePBE2UtxMNOcMwsNviBM
-5O+N4Q/j1ulwPJeBlc/+OK3hD9YvQSMny5aeS3GqUbqx/xsy0b2GCELq2BAU/W3BemgjxbTIVjpe
-KvDtd+lytVI3M+f4sYwUXmruEWpAeK0Ke2bXAwICaa+XHJ1Q4oqGqXR7EZi/p8OsJXKmaAJSTQTd
-S9L48uaRGuYi6VuEQ8+bYYjnj9qgUXmWZGzapfbbaI4DB1u22hl/+eTgzzzkg4spYTBJajeFY/+U
-fPmDUafiZczOSz4EXC3/6XNYJEPc/83ggvExSfQ+Q9dgKMqsX63dQDTw4Z7mCKAs480x2hR4lWxr
-24xrrdXKeSQwxGi5GrW1e2w8s/JPjfa2v8GZJrqo8X/wXXE/6mx2V+L6DiZXvGVn6OdKY7i1Wyva
-cyeTIMqIzaApPEhFDapVY1shKYtEslZEZKv+x4HlmMKR3OgxSyDLLCISZWrvYkBAJ1eWWpWCBHbZ
-h1fOcr1PP3MsNxQhSfXrrCK1yVYZn3KBdYazuQ1yxvZPmmfjQ8GA+6J/RvkRsYk6jebNN/MDaktr
-kTnn9f9nBspucMSF1bTpVYd4IEB3GAZGmu98i2hhsmTUJElBfJZcUeN0p32vq1W1chs4hWjBt3Rc
-eOXotfwp1c9cVzW+Av3fz5WCfONuziomUPYbX8InNHVURtGsYuUyfveM8zC1BS87nbHSMhh1j0bX
-EEwNDBv2B9G7SXbduk/ZpmmwnyxC7XhSubWUphDU5GP5LJcZ2l/fH6OSXUHVRQ4zPOPzUJCgFu6W
-PDe4TUuMpYTUQydFvL6Qtk29OHhD2HOLzQfwO+V2IS+Eeyvstl94ansFzOn710Ae10WpCsmqHcXe
-Lpxa4Xd15f/uMILtrB+5P/053ERveLK7bRhzAKy6fAJnGh5sKHGLYl5qX/v2nP1CcmehR8yMrHo5
-IKcSG/uSyK7NsT7VUAxo2HJ1RHhdQ73nQBxv7fqPN/C2MhokZdkx4Sa0pnPn3qRX6gRQHXHESWUQ
-It7xZ4IbcuE0Oaenekfx7XjYxMmpSptPjEryLIESteAzD7f+DSBxSMYH+QR0raxv4GwLQo8AMISE
-6OM6eGq6qfLo/rGt7cBFYBfCm8t/+9lT1bgCreeA9/Yj/KqR1ReNgukEjhf23oNUiNqcXcOEyURa
-EK8337nJPzsEhwEvSoCHL4w8WwsNseRUEhL3rkhk59FavhTG8c9ZGoLYT5WteejeBLAJbJ721i4A
-1aJotULEM3GMWLLmURVVsTUPDGgh9ZQO2+pGJW5U7M1ur89iWepaMSYi91zGWWIwOupz8IdwoKI8
-qwL9u8xVHwkc6xfmQKncAgZygJB0nI5D3cRZz3R9TkSo2v7GIdtulnJztGlYAaPTWC+yemRHvHPg
-zkOkmDdRw0reV8S8M4V6IXv8HI337mxCdNEbxzoPq/PX7MTJkGcaMVmk1aLL7i6RHnjENQMDfepI
-fOgDBNGL61Eq6JR8RCdZTUn2IFbcaPjULTA8vGISZ2N+pFG/Kv8PIP97AM5Amj/IQ9EcqfH1GEGd
-HzyDySrVg+7Bn0BPpGAph8545lZuuWRsHAuHYkHqkp0XVRDqIeMCaScFIGifp9A+iIF1gUEOi2r4
-nLeo1sFaiKFm/WDqXFD2lqmCHuHgIDTRKAJiqs50uRs9AZfQig7YeTnS7IDB04dXmkU5PuOH7g4V
-eJWpISBig0asoncd5f2scg+8uKuHOJcKn5F1dwtFm8Eh9xwa8udLoSxG23D+cDL9ajq8PG0XG4Qs
-hajHeH2Y2CQuKTB/GVzA1WJolagdb9H2bBEPOwpZOPpp/ToP/FdWFqWDQw9SRnYFkqb49rQm0pqw
-0HLL13H/UISYta1ERO1MJxpHPIo1P2Ygs+OGzFuVbgGFFQZir7R1MYsf8D8KrR8+WS3tuy8o3X7S
-PQQGQX2W8hXVtvPKtSAvWubenX/7CfwzW1jkz/24qp4LLcoQhFJGvkLgLQ184L/6td9Z+6HTMSWZ
-Paym1hOVIsOw2xVs1MDj+cIDSlm/nkwW1ZYYrpFwDzMmYn4U6dkeNHfMGDXKThN+tSAlDQaBXf8r
-tRMsI9UJiQhYhDZqrAoPnUoDu53JQHMLDVZehLYmpTrLWC3ckWCZTtq6Ox2hJ0/MrRnN4FQOofcu
-9wbEKiAsIxKM+8TIx04pKnlX86psmbJ+65YuqY9WUhu8Ue1/8aOkF/jZBihbD6Gu1K2u6iGgTFuK
-ulyWa2EAmWAEhT12xe+pP949k/G1L3G6hVn218OdOvB8JHDEzLTbmObWQwfta1yJscqv/khf9IKF
-oCFQxzMS7eyGZ2TMDUfBsCBlMphPaXKtUHDegQjUsiigCrvbK/iVIecOZH1YR1p/u3Rm29BauZ1m
-LH6dJBhtlhygAbK3Ax/a71wEilT0qmPv3ErpRFvXhTZd709Jr+gVPMNxkwjHuE6Fhaf7LcSbgzCE
-vQc3i8Y/U8CAVWZioc72XWr/2G8qEXTxL2UNqVFXo2LK9W1tP6OUqnSw5CijnRCll+Ku2LOMB+Za
-xnRkhdHaHKu6i4P8tOCDU8Ad5u58ODsWXYYD0dUnaqnhTWvllBMTyo2sSpMZjuN/h0eU8r69+224
-EH23vz6D2mIDE8C3BVuOA3hEw/N3XvSjdFuD31aVffs4sjvgk7gKxf49BprfpB4Lek/tPqkDn2Y4
-12kwwFX2QV6JNnTPd8sktvaDrG4sytf5XbPbrRMjf6VSvPUodF0h30==
\ No newline at end of file
+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
+nwTgax10CPj/GSO8j83Onvm=
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequweekdayfilterTest.php b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequweekdayfilterTest.php
index 1923af29..5fc5a0af 100644
--- a/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequweekdayfilterTest.php
+++ b/src/tests/unit/Application/Model/Requirements/d3ordermanagerrequweekdayfilterTest.php
@@ -1,99 +1,188 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-mfhB40gf+oAS1tO8wL/uhpqFGuq=
\ No newline at end of file
+HR+cPutRhk2acXFNiGWxmmdWUiemyAy0xQe2T9IuRP5F3Xan183UtuZ48Fr/0Y88y3rwhEjyhfZI
++L8mtRA/QdCCMjbBcXfFNBveZBWBig8c2/KuaZOFKej4cx5JOethsKSMddvvpB+AhZGOsHxgUGFz
+Ls3K/XRr5e6iaZs6Augu/gBIKzkfzRlyYJU0tqly94nnPGnSiaWufe2GFvdwrq8kgGY42SPppZvJ
+OCCVx5v4p5K42PHRrkmOWTqRQxViRzMKSJVmP8HMeDbwkZJqeisGsMoqiLLhmf5nmElEboXVF3xb
+VQzL/xtvlaS7cymIdzssLPSKZcSsVSRq1/1YTQf3zjHfL6vkBiuYPXYmVHpFMQHpfPQYWNIkIWri
+oVJspiJZvz4o+H25Rz0+Mxpva8QB9PPBnG8nq25G/ZNnrh+O9ZNuRTAEm635HbKINo3KcJghi5u5
+AXbSsmzLoNwJnGE6DtHAeRpn6O96CXPzaWklvy80MVsJe3BdOrZABrAFxXLJq4bB8yWM3s/nUnKL
+XHTJzuLVz1iOWiQ96xYItnqsdlKj6tETzrbV19IQv2A1M9/quYsVLhVLcYqgoOfGXLk7xmK2uEPO
+5hAN492cg63z9NIezLVa/2iVceiZ/7Z4tiG1w4vg4bR/hDzHLIs+f/lKTnBDATFw43IACEW7tBR7
+29JKbVtlCMMkWlFOsCjSPKQkq70WDQpMrOcK7OuIsNuOYSNhmlEdw2pCfu5MBeK1QrctFsNwjvFV
+BD8PP2d3+5/QH92T+pdu/RmcN/OMvDaPJ2CMuaPtk/z7TO36spSVkNpzq/bBnqn88Iu4KWcQ7dlo
+uBaRLpiuJ52TxzBIkNZj+FKWEQ1Vgw39Srb0f9Io+qY8PNg4OTz85HJPcIbxBazid0UBQ+enLDxx
+6fw19D7dSjXvOKzWad7ctvYTCfhizgyh1cAp9vkJGgv7YSHop8tMhyT/4ywZaZzMDlAzptXeGmdU
+ohqDOXGgjtdUhZk/RZxVib2KJcLuVI8jBOAh2KKp3qvTcMnWBaW0RDJe4I1NSYTUrCK6gbaeCj6v
+9ReXQGcfE+qUzq8g/3arWgY95bCaa7IsGgj6yJuORGN/StEhu+DbSRQ9J0OMpkB50qbF98Ojwrxi
+PJVSLi1xi5u7reOD58rGCzM5I4h8RrRqqtCCa1BQd/QJnvOH86xelw+e92I9vWpT33bgjAhaKXgK
+va7wRyRgB2ShpguahO9sWEeZg/+q+ws3slpq9exOgYWxEvc2JpQlezgo3stfATtSYBIIXuPMCiL0
+wuOZ1V0WyXeCAfh3B2Zi/YTg9UyRpQ8YTDQamVixmZjFf3wH6mFEBdmM/sikP2YWNI4DCPBFV+TF
++Z4MPXwS/0FWvrshshR8sVWqLVuD3j5NQZFjCa2zoJfFYTzVM0o30m2VqCBrSYdRleWBcnn8H1ZS
+c45EA14kv326YncXIAWKxQYRi3E86crXW4G0bwmphMDYUdmFlDj3brj+xS1HzlxfX4ATK+Ndu8jg
+s+DqCEx0ke0LMJ1IZd5p/s0qmEjKE09VVKYnofC9JAaCcUXtQlh4peK6O5CZ5Rej5lJhndOVSB8K
+vDfsNQhxmkMEjkpj7C6ItGO1MZZsmKBuLkj8K8miShrSdUJkqbNlaS1Z7eoA4kq/FURLmNJiqlSS
+TCeq2qYvhTA2dr4n0rwANwb9oe0moklZ8vWV1/6SW/GqineIv4Yp/HywIYa7tSo01lewIO8mkion
+WxRbCw6PSwVE5qx+DGdp3F4v+3ShTk8p/+UmHbldpBFnROULKK66vf4FrwfFrtq3VC5GBoXXZA2m
+KYIEDJ6IHj2QjFkbTrDz0F9i2OIlzcn+p2/xsSLn3LoW2J5S5GjTdk104x3jJHxAkKK01Bmbuy2+
+50t0o+I0OKjWuHfL5LydzXFut0d+EWvE4O4KJXmg3BIswVaD4lJX1a01QNnyNCmsjPw1ghmJm6g0
+T4mt3JdYsKYBXLAu7clMEwjh/KssC24rUSF8FrgJR8HqKpqLbN76y+0B7SA2BSsjUoaQIAIPKxKT
+ZdS9TcfaaVwCiViSNgIse8gxehBtcG+ZbnzUV1pNOWOYEPlc8jMSMygIFlb9lyYWZoEmRNM/gDpI
+pYLe7QE4LUGroYSHwxysfWltzbz+rVP35xdEY4d/ddT8gFb1AKaXsm2h4orOIXk+ryn6e+gZq6YF
+0uiL0hXBR51bEeBvHDOn5JSdoM5iPQQv0P48WoTyr/p0dAR+yhUx+ogwk3yl7Ft3VKlbR+VVueIG
+7edhZ+5LHDfrFLNhOliNBVly7QigI4oyS9BkSNYvKnhSmmMWXqzHZm3R4FOwtMpt8RZ/Ue+6WGNm
+n2PSvw1Be/lfluGWDThPRV6vc6B5l3vi/qMX8oNM1fFcdYVztkGt9Ru7TZuZBj7skULfjsFgvrld
+c+WQ8jsW1cq7ZlKkCNFM65baDEKx8iXZEDkoDrlEaX5hDAj21VxXIEq1Iih1LhTrtOie4PYgxUBb
+8cUH5jdIcdXGvuNrl9jhegKPGy71WV153r9K1OdF2qPMLH3MomQq8GnhMYYldbGOZv1LFgwSLORw
+3kO0uEn7WiWecOKjorrb9PfCm+Z8/LET5O5A797RssyK5yyFD6zGEi5doryB5Q2muUOrw8tAE9J1
+ttAkyGr6A4ZXPdoPNHwF7YlBCD24ZipWyzcgcfKWKDmIUKQTzzfGfyfV/DrG8Dpq3l9Mo38ptYrt
+/DCGVqRVPDLJeEVgSObupypaKMia96j4/xhW2tXSOKgClA0pZxEueZKWBK2eKDKAacbGovudbkbB
+1dn0+tPUmXVwccskDjqv+z8B+vFuMaT1e/UAZO4S6oy5FcOVvVwlPEGYDoZdwrqSbUGI0A/+szA4
+BpuAeOED3dH4i55B97S2YpZLoy3fsKtzTy8hj5MvNYgJqVljjqmrhvz29zS++0GDqUYiE9lmxsQ4
+peGOEzB9SL7WygDnTt55RyMgs+rXh3yPk7G29PCF7jbK3OHdbYkzYW9cXSUn6tIPXREBJkAy6e2d
+/61BlnhsUJJrIut5QwIEqHL018Xs92SVPXLZ4UrZb/hO/oViZPbeUyA9K5cVv6/L5injENQJet44
+sE3y7F9U4NzkyEhF+PWdpBnIi3Sx6TLPR2Z3MuI3JwfU+LU2ko3volQzJvrLhLWDSwmLW7HaWW6g
+NtytYuOxwnCkd0iqRYGrwjNl8AQcAoVQC4Tse0Dge2x0RMqR9ZGim+YAU6LTeekFNjJe8fh55HB5
+EgzHkY1CMReFpwS6HE2TFUH88NhoaAy3N8S2x52v13iJNX/7bGtwbAoPMxI9Jc7aQRybac0ktgW7
+PkcZo+i9IBcCH4ICeV25hU56pk9gfqHr8tc4NKOBM+/RPkz2UzMHic0H+GtqIbuYGPPop34HmFNd
+bPrt/wUULqNd+p4/mZ61hlcUfratB23a2B14Sxny9dU5yO6B6cdxcKKAxGh43ulCuOZi+tVQTubf
+DG11EJSULdPsh7dAmQRY/P5KD+tAt+M7jxlcjc26FOos1UICScK5cqgLpwqjhq9OFmRp3wgUjz0M
+Y2SR4KI4UQcdCOYhEjwX76Uk4STxoFI3N+gF12LtUbIAckbzRYOeg2VkjC5/CdlRddRTgqkflvsr
+9pwHa7v5RdqKE04DCIw84iv+tKF08GJPUbtWDRYWbrzHPE+Tof6Jw6pkaefA+VZzVIrHUd9fieO7
+hMcO6eKkG/ncWwnR1yRALKqw7dbNGFz1fg4DIdDIvbJgKSGvJ/Gk3lhNA89bC5Ng34SblPetedKq
+ivXWIytOjYMKHbm+vGf6ljubzmG/3ofMjDymslH/b/xyV49aW4c6Hbv2Gi/M6/AeOqpAI8CMiang
+aqJyfhUa50thXqjIMCwH8tb+CL+7R5yk2AYYXz0zVqWa5/S35mmJBWQ5B3wNnWIjnRq7XUKkOQw1
++iHR2GTQ7+IVVhjTkVxzCB77/uV/Zw05aa0RxSMvHm/ZD7esHr5hmJLbWgOC3VIOQ+4pBk/4EXpH
+I05o3B3zDY3opN6GgVaqmctgP61D6UmJAPJcJTbteSnehMGeKj7mbCSr5AqSDsoJXUEzzA3NeNem
+eoF5kECEMDXMp6qqaHEc+aJ6lqQcaCSRoOfsTdIWjKdTdbq1IibSjLxqwbU6ocXmGOEHO5r7vS4X
+Vq+NASsjNyjLCpYNvjySjaNjK/4DW0swpF4iHsA9huknW+neAYFlcP8k5H3Vuov8597d39j74ztz
+jOc0SSCFoVHsMHbXANbw/4uhfWB9bcsJhCgcqAFLIVWvSHK5YgerU5HHCjFFlKm1zyBXJTYW2AW+
+oRITlahKv/8e8kSH25zdLZ+7irm+/2LDTtHDsNLN6dmtH9Iv059ZePKJZRAi/VaBx23k/IUO704c
+gVHutZkRMChALNEDEzRFAqJ4eoGDRm5fzPg9nW7b3r9p2S7tYxLjRpS3fQr9jLGe/DbwZ5UHCAFu
+LjXkvgDH99r5SLdP3gFIG3UlHaAQwhjDD/aMz3aqEMy4s1BOMe/QGMC6H+9D7gOO0DU3VIEBcn4f
+FHlM1hKse0QZ5LTw/aQzNBRMRw6N1/FAeGEBT61iJZhckvbz7urnQO+t8Do24LKsCwKxknx5BoFS
+sftL630APSLSnzHABmTXuAJuUnkVZSfAV0jnDP1iwK9DKn02PaXNYWIxVHA8cdGmcPTiBKgiMx9S
+E7AamJcsXrT8YP1VSic/0akvBVPbvs1GYbpDTQrIklv0LBty7aeR8yAxgjFH+YqORb1H2tYu6JF8
+1A3vcapnLG5ksInH/LsHuSS/amXzYSrOLLUp3cot4ZyZLLOAJ1pozaJ1+AeQ0qIVxpdBHIbWi4c9
+v38DxCsnC1v1Js2CrTA5TtCIDcnIlSUsNk8cPj8qg40LNT2SPLOnmEbs51vn3ydff9X4oLp5nGHZ
+MNcyzwbuAlBE6xpffJV7Sqf5Va6B8wzGuHikOIdB+zgUIkC9VPw7n/DJ0hv6avqwCnJpkErWjMm1
+Cmpc75LAtpb0cyn2G9C9EbYAcMRGR2q15d3pAjrTATfjJV3qpmA22y+YrgtlOqmVOzTOiwxGHTF4
+8wGd7n3PiyfgBnNiGIYzRfP14tt1YtxiZmNTBIpkNs2dzn6NwPfNA8fRkrsfH+li1DsqDQ1Pubpx
+gfUN1LR96GJJXq2rAj54x7VMHHC4+ObRzxUWcdW21qOqmgyUX4uw+ykB72G3DwnU+G2/YpUY+xF/
+FdhY4RFMNUSE/hvH0RhOlyqPh0J2QzHnRr9d6kcQ4JGJ8vAqAoAG3nGwVpjnxdPjDNprexd93Jrr
+5DedMO6RPLxjugbkoNNkfkDjTpJ9Eur7ZIOvDk8YO8xUrmZmwfIiYMOJgvSrIcBF9Jl6fruIAtfw
+SmBOJBJ1wsXL9w2c8eqWshi8RAEjW1FgZYcm3NZzJPv5QRhAKWWac0Ao78Je2246GI/e2mTFzlIb
+zFX7qKklE09HdzI7YBVOtMdCIQO4nirs2LjxZJsiZsSqk9PmNFNfnAthVmA6Mk80v8CDECPbNw3o
+C+WlxifhezIkWbLhlMLLuBywxaShP2I9NdM2J37Nxw04+JW9C+t9CB1AiQ+knHRaEe9zRl8rKyAB
+fko1/lMuUBuGVNajSYZCH9lHuEogt6SG6DyOxqPrJR1r+Vq4sBWElWOTNM20rDEyuodSLcAaMtBa
+vZUQw3ruOnE38lPsVGo0LCFKEscSvdPXhlRQJ+Z6irJbvAO6w0VDM3v5RDJRcDoRrCjYSBYGiFe/
+qT+gt9LcfnJ5Q3KUVal4zGQyXK0IeCRaazlT1nthtnthWQ3K1BtjMRKf9YLRhmsN23e1aJ7no6UL
+VTv7z1t8RoOUyYQ0ZiKBK0ddlKCkrzyQhJEcUmukC+iRd0n/Z5G0lSijJNQKYEqEDUsVMt3MllYe
+NICky0/ZEkiVLVYcrxR2dZC54oCFtGt7jVozUvpCFcGZYrsAVrHNEbDKKwxMt8xCT7hxrMr9tQX8
+FIOa3Xq3KPcakNicuXQHZXJ5DAkd/YjR3aSArWfu19Q2lac7cZySvccA9R/t3mV2iFIZ4hU5s9GD
+/piRXfCBskI/9fyBVqnGvjEsSKd//1SNRd61UdOi1jaiOHBJT9FcyyEASUVm0m+j614uCSukQBxV
+jgsQnS6UCXKtRzpxAoqlyjKOWCf8Vb1UM0KP6yswEHvJ2F+9lMM2uGy8o4UoovnzDiSptvNiJOoA
++GGDp15cmWg8bcZq0vhOADQX7k1TZiVkM8TM3hluCXNu5iQU6hP8EskjUmt1g4hHNW6JKrGODz57
+vigLLaGaBWSpMADl9DlJGDNrcO6hk4lStuUbJQCoYf5DLiLFdD911dF8xS04KBglBmZTDqFVSsk9
+GflFaWh/DTCFxDFyGh9ygsCi7dw3JamalcH5WDzyXgKXSDt6+pCTOojrn79zzSE2cn2ax7EeJ9GC
+lQcPvBxJUrAB+EH/9pVzqF1QbkCrmb6bb0P5Ouiu6Py3x5F4Saf51g5JbyXznnw2Tlcy+7E7D2Of
+oIqq2mDo/qLcQIaqy81DVNuvytGNhfJdloD7gzXGs04va2aWhnlAcrxc/LUA7311N0z4o3+ZVMAl
+d25EWZ/ldCJwhudWUfA8Grav+GjySnWj5jQs0zncjSD4FPvB9SHNkQ3VwmDqE5IcmfFpmEE4W/bp
+WWce4/iDlgRUzvzHjMqh1HBAIiFiXycSNWti4Fxir45ijtdu27byjS93NpKn8NUuuLawsNr9YayB
+kxZS961sIB9MU+wtwQp6aEVtTZvR5fpOqGiCUvan7v4Eeik2sI1vIHq8cC9zP8JbDua4KUejOu4Y
+FtO/N4Kw7QQZe8rtLAna3qmF8QGc5E+qIxcRBXuxnaPTD05JuF84NL/GAk3LgU4CT5O5SktzQ4fQ
+jDgTSu1sCI1EQ62eeCZPOeVaGJhpE03noWpgA7YNwCVFlTidRCxBlvah3agqDSPlIhDJ35KjtXAR
+fddP4gI1ermpwn5Vcq80GYkbf92DlhvtHSmLEcQzx+X18aPAQYXp2KfC1gE1kgKbCGLcx2g5I+Qo
+q7s+d2qgTrif4rXq6Rs4rP3pOWJGQkfeXwmuQbhEwoBrppx9Rajizr/dW5KqItox+HB/K230qpFQ
+JmfF4wQeesasBJhgxxtssfsPldegOJICs+rb0rZFl+2vbhgFGzPzdx92qEmYV6ar9aNB87gyU63/
+f7lJdYpDZxraIGuQaoPZc2wjmQYG3eRWhgwJ01HcneOH5VhgHDCmPoklf1rfs79K1cwcMFpf0BJu
+rm90Iz0RdnD252/m9oJdV+YVgnvwzrt6iy528SBeXvRwK9Z7Z9H6vpyP0o0R/GrxZK9bnVOXk8ww
+ebVwCpXdNpIT7Oa9Yr1SEkZ6OJY9DHP8PcRaG6mGcMZYRyWCGPa9mWFRw2LlSyP9EKdLiIGQWm5/
+PNLFO+WkjHUajohO+rtVvizIs6ZAGK6OmmSRMlFZYVVEo48CiGGRJudId0kvOQC2p7PTWcVmAHqu
+VAPREW/QtbSXxgamr5gVZEAbXW5MWgpAR4I0XBaQ6qAsrCL5VLlnsnQAaBD3K8XTfAw2KIxGJeiR
+yofr5V0rxuu6e0zK+Xcg/fi/Eo14PnQAYJi8nQPfsoBjk47HRfPcCDCWGFKxuzJgkzKeT2/VgzqD
+m07agoHB2GqG05WMeWaL+H8H0mwlxtUQA+5Zm9XG2g1R6wNUPPlp2XcRzIHd6Ec9UAtL4kmhzRm7
+z4aRCQWguLSXeX4CaBPpTWjwj2lJks35iHTLxPwNKdQwgYG73iNkz5P7COYqKcxvRumahDMzVMM5
+FiZLxkXviu40QwmkJ9HSkp0u2RxFQREI7Bk1GtSI/huwzb7xkbajc8VDwbi8yON/3ToSDC+bYf4S
+l3Dk0Ih7dTSUGpPfE0udviU+V6HlZEhrzupsqsE5bd9THUYVoA1Vh0t2AnclnIUDk2lLEronYY3l
+HnAMuQoYrbp/iMEREePpk7t3x2NntA8h335YOwWMvRlBUfJZGoQg4J8mJXWRnEAZThYybNXJSvni
+v0zGpNPULVhUtFA50XsGfNW5jVUF+p3Ri2zQqN7cRjMzlqs5lgGt3jgLc5JT/H5aZ+4+Simp/9qS
+gDfuQJJnQiXhcncT2G27hq46dHEMQ3d5YpgMXvaSEnUihYhmatS3VuxQMf4bkhEA5TUUS+vSj4Ld
+lW1XBTK0Cgx2wAAYT3JriIjEgXUvd2KRmodxSYy+9ztorAm1mFabqGICYCO9kk0n42OPA0zoW2n5
+bdc4qbMRErezgtwr+bdTB4sUaIdd+qzT/2OuK84M8I8HHSSl2oXg5M3rMEDsFYy3B9d1efWUm83+
+qokCSJgZUpWh4xac1qU4rsJ2dynRSgi94p/5zJW6GKG3Ie01h8AiyIXUOgUE98CS5SenMkn7Zua1
+DOHL5GGTCUjZeByGR3OptihelIIfN2tpMAqnAjcnk41xfhgHGam+/yG3B+MYZ4h4Ju7bPf5qWRLj
+J2YHBj9x1ORRbo2FM8R8INVtNoasBrpIN+w78nAFhi02AdiZXJuqD1hFXhKr+neBWQ+vUdmhcTR0
+PEp05cu3nSr4aImBG1ENNb9V02UDKHC9zvi/O23KCXbv7Luekr5fGhRQJn0hLKrGz64kKK5i+0r6
+gwadjqsYHLpQdslWyIZXV24Oyy5yGE+MrxTS7hDju+/sZatpxp2asVBOwrGSayNH0TbESA5wEds7
+sMheN1IE/7oX/gw+OB3VdTU1ro6VtTj7aBEXHwQV++LbuDWR4t0KAubPDS7F6O/yS8IhiFPWNzuK
++I7/cpQnBlxH38JKVBx8Rog99yiV/7oUSEh2zEJ9Sgu7breQWz6XwASW9TbW34fMr2l7prRzMYOx
+PCiP+LQd2U5llMW3W5QKl9iYbrXZ9DnXhhdtAEJTzxUEjtRhWjX5w93UnECuvZhj2+aGHLGScDRC
+RxDZnUMv7NgAMlytFNlx/ddQjS0DlPwgH427pGsT9uhFH4N7/GVXorVDqPAQPu5EgRgCup4LHyBo
+DxcAi63qpzKHYtTJR8rJ7i7sCkvj+zM0KTnbpXsYFraRVHkJFdrIgt/XUnBdhY7v6xY5vfk5LX9X
+wTb/9cy8fwlHI6db9F+zDs1404aRbBxa/q6QxGGjQM+VcadkQuv42zdWvimiG5+SSbQGWh5NKrSh
+iEhQ4h/gA99+Th+GpBR9gLLgHvcbjDRCbx6s19IJjnFQbBvXpCZw08bW7IuWwmwRL0Uwl24b5Mj4
+u1a+bhic3GACLAsqzDtBohJxv19a69fNTRGc5iv/PUgrodJ0tAfg3lBBV15vpDi+yg4eBkS8YlvF
+y39ugNel3tLlzF4+/gO/BNcdOLmvS9VPgrLbY5OzJEfaO3knJd6HO2bN9Ly40fsajF/h4dk2FuCG
+WGtblL+h9K/6R+5M2l3KgrbK0Jxj39t4FyfVy0/f8sw/Clghs6WeKwc4OOkBnBwJFvQB5wGgGlVc
+Pn/vnmNzc7XfrlIdeVsshCh49gj7DllXYE5xstccT1dYcxGO1CCB6xQY4Qxy7H2Fjxj/kthbwx8/
+muQTA2BpwuFmNNTxEHKpofa8J/915+ybaViUbL5asCDJEiFM5TfOHTgTOUNY5orKG886AOvqjubI
+eR/SjlpynA8lq2InEHaNL2CAWsOhKZ2k6H3Q6iC6JG1FJ/O1bZYPMchds23wAnzS6l4RAM6QjHuB
+eqgX98U4TS23X1gNJjD1rfSxUo/78tdukTCDdeuCldtld73Tx5oa6gSLfXjrhEIoYg1VgN7LWaoT
+OcLX/g2Xmi6021Ish0+jxd88i+TQbhiTJzqaacq/EHvBeo8N2sGgDg/tyoJoN/woD/bmBVA9kpYU
+EcNwfrXw9qY72UYytE6CpXLKzU1yPekvI1DNqDf9JdeBAzXatuPIXUOoqDeztNYe+rvUMCPnVBZw
+aUVAjtiIxn0/69GbNBwWPFPFOj+SzaBU8Jl6pkLBeVuFy4XChZ/gKtvylFSzB/+FcTtogHaC9Mvm
+ZlOGJshfOCXN90ChdWxEKMravUrybG0pjYbNw8TlK9NtEk2P5f3sNL+JdyxIDv9729Rrajhlr/iE
+E9nC48uTakwgJGN8hqlnVQJfKW+cRM2s2EqU6AUcb37KtNvf9zblSL1kXWvu3Wu3qHYJKQcnvzrR
+U2ueEJjp79GA16mL4CAyWyULBBky8cLjT3gIyx+4kGCih/qz5w1qeAajywDWH8mxgT8aCxj0eFYz
+TM0XPWNU1q9r8fHVDRZDgXCje35MQ1fiUj8Dv8KOPfw/P4FPYBF71PWo8ilyGVj0ij0GS3/BCZr7
+Jl6dhanifWIeC8rmbldjqiCzOQbn7uCiBb0kA70IAqDoy0qWTJVxzV3tw/WP42Ay1Y3GCru7mdfD
+gH6F/7y25urTj2Q8TF3fL3Ku431W4AqOUWOoTnYE3mN7teXoHM1yjReC7SahWoTswhqSh80Nz1QR
+ffATroELqxx1YMdFCtOOQW4L4gNsSGPizOcWPhqXbc/pwMg93aGjernO4ACAd5GkTubjyWnSwWhy
+rYf4N/g9rtdRqHqtPNiQ8U5VAwnxPrviEwj9Ia55KqpalD9p+HrTAg4xgSYXdfdrhg4M8t3S5tTW
+vy5cw+iCb+SeqtaMKX6qKDi0woob4m2/HORDWo5BCaMjDBaW/21zSb63wGu77Tb4qEH9oqMSnJbc
+JgAkczy3vVvb0hbZW6AdaKXmr0YCOiUowAsnsbJKvDeARnlSHnKhWesHgwlScf5DE86ZTC/6HFGQ
+0EdHhqrMYLLxeQgEDVD+37qO2zPHH1jUVjnn8kjqduNF4Mr1m8g2TsfKSc7Dc0lFayXgoBjOvet/
+mxSBwPjXlRxwlajAwStm3ORSM8tPukjv/4IKgDkMlu4ff9VEvyolXUW6OkTh7WlEcp532wGkIY1C
+bMZKtB3nC+thfS1NdhB9eP49tXEwTVBpP/sW+YM0vAjSnanQBGB6YLSdWglSLbBGdbs0WjQRPDm3
+KQg2t+JUj2CEYiMuV12cfptdLvIgGrZ2HO1mlsgCRHGOjMcs8s8ltDsdaD2vb6LWBA4kZRhdCo1f
+GtNf5hpX+7VTr6vdt0xyVF2YrDEC3lNfFJi6Snc1lVDwDAXInjfVzGLJX+thipKermUEQb8dufFx
+cbbee1gMY32TDqVGgNgxtAGq/TMKzQLu4VSSuEygsyTLeuVSsqE2fyPyeP0iEOeetmHefA0G+uNz
+17baOAif3EBPhB7QU6zLlPV6d8fFJADiTrDNCHkNZQxS5M6gQXC50iUVJFEOL4yIwTm+t3Vtyoda
+fVojXYGqCxzdZrvJDiAhn34iXxE7FWehCxxVx7orVgBGjLYdeyYjhmMnZ8/gvF4HGv8ARN+2I1s0
+kzunX/ZJt/TAj4N/SajdTRk9qLexJIIUHqH1avTD4pd6pknRuXrwFw0vFUOTU+89Ld6MqIvaS3uR
+/OBCIFfUw2lAd0jR8JjFvYYsfP5AWpZe+RNjDeeLEnU8pJlldulOwhiED3gNKmCRkgOHCMlPaoIn
+aif+dDEBAb55nrw54CI6yVZAqfngWoHgyjC3V0PiqJHc+gHzFu7DJbdiK8KWvh9Kgcx01H1ttlfd
+ZhU3py0nQTtHpN7ASr9Ksrx2ShgNmrZJj0gp9f8oaZYsBhw+oEoP1i6CMfcWDdAn0h5SPckKTa3f
+JzKd3jl513jSqek6z66jIzCmY7WtmgZIzqstRcHlrm3Q9N7nxJ9wIVyvKNwbnemR4vBREUTyM++K
+2KXA6lYJzUvNCJMIutq/cb9FWiCn83CiSYr4wyudzDXFVCoWv5aCZ8rFjvHp8TFs7/g922bsfdQ4
+USr/4ehQvhdi05L1pxOOGOLVI1m04MUEQ6CQhXX3VT+I7u+UG2tuEWDNCQ2lgrReoCyDrzzatbrl
+DFc/82wqY0tAdbkPILd0DTtitaCeT+kcmy4Q10CJtQv06QOkXnN87qHoUhbEvmaCjiDZkG/XvynZ
+mvVasAV2m6kkdisrqYVh+mS2AES3eQwaQWA/NBOhIOZnvRtSuCPlNnroeg8A2abc6qRO2aiLT7rV
+1pE4BL/nVv1X9US0/mMKTN4mWzroCbvIzLFWIfKLTMvBDAzySKfLPcGLi6+FjAiL2SHwj29QgR9L
+ZuIpg1khaLeHNjIKPNQafUwfKrFONa5slnh84hrPWs4bpllDdAs+6pfj7482muxWi44GqVDcbO5b
+IrmWvQHI7lXfRTabpx7UEZbGnp0Bp/HsJGUDBLhk/FAqwti/ASSRx+b7iSd9WMkyNuFwBemRg7GF
+79h0rzPfjvNySIuzVqDZa7HfYKPr+U4J1Q2hzQJimDnSr53t5fcC4BqmQGnauUG8i0WYUx6STFxx
+fF0Z1ZG64SmzLVNX8X+SRnGMCS7GB7CmQUguKqeT0IC6HfFdmIr6mprgcn4lVYlO8OPuXb8KnIbg
+2DUnoKvPslXku2RA34sdba+gmbMdrnMmdf3ECQRLNVTN/I1jAFwFSGsk9Fs3YaeJVRGVX+LADkM4
+AGUlli2xtdfkJIKoFt9atAyF4xLsuyFpwMOBML82nVMfQPqQOGMYeza3Uu4a3mChvW2FBn8jDCB4
+0L5XAkyIPEjtmKdANfxa3hIjgE0nCRK/IGdHf8k4cxKCuPthUKx+uchJalqnKtft06eB27RB+kaF
+xQj6SMctsQtkqDYijkltXbdUcUZOluKg2jDeJVFg8kKd34n/P5W12s16fxCXkPHyfBCRPqUwbQrl
+EjSjYahmy37Z/kGJI6qeaIr8242d0R7sJafYFrcZNqQwyIdEqU3SZKhCYfj3owm1WQ/1X+nmxUQ6
+Ee5h9viCFjmd88nvwprwpuvNq6jkMUJycMdaWjDMSF+z3EsCbkVm836/lbpyYYp4x7dRocqTlSFm
+vN+PE9/o6wL0VoBlk5yu0eA0JQYzjunKhBsZ3W8EaQQNPAvWCVJwGww3dlo7GsfnNueSNkgR8VXX
+ZxihDOwX1lqXtoXsHnBUuPsLBzXMJjJwSwAilwKerqVZ6uwKw5Hva7OXyL+DRhtg6PwN8mXpVQfY
+5Um2vzfa+jID2XakjWN6pWipBThFW2EzrXBmlJMrJ9vGp2ztU0gw61wNBhBcWOKjdKvQDw98wm+t
+m1fG/pKOWwR32jPjPqLcN7H35RmxYHCaIUCPB2ArpnO9JflxgXSWhbWOXUyNGx+z53SY/9n9uvus
+usoEc5n3iX/0kxWbH2w3/HwFaSMbXX0t9yhahZAhKc1+5bKil6+CTncOiMIjxY8bMT0f3uubonPs
+XguOMEOsUl7TPKh6yrkpqOLyn5xe9lJcK5yMO2vazrRtYSs9eE9vyhtORlNHxQUh8c4WxhxvefjS
+K2t01U5d46k9EZJ8WE8oLBU9zGnctkOKE/Dtxc0jWsdaysOcXthEnKYEnjP6SI7Qu8fyLiZvLImu
+ruul/zmPJKWSekWlrJdoYw7EskAKvO2KcZK5PRelZoxCvhpYm7tu1wiRNxRxmdTkxukzhDII+B0P
+gyWzg6bLn3O0HBD/RyW2SiTepSJrmCRkKZxTEWZqAd7yUMmoLzqfR3fz5Nl85Alty2Ka08TRNyYN
+GND80cc1pLfUyT5SoVJlqy3KtNoTwPv8zuaLKr7nnIoZd3zy6+/4NJswDupaKHu/BQq18w/3JXq2
+bpHLjt6nWrEptgSDEeFRELnpZLuDVNWCAe8hYrgR+UDGSzVcV9JqVEdQkJIz0pXJ2gZpCJe/hMCr
+ivzZq3LjDfTGZdHBChuEMkunBdHUUpw7Omhy1OcB4rxu5/IXt3iJJBxrM3l64kFdJe7hrY/cSSjT
+KE/es5gV4mep5rT+xS8n7jYPa+y44wVFlKEajmrM8kntVOR+qhomG0c4i3OM2azX8skqerxctIZU
+zFuaibFB5kIGuQbQmhRV
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/d3ordermanagerTest.php b/src/tests/unit/Application/Model/d3ordermanagerTest.php
index f763bafc..edd4356f 100644
--- a/src/tests/unit/Application/Model/d3ordermanagerTest.php
+++ b/src/tests/unit/Application/Model/d3ordermanagerTest.php
@@ -1,826 +1,873 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-HR+cPoNH78/yx+IW+RE9hBn68agVbDmbkdfMdxEuds1X3VOp/EjXn5qp4qCgI0JGJWYrkaMW/atA
-iDgaco9sO2zgHJ2qEtpxwpJzPWtX9WPN1ODm1oOA/1KcVOp7aJu/JhGjKVd7RLVRen8RRazjtfeA
-Ib+kGtnqQCg6atBMhu/q6DKAfeuI2gnh9EOgTP/Xsk6iaYtO11cn+UB+h7I49E3xWBz6sMcqCjWd
-UZNZK+oIjIij371z4eYYwGmYHZUvYorg5YOg6ywvEA+1lqlAa0uOlE2/dLncmSVNI6qdQPc+7u2j
-UIGY/rWR3Omx0qwhuxik9K5R2/iioXNzi2K20jW9zefZp02zc/APPsbeNNX7n0/6+m6+RVUI8DX6
-KT2bIBY5lm1HRw0856qbdQjKt5vRm+6y78dqtv0KSNNkP0Ewb5ckZOTK+/IsdSSxz+Vhu6Q/kzqU
-QVAk+6RuBpqvEWsri+yX5FBasCgeIQQsQpI1s2WEtXktsSwVsWIc65V/L21SwS0l6M1MbxQYTNsw
-J/IR4ZLNhlrIPVQpTRLlI2zS2pVVHCTpXdvNjf5jeMDVI9OZai8pjxNW29SC3Hjs+gOIfJIl09lM
-yCoy46u5/WT7UQe1/SyuIy9K4Y5FH0kSf9uzQc+MmGF/YMnvs/X5uQEAmRzUvRZs2O0DNvlDSNps
-9TPdarhDh3/arYNqxwdVq1GxtRJOLMli5C427ixKpAE7kyglGwiNIXv4jhUq0B3T5kpt2B4Xx0gf
-tWzNDTktVZfu+8F8gx9mUaRtHaYaMaer1YuY+Ua/EDSJBk79WSsETOomXz03g2quOYhSA+h49mU1
-x1c1PFOvBs5+st0bWdQMarbp2vFEC+onDiPp7uW8EgkYyDx4W+Y19bzMQsNALlXwq4Sc6LIIKblK
-2Rp6xDJcn/6CUJF4O7FK7e4X/czvvx4jirVkgzerE+8A89GLGrOQcUlWlYA8Kr7YEmOhsqPB124A
-8EB+92e17Aa1gM82RfsaNiM17wPwyFoZ8xal2OD1dMRjtAnJXhfCAkljWsS9j6M42sdKSIX3EX6a
-J2VJYjT3iFhYbV9HcljPVMYkWModaP/gzHlKSVZMD+4q7jZvD+oS7kONNB/xO6LXwQWpQnswfIhe
-QYoLca4gtHzWt4bKBxDYQlwUJuguS4gM2B1keFtWHDv86ddOCnUh3+Epw90BpfZrqtQpzn7PQjy+
-W+uB5SwJoztgkmcFjW6ggL+VrLZrAIMufE/zGGchMxKp2+UX/8gZtlGvt2BHb7+dg86EZjAGUD9W
-nEfwtzx74qUaNHHq1yihcPdhJ/ENfeEZaapCNFJbnnHVrkzwo4WkVHTLME0ktzkiRp+Bi5oMQFoj
-9UP7YHqWx5D0ny0cSvoprGnD1AyuYGXEDoneYBbl0q8poEBpa27x6D1lahfsLN186IMaNd40OKnu
-BiXWkuZUrghcxh3KBb+4//Vn0V7HUWQnypiwweaaHlUe0DAzZnlZTXnU6i11aeZfOdfpzec3Bk4u
-eHKkmU9JWIsvm7RhvcasQ4N3BCThTL6ueiFZ0y+mecmJCvHqXQSoN9N9iM9+iooD6h/y0Gdl9kmi
-nccUglofOZVxclC8DfO53WzENASYZ7JFJdCVshjSwfXS3t1Oqn+7SIRc/7TniokkyMpRbEzzk9Gw
-7uMCyzBlv/BpKszdz4Nvu0k4OpkHfWM8JXuiU8vt22XAirGRVahsDcxax8jBbzJdgfwfPt/wV4Ms
-QrJqR8u3g9Wc221JABHfQRQnkURyOhwcWDcS77xJaI919LCt1YE4t/DszGYHYzjlNIGvErgo1IcR
-EOzzUcl67j9hvxqk3loqzJenfXQTpM1TUyIVXxOIY1VcmiISui+iKJh204hebphqf85nnL2V+kQM
-yqM6NwPQcS3iD9l8AfFDqk+qLMP3mdHOQRijhJ7tB1QyVgoVdPFvmntUA7wT4Kpb48kGuJkTevhi
-5YiVIr36qd38U49Fax0SxEPJsQ6j2zurFuVfcSvw2mOZFiMnNOxbtbRriO4r6//mC/nkWvp3NHk1
-N/Mje/AGz+ybZ8RgogwLlzVZ/4rD+WxOWUy2IonO06ZBljPHTvFMz5QI5ussffrwnjZtgMY8j6i4
-N+06LZHCcWttkRlUzGfDNmUi4EwXODQznbIAI1oWeoieqg2at+1l1EAon82ucpMQ6HukvpEYKMKA
-AE4riZOZAgBdbArFYZGSyG55TLfmw4XDJgaQn8oMmRt3+fuGf2MDJSuGmI7YV2FZ5HZx2avWxdz6
-72/qm/ob3ctORxCKIvhjD7KJ+RZNTneq8Kyz0q5svvej7GBw5y8JQMYLW4EK1ol5uoG6TJuiZqbS
-htX1ymq4bHPSuj+gq5aQgdOs/m/pP98uZ3+9SLGqLgO8xVAY/KUN5inDlk/GMVP4QraJhKeOnyZX
-XOQZSC3RQxweoJi5kGszmXU3cZwMLIRZ7XWjq09VMsVwjalKjBd8Og881o1501VvoFJmHs+uxrXO
-qmbXHK61KivP5I1WrWDPQlGnPPa3pdG4btnaXAboXZ+BaxZA+Fa1OSHzQf98juELZGYHnoGa8NGM
-3j+XAuxHDNLnQclvWygY25O5epjue9m0ANGZ8p9p9mUoSY1iL2H1sUE0kf08XqX0OZPXe/Figx29
-970o2jK+Yj1wqDTf49pva+T+rpIyptj7NfSJYBidXO8kFstGMps1JWD7UegMJXQnTFTvKJbRiWd6
-+i14lVe4FUZ8ePbQ2FVNXZh1ri0igxXV0BiXQZC81pU9g8NLqLmmCuUMoI76GZGZehEo08Eqaj7k
-2L5n5fjaI28+aHj6bodkLUnkSBVub9Yu2/nqnqr6usZccC9wBa9IyG6hn8rTZCWHpyJIqR+/6l7Y
-4oaX+dM1OiQrJSZ6KIKlkZheoqN2jP+p6EhaLv2Igc7fcXcSnlIDbFyn4eQc2g7RSkRRjLejbff1
-5TsKysX892EXGrNQuuM7pdFJ2iPqFe7+TI1GicryGJgIQ4JVlotUkGPXecPOZKmcPPx+A7z3hRAb
-JPN7EnPjhiPu/LsS7ewoPg4aR+nV0H7GE1YdRD9JoL/PgAWb2564smzpCK0mRLG3UINX5QFU32qb
-fW4F+lvMnaJ66aQjwO44rMZLCYwQdC1YmlQBX0tEXsGEHsp54YBIeQGC1Ez5nxCk5wqmiKHTEdma
-uer48YWk2yNKT+FgtNUW2jiZMjENrgLa89hb0aKbGTE4X6nkNsPD4/dD6XXoadph9BtVjzATBn/M
-HQgv+NN6WvHqE5fqUe0Jc+xJGJh8MyFbyWzYfx+wpoeG80q6S6PKYELJ/OoCBvhT7XBkDfWCuAh4
-GP3bNmLHelx7wccCfIuij+i5rzKx0wJMMPNB9DMIpOhUO2WBt45roo6PqwBVMM2VYAauAHptiTfV
-RQjKVdooCJ1q6nGar9r7XalqIcWA2ffM82MhLeo7jZbVKiXxpxrmSMfjIqowg6s4OxVsGKKvZqz5
-81Reyqs/4kNVEhtuahKsGVQIOPZXU0gVIfpxycITdtoeJLAoyRdLDvZ1OjfAe9pNEbWA1O3kPuLz
-z8Evw9RxitKReb9SphRZ4fHOS7bjcj3rJD/Fiowv0Lr1P8MdEfBDi+WVppKjwys2pxucrYRbQH2T
-maLzQEyKe/bbJ0w5Sc/TIJVVPSBJowDxT2QR0JUlGWGpB+rwdcD47uNUA759RTFvKzk4nvwRHTs0
-6f0u4N0njK2YpUjmVA3s0sBb5D8dCy4npaKbaEW11ep6NMVsmXl/vPL3QyHi4Al7hKxkU72mHWNi
-rjnScJcT++GEHYpHVLfVwTQX03amFWIsKfAQVoJsVQCialScrFvYnw+2Azp5AI6roukRSxKH+UX9
-ebO8wSzZzZ1DSqgygxE+LeAWNUVE+JqQtiNfOmnRiGHqWxXi+V/2dl6kreqJ+iKeSF+suY7CqYP2
-QFcpXt+yECY7XsrQE0voE71Donpb8TSqfzxbhw60zlIiV0Wfolvwr+guqeaFAOvOsI+bBXakkYVb
-RGOwSC3mNM9JauyCtAXM/owHTuG/CC9A9gJb4tHKkZcDEnAWtQxBjYwdqSz26X7kYcRA8LydrOwy
-BXRbwFRhsbJWRGFFzrADMJUCDrzt0fb6ecaz6HEgypyK1TCs10eAXEkTg6ZJlK1y2jD+PG619uaj
-7blCZ9/Q/7+XgRXqtTmt0dYtGL2g+tOMmmw5MQNxY4nnZM4JwKQr2ymdykrzrtqPONgZjMlK9Asx
-AirTeC2ao1VHmlI6EG934GdxhMAdK0YqbgI8JubHc4CWytffLsmskANhjIkNjqjkt6oZLAmmOZGu
-1hC6zW6wkRfBdZ9g9Wk3yLKeKNhdr3TvjGxF+03lNYjCtVAFAlk4X8TX1CFU04CC1mijLxq43VOY
-bmQBKSr/aYteVXx++Lrs6g56aoh3D6PjU+dnA58Y5GZxmcdGpN5mi5WpOenqdNgkNnECG5Hd2Iv7
-kGWmBXb/41O2rFnQdvK8fEB1XHDw2ODxdsBxN+IoGVujWO6aT1hTFZJ5vwsywrYayIAKFYXS035h
-V85z0Ne5iNo6EksorYOVMl9u/x/2Tr/RAOoCbRko6RQe6fQFcSfq8liE/e6UFVqrd5g5zfaj36M9
-6F0ZGGGqTlpm3eNx3sElxBS9goN4ci+/j78RNs4/09YK81C95wqL6Zrjs55RamPqLyNeVcCc/Wnr
-8JHZY9XdKCzZtQMz2XiOi8UAX3MZQqpZd6bAzKf9ubYDESbaRAgVZOsVBvk4QdWpSDEiv2ocySkh
-v/1XkfCLAAsiEJ1WbGXePJjgA6geyc638rxkXmY52ytfSmgkr9ZpzoTm+PwsXMRO/vT9b2Ptc5sB
-1QGNAJTMHIvSxbyaVY3d2yKpOL89ZersML4+kT9hhsg5r4w2MJ0TE/n8N05GAZI9Kp01Kfd0SCnS
-uosvzyXSqU6L4AVoMku5yIPWsfb8OdXQC2cOgE06Y536UZKm24ndaGg1WrLxSyQJTAX0fEuoYV7R
-96lJgCzKw1ppafs6g4uz8hLu+g+XYZ+s+yK+0mMuvLWN/wS+uxt4OX72iFz4TYNKkU+rXt1ikUh7
-Ns1aSwl8jtCpggNDO9vFr8A90bfrSaVFh93Z4WpGUYF/IRtLYDhosU5BiaeWjV7+Eme7ZNXWIXX1
-w0Ldyjques13nyEgQLNdgyCqU0ksBqcAZbfVAYqd7upYX4f5AOoqfk9Cbf9MnjF9VlnaOVWkIemW
-0xMrdYutXnfM0qXEXpMLcIQMYtbTjB88tngV0Yvv2lWTua4RrAP5eW17tb0NmjZOZkn3490e1/2A
-e69Oo6hnTRgQ60w65+LKXPmMkX6tpf1wHg78BnBuct8Puu5nO122ngE/ta1Ln8S7+i09bodpVrGl
-vMEvVUMua3HCSM97qNYck3MkQKBumbLS1loOY6pKplshlC8Yf69LLoslQQxXjj8lyLjhw0ImClzF
-MxxhDy/E9RscABByVe5lVbiAJ8GwZGm+nXVcz72KAgXi/mmUwUbgUEgu7aOJrcUIwcu4jFD1YO/6
-aDkUrrKQJotUxNMuzyt/C0JFofMk2NvRuHpc8zQAoFalefY95kzz2GvUr5VQeOBHXXW1VHLD4D+W
-a+i65oybcftpukYyaU3FVeQxZLWFtMJCPARoX3ZtFccw/PgjvGjQI6VjsSzB5OKzgkuryHaAbdHt
-pFG8hTVXqke5I4H2Ij9kJGn4c83Twj2o6cfRdPXTDEGzqQDoO2iBzfnT9Xz5RgDWGGtNkZB6mom9
-XYx5kS5yDDykmFReuwtPZYUgFVlagb/qcy83ohnM1j3kahavb6B+1NOvGSAkDVfHAP4u2WLYDCBh
-fhdc1Z+ECVosh4la44zqLmMH7kw3Q8Amp8yIAYNq2NmOpxIEiGdD5aJZpyZSjhZsEzIOSY4jgl+n
-Iwu0djTHN5sftQqevBjpoAs1Zpe0o5rAPOikkXIsfv2qte0joXczKdEiKSYhIMGlQoUMsawKnzRE
-9naWvZ7i7Sovpemk/nkANr8SY3bvVe8RSkKTOcxFeYehc9+ONWrRPHY4UiOuOjbm9w6ydZT3Oam2
-iFsOvrvfjThSnLEfuJe70yWM8tXzYGp1qDG3z3T22NFeAu65Nqoko3UJ6w/4GwojvpC2MzFbeXdy
-P+YYypYZHDMxvwiUBZzcXLlHvZr8hevv41Gp0gKibulKa7Bhgdk34a/ci0b0jmseloP+o0zp27bJ
-adtlKG8/R9PnpKCoRdCSLz+jztVBXfyGU1d5R0oD1IyIWDZ58N8tnBVMosl3KQ0C4gILuC8qoUK7
-UvA5Bw6HaWvshy5E/AmZ9BKZ00gteAor1BxQrj8aqVff+QrOsaVvyCPekfyqICxWelCV8kY0aeCK
-/PP1+aJq6S1gAxzAa2hoxkAoQzriSuw3pGJR7p5q8cmEhF+sEsn+KW2W2PeTX3FQ2wz6JwDjpkXz
-K2OmVhvOFI7K+MJKBBiRzAbKUh6oHxbtOMKKGivSMBYgNEyY7MnI+ENokNa9vFRgs0j6VI4Ub+NQ
-DN69pG6wKPAFfN23ahy9A+rtd7jExJGk9KRugq1BCckerxdVZUJE1q8C7UUJFcn4lwIC0RMORwRx
-3H290YAWQFMgG8H+ooYKAUcIlO8PrwapxtiKjYic6S5RPko4neLEJ3uj9q4cnBl60A1w48hvSfDF
-ocWvoSR58AOVTNz/L8LY38ROKZbIesdSxbMLNvxsWPVEitpFfxLZSDEQOp1vh3RhHBrnHGux084d
-yVfQ+FYJpHXZ5Ed2ollhO6Q2QNBcNmoAkEZfDWfUYxL9cSVLcnaUmsKA69cJ3Z+BXYYZV88VV1Ek
-c5EedgFCkiLDW4MNI4nPO3K7d0Sj7jlI+uOJLyVVEHsbu6GtLxKXlGSWQFq+2NSMJ1Iw13l/el1+
-8LBtBTsOjT5K27gOoCiRrOuwi+GazJ3BtDAgwLOY+vQsSmEaOWCe6q3RvhJplYku9TFRRM/T7fq9
-lC04pVF/gWprYpMOKfrjNQlRb1kabPgFAXE5eTxVCEDwi1yu5nPCB3lnOhWsOcrpN02Gq8MYhOyr
-1MYQl36ouEpJ782ZNAtzdNYQjwnluHGHhDO5x1tnTevVyWHhsLDPx89trWvrl7WRMfO7LDXBRVlZ
-X6zAETvEWqpqupH17bEnwXHcuGeu88yZSZI65HtKMB5GQaTGq7s00MWQowl1Jgn+6JxM9J7b6zhU
-0Ci0iMiX9319AE9MLWZRTRlVg/mrJVgKNEieDPDb/y9EuFpaC3Rb2iISxaKhzFwf+rHrBRLC12L4
-BvDCZSyNTctu2DnLSqfb+7DJivs9Y+7XPONLilwVWG5dg0yUju+yaA52nwl/4lEUN+siv+8mteQf
-jg9xsbuJWrOOpOgLOu8UgHw9nQZcijgPjQEEPkhsg8KF5DWv2kbIhJfl2EMpQlgbe0hldroUPk5m
-QLL1LadcIZ2SGmJEA7UKofQs7Fa9PTb8fsrBhQlUOyqQp2XNKA7mm7oCOLmLIx+yFVf6p3+UTHpj
-d8kU8F+qIuQ/iLLKFLm4hKXjLCDPiJt7cS86qXyfUl+VdDP04/cR1EPygLHYHPf+nHN09VYwiNqa
-EjZezZsMrT+RIadkliV7K3kEFh999LqSBKi6/NxWoqeU5XeBjOStUFquz2g/ABersLxK0k+W2l/M
-Z9+4DqPdgSxZoUGsOv6aPH9IAPHyq0HY4TviipNlo7+1Df8S8l3jq6k41PtwEYP3V/nZBaJVHvK4
-SC9qO3Vi4XT4ELKiIzXgrvjEBztq3nn93lQCvloZhQsl+Ska0KFtR++fPvlHGVQolqQnJuRuDrnR
-HwvCijujI1wV/7S4ZXE4a8HqTVT4kJAbIYU39kMFFaORq9RtmQWFrnAPdjGem8NNU1X73qo1AwQs
-RJBEjsLvkEHfSU99bpAulyv1dACv+/qDcsCcktcZrYTfa7A2EELevERklSLKsRxHAw7wUNZWZYtZ
-+RZSSpybUMlD1GBeh0KFkHjMKh0/k+SjAKGtxtweZV23c3wh+DfaeTu0Zv+aPSc6kNZnGag9WAcN
-2h0HoYLvawAqoyxIzr3z2bLxGDCnN8HVghoYPLAlAtcdrKU5rmEFd62Ut5yQpVv9UYI3YvA+ANoL
-UNFkd49wl/3bQO0lRjEiuEJvCc6EugIKEVkVgVNgheyXr+vyAexd8464xjXmKd8ZlHPs4WIqax8i
-zlAXmtZxU3v+ZL6yR+fQk9DNmP7vcRf+ajnrB9jBHpZ8rl3hwoqmqdILTGxfDoXalketMSk8L2dN
-Ndu31F87A8ez2FyCjKQmtsZ2pad7xAepH4aD3AMfOR6jBCXDOBZVohw/GWepWgUOR0BnL3IQ2cTG
-vFRuoV86THjp35t7dCb0LnNRHYABR8g3iunHW3gu8bPvz5zYzg6jHul4teJ90j9BwXGcHp2GhI67
-QhZt1qKDdh8A3VmGXD/n7M8HlOqTblZ7IxRi+MsiBvSu3m/bmCBd7ygqopwLi+M+qaywKClBHFrL
-8A8jsfsng+yneJhz1Mlj4ovC7Iarz2M7N+mlSfFtOdZYvN7lPGgN2vcZOpMHe6fk8wgfC5lK8jv+
-9gDBZFmlpOthz/jLP+I/YEz34Lmu3TXi6zdRogqljqJXzfPXhrjW/uVgLr61DNJGBj607g6Q58AI
-Sm0k/EyTyd9nCxaga8sSLBTwGxsAioC+AEjVIKH3eVb05W9hFIqnrlHt898b+NjrSpZZGIFJf1f5
-fO1q7yHRuf2flXkqJMmgJEkuir/xTcrdxRaEhHB4+JXqkYebbkC15sBqnbEh9kTInW6ec+q4/04g
-wgjqu0U3WcCYCmig06+xTqFlMlnljUcZL7bvHdKbR2UYENCz/DtLmKk+mhrrLG8tXrYGTxmBlP75
-WWVOi1OiD9CeQgd3tz+ZWYhYb+bn/p2JLY6H59CWJAcrcqhnNIqQu0USV7jemR2qLyTHzS1GbVD3
-Cy1HPvAFOP3a53J/P96II7wJ0+RD39m5eE57CbQH36eKnNsfChOxEi1eecjV5KEgpUdsSUSKGl4o
-qRJ6HytNzSpvlur129CfuDEjarmXxFiLkOyvEK8wRJ43QC364CXQtxQKS37QTJOzDBe5+cVjvxV2
-zu2D9d+IQ3R4EQgCcJU/PbWc5mF3qYTScluG63wcFV6gTOG8sclY6tZifcD44yz+Z2oBJQ65ZRBH
-44OmZk05R+K3a553w0uusi5NTXIsU/2eGcynJtNvKayncOA1v3cTy4OWqH0I5wcyml3StaeFICHP
-jXShvrLQfsF5a52+FyPtnlUqQBiVVgfZXAXT/96F3dmEh7KwGs4gIebbfTdjxBRcPy/yBwMb6icL
-WC78jhvREBBUrb5TI+k18yQYM4Wzu79Veq7tS1BfgKInfyAL1F4NCVIUPwWanrNYbSWzU6TUqply
-KkPlzQfNenHTHYu4n9hmSxzBvlciOgkYufsA2OTmLr504oD8Lpwu5dBcCzpu8eIfd2VEueLYrvbb
-d6oPbLfq38g2OtNlNuimTa/KDDCYs6YMdo6WZRh3HflW87Tk/pE10WvLpivxbflhFS1mHABQwmF6
-aCiVSHcSnPq7KIVmlaP1O2NrQ2nNsDfo9HR4LI+Fx+j0X5avkpGXsGAz1Qbx8xWGrbXgLsFDWTdM
-sd2sHVDMy52UG+ylbRT5KXhH4bpX7g6aHLoAcFhyxfcADKKkOV0moGGfg2soVRV3wBgiP4KTVEf8
-Rli7pnA1sDhi9tmuiK40dWFknhldGxWRSQANX7rV2tgDBuxJMwHAQ1c57peNg8OeBSlJJXmWvOWZ
-J892TBi0uTCmbgEQopEKX80Lk9WDQ20hyd/Y+L6zkmqM+RCAZ+aQwpi2c20F3e5qoM6MrmwhS0U/
-R2eHkj7qntSOGDOjzwPxWF4ocsfl2qdnjWdxIPQkpEekQUqZnkNCAVGKj1x6dwfPYk4QaBuALyEc
-EGm3OIZnndSRJXVP7xhIb1jpuTTPRijHyf7cf0w0k1IBKkbG44qE6gY2sVSwSdtFkqF/SkzYAyf0
-3E6snRhwHsfGCznT7Q/hYpOkIzzcxMQSEBXarPiuHmn6VWsEuacNizVgtYLi0O9qSnIwtisJKKfr
-TKtWSDaUsYOkWrukMVIOYuxH04lKWsO6/JRYflIAqLjY+r85/SzLVABj3eHfUoBKjw2bvSW/lD2h
-gpUnNsByLGGRW30PlR0sp2nbNOtIKDZ58czgRBG/pTKG8RghVNb5EYYKP0bTYYj9+5DLmskDGctP
-Lj7Ev7bxEITx/EpfORw62b5wRUJTUZjUcgJAwV6Ox7BBm2MY6n6C8w6XP5otIQ8XaseCgbJcATtn
-1AptNPpj6rgvikiQ73MNxfbZrDRFOKtxovqzc/ugZgX5/0lHicRqC4kw9iLmfXDAkfkSR84bvHon
-U3rjs6joTn8N8/xWNy3l0SUMkEyRbfktlrY9ObvV4xl6hwl1XkMdiOhweO6G2x6d1lYgmeJJCrYc
-RHPsPZ5up+Ngc/0aaGxxrGpLwbFrONwdTZl9C4rl5zIqQyRsudirB87bAai8WBmzO5oE/aUJHR/Y
-nNueEBGFTzs9nAdweY8OgVdxPpsaPx92yzDRMz7wUOpgSA5zOTOOmrKes2qOFKHH9oNWL1iNgqRw
-OSs1n9x5RZKAisN0ftBm50JXjdQYEFQbE56wZzNzOjrrsIojuGiQXJ/eoOzyWE+afpyZ5aOe3Xbr
-SyG5PkNAQ2gvKkg5YDuiyAeaDAHftPstiBSs3zx4/ta0JS3C+RdPyf56+6njz7f/Qfpcq/dWXdd/
-PSzzSYlXfCRoqRReNQceqainakW1T+ua8gmSmw9jqiWzDYHXzpqVXd/3BGOwWeJSpcDCY+a+e7g3
-WLVplkbkAiumO+jR+SBPky0soRN7QNt7V5uM+tokBrj68PIrTCLL4XqzXsjhwNdNrZ0GioCgLBIe
-4NFg5gDvgMeLnRmG0d7PvdFyyChCT3ZWslZpOcoor2STgSGcMBXGo1uZ80T8EC/6XQAQ7zviRYfX
-BKB8GGpmFfaV62HXFVmOdDnXznN+UnTukJ40rhXhqhNbPTgv7YbwBERF35HEn3istSxsl0gvYdDS
-t2nXPQhO8F8kBCJfbeIZJ8+/xwiQSw4folTW0DkviDyXh1Fd/IOHQc0BfqZgfy5LGS6GwfzSxNrw
-CSO/Tb3q79Jzu20zOR9KABhQH/WOz7UPUPaEo5dTQWjgNtvpOCxGsa0aDfBUWjK8DnJONCgqxgI3
-NjfMpxYONt8MiedoNzlYPFNKQ/wjVQiC75sXsSEgBY98XwCBU5TjBjbPRIbvS/1BXr/R4d/osyLg
-cbGYHrLVfhAz3TK1nfYvUmxg2Nu8XbwV2OMw3IIV64mIK6BczRNMU24qv42Ssfg0acIAqOPby9m+
-MnQ3kiWJwYbQ1knUp9DXTPhMTsVFa8YSQeAar957ViF7gn+IiuTWqFCoZqi7fUMtn1tC9beugo6Z
-ZtVcaXiXFSRZ5Vy4SIuTECf/Vlgqz4BitVULyGwGe33ZLX+bCQrJNmj8LAWlWtFTXGBMmJbyPVG8
-/lUCqwEwO34wbrTb5nT4NQlodFjpf5TDkQXD4f5H2vPv3TAjXM5oLbYnzMMDy+S2W/7AMiVDyQdu
-DB8Tiow0HkfclKkO9k0hpTCe83sabSqz1iVihuSwnjqqHaxof7X5/HtMtLQe3ZY+LYk3435v1ab5
-xHmFMJ5mxBsQ+GK7ajKO8P6KBHCeeok3ki0W6rES7NW4UvISDi8FGPrtRtEGdAw8KZrJdsASdaHw
-v7zzwP3nreCZ8oKY9ADdhuZPZVV6BJfNnhYPKuxGSTBGL2Vqy48ul767UzVNKebe4MWt8AM2ncEf
-se+2ytMTqS7Qedr5c5/q2riEjNgTH52h1j3E5SWaUCMsuQep2Rgu20Nfp+nljXbPw5nBkcR66Ry2
-on1XImSTeHKjDLpKIDtBvkabQiRwUmYhSdo5fChGp5c6bmSMSYRDHkPb5nnuvZ/JSgktH653h7iA
-eN0s8WgjEbImoypPPSZ4Hxz9X1EtPQsTYU41uIgov1JzHGstogCVZOhZGwJFomu4WEEOg7/GKz3I
-nB3pkDj4kdHH0IcB24VRdhBiBO4hgkeiPGKwS0i2Z8Ks65XuN/9jnlDkQM/jAfYt7yk3l632eyRd
-rfMbC3aZVkyWmrrQDShVm3tbu1Xsy0l3Yf2VDwm11MHc7PDFb0lEYDZ0+Di1XEesuRWSHREIFu7Q
-SvTZIB1icwqUcB9LeB8ddeq39fMY2Lf7FVoOoSk0mECAJZWYk/7bg6zs8447+lwZ1jcNK8jJts+f
-ERlTbOKVHB1SArD49gWcbfdHPM8l5JWo+Dff4Ia5269W+NYDcO9iXzG2XOz6aERZIIhxKAfGwXl4
-bCeh2up8C8uEDr5Rl6uTTLHO+PxkHF370T84orVb+btGJir/I+RWK3XczXnPtMZO3q5irdcDdgMc
-peSdfr5DkbZvI2As3EWhv+PWdJZjtGX03I7ZfJvKzRSHuaz3BgPwrswecA0gr0nSJ7fCh1rK03/y
-EgD+8VuOAK6Tp+bWc+FbOaXUDXElOnMd/IwTYkdUgBda+nW86cJt25ifORIJGY5KebJDR9fdBVnI
-jRy4TNlGYWtzJlAElBOgVtQVtwRtGNuaMBtsqSS3lksI3b9a+wkbbTYOR6pWvWpvKmwbC4g1CQ+Z
-XwyXI0yTN+tge14lXcEyvd5kmxjsmUekoTtNhpNAaqA8a0OMs7f5tuttBZK9ybcoh1eoCKwmEw/m
-yesl1lBvxR3QZ03oO+STealElO6y50wANmnCCiT5a5KSOENRibD77fQtqpdG5KC0lkDsCujBu8hR
-8/zLxGR82beA3MXDn5c0KIxUOx1EW+RPz4ASRUPj9xDF4X5nzOB2OSr+XEhqOc6pbuoQMtwJvqEt
-/FfMg352++FDqZ7OXXgsttcuN6HarQrTmx7M3AeUSVepwQDYKIzZNa8HyOHYE/+AKQ3yAWfVBvTx
-JcJ03wVFh9O+rkyPgFjICWwAOojuitxsiL6WWW16PNEGikcMt6F1gPwcYcOoKW4u4sroj4yM541P
-py2VjnbJSv9fC7i/B3QS/B7mdrXamIRlvUs+y5VQzfCv2Mc3s+4gWUQaaSKbVbBTQTPTnIYvdh8r
-33CCO1tGqkWTIixt7P0fmXFz6RtlNLMYgv01eMEkAmDyW0iZ675hCIYy4f8/XOuZUYAd9h/cequs
-9z4zTDQZKvVUDHKKnn/3LTSbpqSrrsyNiydnGQ60M0fhDn0JHylF12Sww+TfQu6hvOsqHbXrgeOk
-3qwKadrEuc1zdRplBBYIbk7XDfQ+XXbphSYzrVExHjRebAin4qV3HM9NwoITMXjRM191YP3+G3u5
-JJzps6if5KvRTr1hc2HfbwX+bhPqN48S4+hmHLeTki6eB/3M6pZC4YMkowB0W1UkuhSklWE1Oub1
-lb62KGvm6uul71c4Wz8JGe7mSVhZFHaLYfksDnAQUhHRjkdoY3L0ReyAO34jkSHd+q5OtzEWR6dk
-z33IN9VNDqsdKChiDr/sX8mKU1gd1FhDR7odXJLw8NTS3xH7frDlDncnafOi+loKKRhKAQ/jIDq5
-IbBADvYp3jfpbzwb0n9Oh4cwxwU2BJL3jPCxP4V9P5FF55I1cAkeou6dIRKhdL0C5Gkgiukwt0MS
-Pwh+4Gg6OcxvKzd69+lc2YalKIUCVbvyq/ChXGZCn747TF3oH19/RN3Z4+h2LGiOqBlMy0deJ3sc
-mO7Lh3YU2GU+561LGQ7nkMRr07ufi8t6xXnJUCFizzxfRyyIdf+5IoH428OqkOqxrsI6IzAYPOvO
-6NZmM0z5NdYQMidHz1CsXoSS0vVHEp9njfuGbyVmWrQnibNb1YipKk2n3oi7gfBe5EnoLinEL9bO
-/5s7CY+ssKjVpP9XXYQxUfQRk4OEay7XQjvdjDSrU+pp4NL1gmhU0x4GuOhzVX+TYV0bqFrwqzfy
-OvE0fVhdLWiOhdl345lfbI7ePU4gN1+ImtsDd1n4A2qVOfbFhmOU8f72LVkVQC1xgKObSL33puBf
-O35E2IQPZSBZ1x9YKxoVeptqg27Ri72VD3ai64EKPvxuE7FJ9S7daY893fiO6Z5x6+e7RZYhTlQH
-tPVUoR5W61oa2TUk806n66J+5H96/GyquGp3xHSC0foY1/t3LYSwZ+WXLGoIQOQsNQanOOQhPyfQ
-LZTKiSguh4ufNNTJLkhwle4GDPW8OsTfpks9tFtI0LSnzIeNA5kqpYgom02iqxtg6oicDtG+rQ2e
-rFHG3uUhN41hWkEqLAMr6BaDdbLu9oNrBt0U5ONvpYOG4z6U+7cod/JBwiC/CiZFTBXvxwmxmSrA
-2owL1A1xF/QXzVIHPm+raca2cor1xmu8711/vI9T1AcWebMiLQqsgQ70jMHhTOyWnFfLVxUTCruZ
-fd1y4O/YTXJIaGscjNL5kB4gmB0aoxH4at4xhnGXXyGlD2TlmSPbfVIw/o9KdeX+llBrtBFX8jn5
-aIp/6sqPMazgcZGiJ2jALvxZtYR9Ks7/HZRzuKLG/qR4u1W33EpiPyM23AqUjkcrDUctGv6ua/UP
-wvM+Sr+peD9mH6oB4pf8LrwHMFTHpGoWwu0Jblr+oJQvWe3Dsh2MTMEwdFvjSBK+oI/Cf7iiLUdU
-hYycqWHR10MnJdxiTtsrPxmKyY531glCpfqHETudELXRtL/0IkHuRQXajMNvrBNJfsiFL7w9qfTG
-WRXbsPIP7XGURIDNURoWN8uJeyi8jcIWR2vKyqJkd8vWXt58ty5suHHsN2cm6ydgpwcF9LSvEgnI
-+wmnNFCdp2MtflQtRp+0P+xqU5mNPf6iTHt+uoy5wOtIaUz8p2B7HSOSu7gpI3QRXCC0t7rwsHf3
-XHd/Fjg8ntJJ4F29YxCJIX6JpM7oOYx3C6SG61yhQndMOWGx9cZE5oGtwswGhgzShZu09M/3q5NI
-By26KF/JSRvA8o7cd9OhLorC8XTLTgANhSdeuls9XGGTR4tnmvDhIUuriaGaiuU5DA+bVNMuIfNy
-q3ExZtU2WcYjjicLCT99A7PRYP3MpAbY4DEoSqFMGV6/4RVxxA3VsDgjGlX6h4h6e7xv4skIqApF
-bHDz+/Dv7Hh09sDADDOEfU3iitXnSB8gJ2QClipwrCFjl5pvAqHWZD4XEThckcrlekfvf51Htjs3
-Z5vXRkvAD0gVBJW+n/EPt2Np4lpRkhjhgszqkpSUDwJv853AOyhoH8n9l7iMtHY3tD1vYkLoymgs
-oCGTA2BznbaLQ+v01Q43oDbVpFjINRNGwYACQWtY/JwWMfhMimCXKiwCTmX2JCd8YUMdDnAW9EY7
-qu+nTuM+BNU0CP3fJwBy8v6qXjjhGuC3TzwBUJPLDMXapANTTGkJLf0Pw0TTL3x/fbAJfEFrcEqC
-eiGz1Tb4dNblfD49UPif81LGDJiZq4nGd9ULJpHzyTX1fvOTaY9c01v0Ub4XIcXVLdrYv9CMZQ0M
-2qjd5SqYXR3ViI5/BzNJu8M3otgkYDBIZvHF9TOJrtRwtVj+34V3konQXDuvHw9ftoCr+R3HCYz3
-O6Kkw0QO8nnVNEU9GnOXWvSGihH4XIK02JX9lYioAu6+4VM8PYTCmf+VE7I46MFCDdjn3T+yAaxO
-GGWANqSX9PvVt/xUk6sreg3hPdraEULgB83Pgr/aZ+mrWI3cLfxt/JGYb1Mnd+0SLlv+ix6BxBY+
-yOr04metgn+GtHqI1i/TkSmEHtce8MmeuvYnqvZYjz+iiO0QBgr0QGXEnM9Wjy5RBrmqECUIA+Et
-GOtmg1bFn7+dNEUo6VLaM58/fnC7d2fzIr68KIiLBYXZt3IZKTQlsPwhb7YXa+x0NNAZyiZ+7Ztl
-By28YYQrtbh3AwrOUVPCHR3hRhcfpAKOFs+unTeu/ZQckokyg6vTE0ar3dN/n4KRbKCNDvjHdd83
-Ds8qj3wN70nN2BwR1WGGFTfC9ggE5dJgEpQyuP+lSxPUQeOm7nF6FpCDjqXKA8Hpr6iPC7EBJ/8o
-Xu/iYF/d/kSG5aK6dGCCbPgNOmBw8SLIYVJpagLwL7RMye2rYNRoWYJcHOpPw4ZrGdXF5yMvPM0Y
-dNz0wD2YmLeb0wdOQ8hbeDBeEdV/kGVOR7vSJqM4VQI29WLlLIT+k5m/aO0Oit+nnQ1x/Pvg29TO
-oTk5xKU3KdhKYjD+UCBF8xUzZY2vskkvwuErfID3BdtQ8npGiouPqImlZrTSCV7FQsxPjQ1UCtQs
-RM8WCn2LXQDgj8/K1wMQDF/a48BHlKcAcNXCxKyFqUXq/FuPQ2C2dljKFW1OVd/V11G2CgYrlYKz
-+PY/kZNL4cannMGYqps5duwEPbo4AK2ojDCkya7BcmhLVFQuKARhZLBg8rcp8PyVtRecWlkL9dmX
-9+9O0TumY2EWC83WAhEIuVg8/7Lay3QtAHJjDUMDc84huXwNdUyHKgm6YPZR1dEh75yVPFGEKlXa
-ff4NbD8ucqQp1r/5kyAHfLxxIXZIZm4DDIgHXQFfZ4LnmdQ03SkRdQ31bFoQPRQ5jbT6nBaAmmmX
-P/ZmR54uyeufVNCKJ9ZDjc/dPaGOWhloDb2iBfioWj6+FSoot0Jbe+eavEmf/waNBvpWpC69R1g8
-N1RcjoXhVEEy8cJP0MTqac6Mvchq0WDEPtCnOiniwSH4QMUUB0fy09QQHwr0IcjydEH2iySWg0or
-jl/BuYubysTIKzqkOsaTtZRismMGWQhkPEHmh7a9fGZ405dEuOnlVZLVJ+8Depx5lKaaTWlEAovm
-v6O4mFBgXKydSVqn7tKXbixl9DDkpyKTMY2sIg4fW578eSFH09szsIwXJC5LR9BBRatqPWsLNEBS
-rB/58dSoxHV6nxETDkKUJgdi3rqOKQCkivqJ6DhGeZ9wdL2wphw8WjHN2CsBXtkHdu3QPKetl63m
-sVVvOow9Jv7vPuhhIYWIIap/XoWzJKnnZmd3nt1zDiUQKZCnj5Zhxt1VQvGv1i8Y7t/+lSPodjkW
-e0/+DJGmexHl6yET8V0jE+HcdCC85gvVAiEwVO9ky50kLW0NLcPhvT2J+7K1YR2dhaQNlACOn7cR
-qcFWihfKBarIbYcf7yY5xVzvfuxApvMnFKz1mH49KTOwelsUNiHSn4bWlq3NmtNjbUi7jojIh+1P
-Wr18EGk6rTHhEjMejH3P8d8hqQONTZ44RB02TXY9ZFSRiDxCLea7dcPnUSjAvSblRy9e2ejPi3Df
-WxGrkMy/XLBJj+LYOwnNFNPvtR74rgRvimAl6q4doLJ62tpGisBAGcCGFgFA2/+rHDu8XXjsYB7s
-/HQGckIJatiarj1NNEhrlHksIYP5luKVOfUCDtDE+OeTkQNKKonxzXAhC1ieWRKSgbm4w4gi0Vbl
-PO4rz3LUnyMWXMSAsQTRFoTvI9hs3omnsXc7XTUwW00OaN5Rb1VMb0NQDndXc0odP8mSO0tZ3QWB
-SaY1ePdmszo+ZHYqc/Wlzvcm/HNFm8rWcNTKaind3u8QiDNqB9ue97wIrx9gaXRgisbDvO/Xu5B7
-/u2KUTwQCHoCthoTgA2RDNKwkLrRRt1kSYHJ/rY9XHtV9kejyFtVkZzI1YwL9HVY0Sl3kZM+WpJ9
-3JM0F/VE4vjrH8uJw7NkHubG/sxHq2VKP04rh2hK2joCNdiUeRDlHRCotWyqQ29XiCcc4nhgV4pC
-Cb3Fqb12JdQr8dgj6ZcDU9rTLOtJP35QxLgutoJWet5jX2X1Wj1apwbRKuEGdCnNMBS7igcB/za2
-q9XLV3fGYkGPt4znyBPeuXA1ZRsxMFU/90hYhBTCLBsiQ5uCL435zpX8B2Wpip40a2A/DqR0i2Rl
-jpGtAYmQJc2VBRkiH8dp/hWxuEbROH8aoZzRESMK72wAUFIjZj9PHRnLJizdsWfkMKG2i8T2DUXm
-sRiKEsEv5FXr4/Qot7terxs4WduatEs9uXp3jJBoRCkhqhUQ60uWHqDUDaLlrcZ/o6DXSYIHybPr
-ox3Gb23i+BkUSmk5JVbliea3sW4RBi3mPoScr9JVj4HadB7HgNtHB4B3qWwmYNAYsqw0q632ZPXS
-MBthPJ6MFHR6R0kkcGX5VsAmxpzAksRC0ISsT9hbM+5DRBpoTfG4CHjpzZu7bsBWV6lnNJvvsbdE
-a5XP7hBhlIFgVqRT+nbAU5pGwDVQKzlHum+G89z4jVZMcIvJKg0qQaK5Y0M3LNzKHO5Xw9uEI5f5
-wD65FNmGObdq8X18dGnnkEsVfGuReUh4aZJAxeuZ2a7PzW0AIE79FGRIVOdvj04FlY02Afz1UC/+
-ppIHMldIvICpr1QKOjfSZ0OPUF/ImJ3b752zr4rpnAaicPRmCOhPNMZvFw2AYDYIuctZY6rjlNkV
-9RUSu4Bx8uY/b8hlzaWZIBDPgefKqrTcE+3JLYC1TGkD11nTN+M7gFN66qhVkb6GRWDy21dQX1j1
-/7VNqmfJeOjLkOecWuGLS9x9MrH8OQ4JDoRWrSZxDqegWdI1LHmiB1ApJbPYEQNls7KAPX7uko1N
-VYZCZVg/LIFsWVHoeBJgKMW3IHEIQMC6dGrwWmvwapIXWK8JfspSIPdPUeBdX0OpT6npyX7OJ/cx
-e/rIeNG6dlHQvwTjfgMpe2erIlu4ti/o3rWppPbpENths2GJ6QWvBQL1SIPSLZiau3S/UHYZRk98
-RZDNFligcgs09UTu/2a72Mb0K/ibiAgyQk2nzXhonZ3lamxFicr/l6gX8XB0H5htSncH9Hf0AvUZ
-MQ4qstsog9xXY5Cvd4n3kP9P0K2zIzhRzZA238fBQslA2WK+GzBHo/ymwH2sOJkq4RzPI2C9CpzG
-lh4RNzVDGY6d3WmShyYTeouNjX1PUUlwuNAA7EGoacTv0c4dNpfKgndVhgwzgXobSNSQWDkCeSfx
-Dhy5NnNSkhKlquCdt05bKbLjTo6JphPgct/NFcWEcc7/oW5EAHEbkh2+RWunX0HT7lYOhQ35oEtf
-2NL0sDUaXH716vJETDx2/hEmO7H1+4p/KGLizX3NMS8cA3SwpBFGfXldZO5ObBvaFiCWu1M/fm5G
-un3upLeu34STdnn93pcDhSh7mGSnpY62VuZ704lX9vU9rlXx3WVxfpFFPqPjI5de86ksrTBLbvYE
-iWqGo0dYB22bvULcWNp0s4WbQf4FgL+JbrI4YIkIt5sKHay7prDo9t0V+aWKIsVHh1M5USC3AtCW
-EcC07CTTX08PAobaf2Nkkbmix8RKPZkvvErZ70Z+rcz6gkff6yKpeL+Rf4CXzHc/VPpPk5m8MtXe
-xpz2XsSqmHjVMs4iblAo9E01qfSpR+5cfhaL2rNuniUcU38v04IkLqBXEtEzePCwc2haFr/LvIQU
-j+cdpw9eQGJRDQS8FzOToB0uPHruHzK1vOEguSZiyFHybB1m2RKrTZ0H1BjEcDsbiRpZutJXsxMW
-+vpicCwblmIcf6OcDW2tL2ZNCDo/Hl3MwRucMVWqyrRB9PyjIf+Zv8Cst6ctwBvQ6pEtddILSRDv
-DYAKbac6/vdJqLfU709fda+gjvBOJhN9LU6mPa2OdOeZU7F0iuaS4oWsGx8UYEb1Zj/uPv9bnqmd
-0Z9LFTdBpRy/w9PJBVTkODq4MMXubKui3DwqsuFCYrOkNloawuNo5ejmongDDxV5xUUi5ZOwiVYE
-nGhQoo0Mgm3NkW5Osxs59mZ1zGjDXjQqGUbnYqOQp6jSp3RmjbksXktUIGU7N+91oB6ZulnXuh1V
-KL5ZKU8mLaCgQlZvjfF9vgOI3p71Wi7ClpX6+BShb4XlrI4FOvdx27jU5Cxf4wpyBXxajL379cX/
-DRMpaphDnIlmY1BPWqkmBvRd93W3xRbL/JZtaGzz45+pc1ROdb7yIAn/6W5l+L8vtBKr9pkHP1np
-aFBhz+5R35UGlqWct9MKbav3K0rPxmnIAmH+SxKJHPmMnzfcZ5UyuJq6zBaDVgy5hSkuHZBOP5jH
-I/t5BWP98wCA84gmKbpv1USM8ya3a3hbSy5+a+m5A+1WoV5qxnxyRg5SqmuB+SzzEBrGuldV+dOo
-7bXnLodPqxeJ0lEPQmrWcu3BBxQabGvlQxLeTnFOGXc3KPyzZtWT5Wy5n7Vsm+8kQZ0KP4Jm9NU9
-L86CHabTdyyVXoVGPV33Ypyj3uIaOoq7fiqRcnnsy/9qjn9CpJrHwzHw82TzbfYhq90UEA8fRCaI
-ZuQO416DjtfDSfMxmM8oj71WrPT/g+Jowp6BeYdgt5Id013/Ge63yUElszcz+Ax8nLfb0eBGG4us
-SQoSbZbkSciXDFwm5A6BUUWU6Ebn142la41z1Z57+Eq5LT7t5xS/U0U8gJskV4p1vs0P86HLYXog
-/tTbXC9qA4EuR8S4MwMEawe4K7opiuxq6L5LGqcfgNK8VRsvqPWxikbc10MxqbVPczNJQBXPxoBc
-U5isMEXr42I1NGGBBPTRR9UTGqiqf8+xapMQ0v20hROu8r8dhAMiMSfwVsW0prmOVbcI/vG/SGu2
-SuidTyRZPD+3iPe0C25LXsh1N8sqXcQ3kUusXtszSRcY4xQ0QBfFI5fCEe6ZnRl2XPpXKoCI5/z4
-O/aU0i64w0r/Ug/dKqJV3C0sD09ZDUf12YVGJ3q4uYDOEdbd0Lu92844NqslvOOIvxLRQVwTJpP1
-HTo8sn6G6nb+3dYiA2Echvb3vCUlCruEIysYXFVXhgaDFjEi2KW4hYwZrBIYAwAssM2y8PzVaLjp
-FYJAIHFcLcbBFRtGfBHQ6v/NVDhHj7EVdoywYIU09GUc/qs46mm2/sx8gK5A+8z9PDcn7tlQl87O
-KGcIVZjAN/WmNFw89okBiMJ1MsyRkWElLU5adTaLUXWdpevryBuG5Z5QFxkR2DbUWkz1Jopb9EoD
-yFQu+fw2j73JwMdLU3JS5oXZAwvZjtEKWsSXxpdUmAF/qqsgtZY3EFuKADHwuYOtgaegXlwfKMmG
-CVzRPYMuod8XHiihdl37AjFzLuLgwp1UAULc2/kqK6HUSjBXaBgB4jvpb49fi2CcH03CJZW6M+k3
-Kb5f8WVos0zO5rtUaiBMcEzYsXlrIZzFCURS9/kHowLgV2mTth/w+td/T8/EMyOLNkH9/Fc+8pre
-O3BNQx2Ozh5LN5YrfFKA8YPSRi1hzyMgdtUcR6BZqcju8VYNQBX1lXy1NlEL3N5fRJUXKgiAtH5N
-qICmcjf8d00rzkgUXZdrGIM+eWXuHWkGP7/FKgU1z4+tYEk9Q4NhwkOAZVndb5ugDi91cz0XGcnH
-4iE7cAasFv2cS92ga5e628EDMrT4BqJYazsyJq0XdF2zL6MdaZMYeLdeZxkfhd9UsCCkrh1hTSjW
-rQE2mxWFti2dpofGgdsdYEoYWWUpTQ8LZ915WzWOJItWGbPyzGTYU9c+VIi2piPYx8yS+nen3GA5
-WaM9mFGA3Qm0bOEe8lyuxZWb4CsNp3vNK19gUFoaTXos96LkNh3gpzLhG8JBOoe9d6NInTEEiwiu
-nVBfKjhErX3UC9LfDaeIAsJETK6DkbFQ+Mvucm/8QCv7diCUoPnJJXnA3CGdW252PddEDYfwstl7
-QvKkZxOVjfuiWfi0FhFoXEU89Z3+7SIShS34ExbxfIag07J+Co5FlKKLaJafwvSYCjM2WXVSyUWB
-BgroyXyfo9ieVV7csnco0EFC1/1UYFA4d7PtiYWpzAyJ04mLMlyUOimS98xo2HzZMWJTPQDixZgF
-rFwJU06GoCkAzUg4SX2e3X7CZIYb5VL0aJeIuPwVf1EMpoXJ8MJnb3fYQy9QWYtwwBZns/2HC3X/
-ZUZ6KdDkdB3iDHiqpq6SxYZNCc/zl2YreNvdY9Y24L2ChTMbLDrrE22I6i6hJMAq3iagOvQ/xXmu
-jq65aq/DzpVsSQPHtE6rUNtowAZe10rTac7O4qfPcehZetXpWZ6orOsUnGHnDmYYyKVOezloV9oo
-hzTRxHjHUtTPrzqc/srOnoOmmIevQF32tYyovv9dfeGO+lKnWRaqXHtzILn6iT2f2Nk+livDUkNi
-qfztXj6fy4p65SghrWU/bQsLFNAqUCATRYu5lTDRBtJJHnK65OEwXqx2PlI4+Yy9YY5BdVJgSZBP
-ZpqW5syD0aHo3j8XEyri2k4P8PhP25J0sgznLUWmYRSNWN+cnJgGU01h269ihUkEdZcO4MnucjYT
-E5u3KbYB9lvbxGa/4O46oo/F3b8T+r1MOoKfTKexidVtLkfS7bGtlZiVwUtFxCXqbuc7uPHIKJNG
-6wQkBtBUmAx7XR2LNWxCpeDu6sF6uij7+Czf84nZtsPjBdUbgQlnq03yFIhHMocCgF3dWmFNEw1N
-HzddGLiNm2ejsExAXJZTwF5hVlvSiEmJMvQmlnsFMBS9DF8dV2eYAuznbofTb9FUC4+i24fCRlfd
-vcmZEG/uyz5RZ2Xg0Kzr62V5j+UwrhUVfAraX1GWGCawbRv75iPYfrpsY5DF+tCVwVrKvEZ2yQdy
-OxnP/n/EQWdufqLW9IJT2Mcju7lj9EuxrFFXDQ7ueHRm6qCjAktuaOhDX2TzredmyhlZO9wkiEz8
-rYcgVAp4kJcBbOlwa5mRMEZ9OgiTyvKFcQqS8GCmhgGuo16GHr5wIAUvSvC4zZ8x16mwsU4Qa1gg
-qZM4vneFgg15f4y5M2y3QgX0qV6JsCCw86NQY4tZtZI/QAscjLgVku+B7433Rno+gAQ1e5qSPTAb
-zj8BR9Ue45lAFuTwI4Du+BYjYaXuuj6Mo+/lPHdDanngvPtEojDOmSIjwq0u/4jigC5mz9ow63IW
-QsjBUAm35uo6sd6acjVpq7RcMJ/RstfuQnI4ZPCIysA9XfKHgoi4f9VXER8KcBYGvBX7NnSKOurN
-LHwujVp43ZY7GK1dzBmZcQ8G0QoQDyQRH+53j2NQdDLwgA0+B+3eTTOaAQMrBJXzBbpvEesHl9Cc
-+2nej3Xttz6HTfmFmtw1Lkz/1s4h5qrVtR9y3Q1mtcJRfGUgwDP6z+36/O/zUNAbnXh518F4isY2
-7cSptCjdv+uYDUUcrTGGSy4Li8tFmkn8XkHJy6ZRJYGCKyhnIOX2NgZT5rOwXiDtofBxOtPxXuCn
-GV0q8H1FS70qRbvixLzacXjtninB8teT+TcvwH6WaZ2pgSgQpz/rFSDvnAZ0QbzzG/+J0osoT/Jh
-9gC/WhoHeDHV3lyS2VeK0KiISC6vw6luE6xKjnpqtjH3DU+WEFv4m92NZHd1BwBFxwWgQcAOf6hw
-e0nPRhMF6wq2Ue7vgy6C+5X9MTg+gvG7YGg62wsxDRWlg9kxj/u8AKH9xagfLRoPPOBBcCTt6qc2
-u23G2IJ43qh8DgiIAN+P8GR19uh77Tx726/tGGPEPDyKTzCDjjUIWUoU3IljdRho4e8jDsKDE4C+
-jgVz7jpVKbvEO9wWo2uHtkKxTKSjSWAps+tueaicP2cAMo4vmWMPIHXGKZ8YWJZVi1sK0tJhEfT2
-/o5EXy5rQgLN0RAJE6wHTuNuBEE8ysjwp4EeCAWVYXt8g/oVkYCg2AWP9EhxdszlYY5dzcwa+ah2
-4sehRCfIkq96Hj1fKJzne7jGb1HbsEKgPr7ap9VVfMmWErtdjWSrXZFhgO+ySB25411/+2zeo+kF
-10zBEfwpQ1evzRv2EbgOPYln/ZMPYMH4hg6s0Q1tLVNNjsTTXIu2uOMA0oJtUPqc3Vgvi8DD1yYt
-dAS/DKvPLOELcZQ+4sX01vUMC2ogm75nT4TTNUEFUP5bnlXVlGG/FnKPfSRqUy3pAYi2nZZrqP9E
-XngHIrIUpC010EEgpZXt1m/NmPdlqSjRCdBmQbDc34T/6krok9ti+zPlTKFqAy5Oa8lXna1B77gS
-M7qYzOoBMyh8S20O7ch6E6OdhW79VMeC6222e6WO8scrbxTxEZ+eDvoNHnvIVee6+2D/XRJQ9FpI
-BPs/Pit0fSxf2sSGIOoaG/q25rTGk7JqOTe6bTGHTAwxtt6n8fmtnjoSsf11nYSxlTqghnKsViDG
-ZjYiwDrOxzh32ZJYbmjn+oUE9OWb0CNe/OKKlaZ+OdYm6qZj5DPdG70WsFm3AoTKbM2ZRGGlIO0q
-eOeFW1C5eViMHIRWqO7VO2fsw34K/rAEOHaEfsF06/GuFInOFGY2+I6kYgegEAba2ptp9ArdpuI0
-3z/osbHJm5T8vHrtWxVMbQKvqqH6I/iKSboXGa5vE21WBWrPKHc3UmljP9Z0Lb0feTwzIqfgXeZt
-QvDI0VM580v9L+5VP4or9BcsSwIvhzL4RSgbTi2+ntO2If7vNLnavs12PJOGHz+34zSSFGVtGqUx
-ux4ZWOlGZPCuMBmC5vPRMrg4eltQPHTM2LBc3l0jrt+xVDfDJR0GZhoB0WuLw/dd1oKbUSf6Om8P
-27whqlFt0IJdi8iXmhDvQMs8NnqUMK1hfnYBCEj2oaqJTzqcd+8+7IkjlT9K/TDe7akR+XHJ0Nqk
-SGsg57GswKJ8mO6fuHfaRid5KlMMKT8auND30YG84Stz1QHLV+KWk8OFxR+iCHyhwKkdBHIHG0Ij
-73Tx6Gv3pslIrW7irLYiCXVKlsC8T9rU/q9wfex28IVtROaLhcgwhGHjhLZN5vwxvM2BoLa3+HBs
-Fc1fs+Tbdiu76uJTCRxsK0MVqMnSHExeyAmDAZkZZTrLl6OMmJWDMI92E8loV9T+QaiOD2ZaQGdR
-Nq7mmt/lyEpiAd40TvOY8idZMEbvo6C/bjxxhnHYflnCRfZa6eQEukZv7qFT04OV74gSHUEu1hoz
-wdpfkWStwSt/p2Z2/RxM15fRuRTLBWzF8Rv9yeCi9tq2DzXFbMctlHXtRhhXsPJuFbILUmzgC+Ot
-G4k0fAYI2WYHlmRMoqcpkY95zIDLzjJsO/JhCkmkPZaM+DaYGVpW/Wt+wjFtP2xppiYaZpN/HbR4
-XiuivuwK9UeQMFduCms9xSiufeQFcxeh9ni09ue1t0ES/xxoYVJzDsjUex9OBIOGek0aIFwsSp6r
-wBzC1uavdtYVxzcnszjCa5LWp18Voz2WZlCoHikk5OJTdlSc0meMn6Bec2I9hfdiASXYXrX8pNGz
-rFwm7en2FxkLwKI26hpM8na981Em/hC2a6QZ6HwxirREcK33Z97/MNv5qF8MhFdNJtw9wTUlV+MZ
-9tnITUVNQy5Ckjr6LM0aQBbWLzhfUycnqv1okuz3zwS2YtCkrDz4hQYFwXSV8q0rwZdjpU8mVkri
-CmLR+4OwhNUjvW9aEogv/V5Zp9wG3HGgVZh45H/bQPiTQrXh7eNBFubzvfGYIBSP+UaGACwD1MRR
-qE/1c3hDe6Yw9CMhCkKrF/L0fi6j2Tu7rtYBdbmWn6bYhTJMBfazkHBxkAbld5LaJShCLKaP/HbI
-r3YfcYKrd2CWO2tKkYELOIsaMjcxiGXLJyYRNWLLLsRqcLhGn75ZkT9ag2iKb/JQ7RjsMqmuWfsg
-z7JDHnaoIw5sYwE7Ur4wIUjSjuZKw5nXCX6Ww4EhesGLUKwSirZItNr315bb1zyb0NkIhNyack1v
-Go2Co/0qT1758KWi8pM7jEEEbXKFqhM6XKbWsXDHcJetcraJkolDivukrSTSThoNpQoVNN4BqXuR
-GdnmtVJxBCfDAMQLj8l7NVoADrXKTfkWWH+eqTvfNliXZY6ryVjUAu8Ndz2ik83xltz6Shpa0KQR
-46kceHyo2L7dKfjyDRp7OE3bhKse3vrWlQ7ttL2cwUYtVpTUDwsp73xpasu7RW5F+LHtrlhzmx8Z
-eU27JeOVN0u31CKnh4f6vaADqKiV8sl2XL+Cjy3e0/7lhIhgGoDbWyCdcnP+UXYLsnVom0CTruxI
-JrhS5yea6nuA6JxEJEdNZ5DDDGbUm2efecX99PidJwYh5a7nUZ2dRWEMJgADKGLUwNJU+oWje+Rh
-QnBJKskk7thd1Bz56eFH8rt5S1yuyooO1NVwh3LnaXMAgs9YFfhZohGq3LhyXFyMNzsXTLlFBpcw
-V1DNj1ZtcEUlkrDErGZ6S95qCtveRy/BCdWbYS/KlsC5hp7ZuEr8J4LbV9On2e1QCC037Kwkdz2Z
-N8K8aoNQLhYQbFWCy7uahiCqpkQmoOVtxJgBMwa0jEDWK6kXkLYtNKdoeZV/p0HIklqzi/ax0K06
-bQuATClhhUVLsfTWnpxkNEHNBwxYmDUI7CXaUeBDZYAPH8hlzS5JD+XH4CGrdcd+Gr0Uh5DgSIvA
-iXFMW+3D7PPCvI0ks7IZHGBAYm3wItsAMy9HGU/8+GmjMAKY7YEkObhGsjqRhl7Zo83OwMdELW74
-rX4SngKGQAUItkE4RrYvRv2ME3lnLSu/MZFyH2EqCKpCs1/FmmvOgk3EQ30UoKPHE40XpzoArc8+
-SQ98o6DUewfiWCyPahmmL70nsfBY0IxunBeDT9EDIiGdQSfip+RbJWQFtV0nVBdxv3idjVZGWxhT
-LHeDkB++4Y87fmUfeiOz7c6UaOMxWs6FMbcOQtcf8iYJMEKH7520Gf/njDaMHhuOQb14Dz23WLpc
-yCJD2uZ39rTRaR8QT0Bq5y+TfgxawiBierTXVH3FfEWCeYCx2miNoWSMMndJ0EwXQxH2uasXFd4c
-UrzC4VdzZOmOVeS64fn4SGmu78GX93vSHx3eQEnT+Z+6ljWPeqLBZHWjvFoGz8yLUNl+uj8jmQO+
-sm02CkwNIWu/UVrgtwk7jEFUSqI/bqo70H8Uh19fxg0PENkxfkrOj9rLDN6sa/p7pfFf6VzR/4q0
-43Mdg4cqJp2zklpKNqsKnKIU4quP7mKOAZ59MKu1fwA4x50jSFkhTG0K4UDA89S8Dlskzgqm9qvO
-oZbzX7Ltd62+tekV577dP/uw2IqsYf13sgWChOu/FjZ+tAZJSWj6obfeTSFtcISUoa7BQQhiD/+I
-fixf6+h59YdgJI0AmTIeT8IVI8tBJv1n7bmL8zDN66GYIPgzid+BHomz3aNGqEmreMpvvk8ehnmz
-sHrei6csIm+FHDiTkLupwlb/i9jsktS8YzqqV2jcEaM4fGeiKtehMVxj8WdbI+Srl377NCzMDKIE
-aakBIPb+IAhDdZy+CG8NY8h88QERESxCzMQ+aJI+mqPF64mzstcZ7VNHOTWJvbGgf44UEjL5L5gj
-gOHgGYIUDqEP2esV6T6EQeOcxFiD8bMjAFsxoaOlhEkBS0oMtd0fKbSnh/crgpbKpA9QS2fgqxQc
-b6WGbx6fiHk1QFwZi0TZ6tj86pBZbjCJbQOTTztt3wNII8wTnx9acmDtYd8SVM6QW4oyc8j6nrLS
-epY+PWf/nKnoPCZ3UCqtu1AaOPnSdzugKMxBm4c/0pwqKbKFygsRjdvkus92OR492lWm/CEMo4ln
-ZlureA2HBlh1fHPCHEwJrhRl2QGs+pgUhvRibVvbnZZX+Jhe8I0CHi6rZ0sc3vFD3lCP0Cvb5VCX
-2KaklmQVzURA0Uw1uBrevwztBG0KcPEPD8ASVgVjDJVZJobLLE+QyZJsyOkbhFanY60TC5Ryixwt
-s/JZZqIfE+LGVK5P9qusrUJc1d1xjE4YA0jWy5iOqTBj4wCUIvz6bMdS1ZDv4y+JQgkmjy6VshzY
-9L9wllSoWosfo3exyFgk5fQ2N364vQxNhOSnEEwqsR7qAwnxanvEsfPdh61FBb96PB+5oufkwSOF
-lcp4Rl2oYv8HdF8gdehl90O+udf+5ibCosDboZeHBAgG5rjooWAJXDMAXbzlHF4sTSceZerKwc0W
-SQxlZjM/jMHOeKkgaOAhKL44j7HaJGK7ZoH7mdd7JgZn083sV3h/BRZXKGXG3Nk7afjH6hZfpfS+
-rNs7hWcYlxSUOcf1GdQva7uIFbn8P1oFebnwjp7CydGBytn7XrcUJMyEwSGPPXuuoF6r19cA4aMO
-3XrnW/Nnk8Eb4A1FZzq1/6nEBhJ6Vnd2DkhOdBpDEz4ir/4O0oELcf1DcfUdRXTVxDGBQQsgCD1d
-Z4uRCpDDfm+27rfg9054yItupTa3qC8fK5jVfh4Zvz7DSUY/ueilbPK6nTSqJDlbTx1+5DAw247/
-0MYuzuy8wmIXhwmej27xhOKLgR/DkpVKartxXJyTWud+LY2Ptj9fHoku81FRS1Rz1Fpnr58mY2jr
-vGdIuZ3WTT0VUXY1Hu7OEF63oulYpI0Ws3Wn2oJAs0tRE1K1i9eeOFetXQjh8yQec/KwVZWnAZyk
-TPEYtWVHySv0/uCwDwn8OzmWa2miQhbw/uEPIlaZqqOCcngdO8evJhb8Zz2BMP5r0xUcJrhp0rmb
-pCertoen1F5zN5ef19knxujZCZT3ecxV7s2060uCpwfoYssfKeGD0F0IP8+hXOUqGatCkGUPsyEg
-+f8fiXpHiTYwucwEjQgOs4Ldfdi7LSedU7E22yaOc+Pa7X+mIsusg4MKrsLV1PEXuTml37GaQ7Mq
-CawmkW70vQGi/HrJRPclBU5iO79JfhWSruh6xtIvD+6HVph1bG+IsAZ7q7gMQEGpUiV3O02btzao
-yffv4yTX6qax5fQtq0MPfqVF2BnNGUVAE6KFxVm+162lc/tczQyREODDckfcBd6+1e3eVlgg0Ikc
-6xqnk4vaTMRFUL6bwXUkrdMQUZTNhr9ScaIlmEpZnpDNHuUkPV78TJ0jrgpykPb/3jyTQnxcpX+Y
-SPYBV1Gry3E4KRdpwNZkIQjhiIh2dTNxrZsr5miGzwPevajPcr4cVTIh+3G91kyqoXYJpbJhYaZ+
-9MPWWFMP9x/FUnugo0chnOJE0Ddt8EPVSePQqvD/NZbazZlGTi+kqH1T6fnZbK8UvpiFLVxNZ8I4
-jECPrkKz+N6YKASWOww5PX5Gas+dyFNRX+4vmkogOFt8RW0+x4XVtiDEWLZbW7VVY+BKse+0mPnh
-NAAtRI3PoMAReDarPZTQIPRpW9yQ1MX1tN+tcefP0wY7zfdXNrGGbsc47Pra1Wi4KMohjqecCkys
-m3syQhEru7VWdEYsoS0PZLNSX3sqfRJtg/rfZvOAAdv5DQVfr1PaQ0KAKbi47BV2VPAjHWIHCfZN
-8xSZS0Df9voVr28VtDx4wz1McZcOSy5R8sJBbOmDarQrcHdOQ0ZmJ1ad/1p/o2O8fdC2+AONWPJW
-HsrKzAi7NhMb4J5Rq/h64EI9jDXqhBGz1keLCIZEDZKJiVIVM33mtFl1+na9jsvuRrYTUL0hMSZz
-r+yIsiInkNApwXGqfc2CpLai+Ba3EVoI0ynrlSG6azAr7fBkihCmeyqpP69IKQAA4oO/O/iqJyKx
-B6SNWNX4au1Z1OWCiWLUVQ6KNtHiWXFrLWJ42rwKkkE1Wh9NZo1tk4ZEq62yzf5eo6mIaQJbiV8i
-rh4tb6iTYupPOb92hlzNL+hUx8UfVtj9n4Dm5M9H08Jmc62mDB+Y1GLoHLrONbhdJ4ZiZQK8/B6X
-CnhB9smFRLwcs2QDHtmP7l/w2Hr2YB5R8P4a5rr2iGXPZMX6oEYtXgEh5TcwBeOvbXxWHxXDS3yU
-khj+HrL5HSjUj2o6Va7Cyorvy96IvxS3hEz9gwUGhmxNkp+Uo+G34sMJ8uhxYhoHzqCbNhMEINsN
-JsFV1b9xQQNDu4rNf20TEvQ+kzWsjgfhY2b3VMc6NNvUNh/lWnIS+dI9C3VK7OP7Kf/qdUIWjqDp
-LRz/eZjeSgJunKeiDAagngdvzcvfGOwWtUAoILPclOIw9rxsJ+yTvCyYrafirak+osotS2e+lcZy
-VldJm9z236tyOTU0/B0xtYLvb3Uvat/L7rTYzIogM3VoUgbEA50tFyKE/5i8/rXIb1/eFUR91l7L
-R+2DaDh4/8evl23LVUd6GIN5NT+1UVLdlr8FxacSUaB1M58Uj8M3ReNmzQxsLdTAG5ImeoRbcQLT
-LF0QU+QNrfN4K7tyxfLXfsegbSRQ4CAPU5j8IZctd77HDTdQ+M5l/iXxr955CDE0aYqsfNZsd9R5
-foj678UH46nAe0a0xH8rYwP2venT28rABBcje6OeSzF/TWR3Kj9M38NcoSmtNa4uWZPT9x2H8AYN
-TGBmZmnuk3DWLlDGevxdsLmE8hpdWhC3JN+Y//sqGqso0PCprkgtcP3yiXSuhnnoGvYuz5ShS5Ff
-o5WxJ2b+wucEWNYHL3llpXnja9TbHS4ATqVGe+nRMxsrcNPmsOuuLC7vmBKjeZyMj4S3ThiQxGE0
-n2koPcNrkTG/NE9QrHv2tV/zAUckkMOnIKat5v0wB/N/x1//FTNVY7eo6Cdcubkl4f/PAfWaQW8T
-Mq6szL09tvqG2GXymPoM1trF9dVvl1/pYD1aXnQuu9HfDegBuQOR+VKQy0UHRGyCdHREPQN/Zi0f
-v0y1iODPxGLkmLglG3heoUd4AwL7v1mnlEYx+QNHKT0YZWTQobb6ipfot60TwvEmxsVe5P5r5/sk
-PfVYpLtfJ6B2bRO7JbqnYojIaEQdA/3HRW2i0OSt21DQ+kc1OLOHz/96dpUq1dAUlwjzAF+KNrH6
-Zl/0XGAjyoW/mSwt1tVU2LdyHfQnnT9biTM7ZWOKLESfqYRcQzYUiB5MDSHtvOz0gr5VYL3lX93b
-b8tSagK9odhhZ7fMLKDtltOcjKLkMJJDYetBQ9T4ZAndFeJZBKK7sTUU/BPAAP+drQz1pdwRjfdk
-mRYpLerFrJqaN8npEQrRH8gCuZ90KBGc3Nkx16YM6fovteOePuu+7eqCD+w3+tcr7GgJ+r5D4OZC
-wBHSR07RUPRbIxdcq1nT3u+dtQXipYSpRb14Kde8BBTOU1M2mRywXwJAnH44w4KKmLNazXjw3IlF
-pXwRBNTJb1vy/qR6xt1w9eTHx9Ctrl8v/m2iz23EJ+Mqulr0adE9aYkdm6Ny9tRXFR0Jw6CjyCnY
-XyMrrpO8QNMeq1JMEPpGR/zT+sXZJBXnA2y+QhDA7YNQSW1bV8L5PEZsPyI3Rs1FbEzEMtvam23l
-aF8x2CAmy8L02Jg7vPBzUUX/lgiMuzFAeDUZKIQX6/U6Tzk+b4dSKh6aGWj9FqwqIViB+RH7gIuR
-/wIz3m6WVRy0hZJGPg6zUTeJ35nuTiUMRV81utiVhYS1dv2dQ+Mo9h5I7ndblpFAFx9hAo8zWQF/
-hk9SMljtCD+odDFLwjkGXeZHBEdU+em75v/Oabi5LmiOGYhI4v4Kyxo8+HPKU0rDtx/IoaW1dOZF
-7lq83pgPqBr4SpP759L9AuT7BiTZN4X5q4bO1HabSmd6U3bsQrlr9fEQ06gRdEN3TiIS2NERAPzZ
-/ONRU+ZzXNo0lteAG0bSz1qoiTMs10KK3m9C2bc3oBwgHLXZ7Qe3eCz12QsrTebTEHmzGPyQZC4o
-PfHKTbXBYOnk8pItFnHB++GYqdHYY2cpocduiYYedR5SqkGXMKHwR8NBiZjlC4sdcHRhTISEpIMo
-0/gKwiLeXyvTnh8STjV0rxtw25NM4tsH0f8b4C7ubtFnIMm3cDa6lM1lp+GaibNM16YAD16ef3TY
-buwGMAJNmkZXEteNj86+FuO8oet43rKzAVqmSVNK2wjJgonHGcKR0KkpYY1MYPWhJWkhgRcW51sj
-OUzh198oHZWnscqQtWjH9c3bcEZ8hVFesnDU5Gmu/6AtWGE1o2bCZlWBh8WT2/A3z1VjR0K1R88U
-sPQZ5EEV34tGA47heBzjC8gYQzgYQqdZ9oEDpeQhajsvItA9wiBDmeRuZJwX/15/hvbjplfUsDuF
-s4lXS0H/sKyVUc0oyWHXhIsLswawNE9+dsabebqZw8hUlOmsyCYfq5H1vqPHr8BbrcVUo5dNf0C+
-QrpYYA3QP/Go2A4N0+/qdW2y5F9rBYH4cbOZWxAp7BD/okujGpdzXqxhdulKWf606mb7+3Ve07AM
-4UH3AjPa6PeJBT9RB80Nm0ki7WqzecT++HJ4hX75584Cm2ePxfVpZaB04f64RuCnCCUD556jXROK
-0McT/w/a1ZiFaJiKtKkGfBLCEV2pMktBkNaTyqT3nLKgQGaa0O6kA3PyiN4MPqS2F/Ca0Akmme9k
-16v37+LCcOX7MdXAcZX0DNatraHJemB0aUtHpbKGkipoIemZEQhJyzGrGmhaih9Ld53Qv9RxEEqa
-fhAm2c5n/O5fU/2I73wfqwgI6mL3cH+iueTYWuf+Zp/wk0ytrCzqRg75uUbk7KEodk10APEnGm2D
-wRH/CxJD+ufseO4b1PqwVnC28oSPaDCT354gtlRYizcwxIB9UM9mltyKkmbj8twulWqH5v/8iPVf
-J0gDQngMOgukNMPBj+3Q8c6FXADnSFk8j0vE5bUuZP9iT859FdQ17G7b9a/63Cw253Jm8bvjRrtl
-C4KhEliLsTaRuLSuJyf6/0QKyvB87Cxiwm9X0eWk0xysyGVQg89R5evEB9CMTNrewlaWti2UfqSb
-p1QzjeQbBRnoU5Wb4CeVFcbn2KuLrjDBB+GMMPveVvDF78gyGc6elWqoNzdFKpHJEHLa/EjVq1/V
-f+PL4GyRh/0X+l5YqxvKiXuY0XEpZfiLIEFT+TNVUxJng1vPutimn/W5HziwQB2IXTdCpoB1Pzyd
-gAV2PlRRMvN2tnlP4Oo30JkD/Oy6wmLWviRWB7IgBzD102m/derikg5BfZhRH3r3VEAa/9XI6reC
-di39T8UT3L2gykjSIpC0ZgIFGDDBS48Vrm1nzTapyQmWStzYSP6xueWUIGr4EgiPPwuWVy1KKkZN
-lwS64BWW92gcgvRtT8KjtK9FPXvXXqDvexpHavaigGXQiccv6hrdYv6f0YJ+703IecFKFSClTpVU
-WMkwvd52w/7u7hlbOEAx1CNTb7dNf222bQdbIjQ8U4soCQgMdK53eV2jGjEiE9gnSbKkDMnN7Jqc
-jTh2SSS4VscUpqZkPFiZn5HtEzACWhgnTM9s2gcB8z8UvIru7CnNMUI3PR7/EagT2HCbHrpxZp9C
-GEup9kR5jmUldmDMw/LUhJwL9JaXa0Vr65POhXrLR9IaHBl/tO7NkM+4WpCxOlMxRJAoA9FVLPSj
-gGrxlZXkizBQ19cj6FrszpUN9L0x8hqPQy+vJB7MnPQqsLx4PnrQCctv0MO8G7LOrggJxpDwCMcH
-XDvrZNj/mExXjYFhQbfxafae050h2G82THV9dgVoog9s/1O+uzqimECGyOSj/7K2kjIUub6uzyLR
-RCt7GIQpDx4x3KdY7s96lmQyW0Y63RjzffIlphFemOT1GVScov9zxzG3NOy70M4Z+yk3S7cX1a2T
-Fsp3RpTjcR1DFOvCOY3QXFfQnO2Sdpq3LKRaMl+G10fySC85D9jlMm1XJGpjacaA7LMUSXhlQ5pp
-mp8DO8OX0dT80ou4nTlRHyXp/v6xrHNXPPG1vHfgsiE1oDlzRiEP4Kh3hatSWnjQBPn/k65atSyY
-jwmwz5JGMlPoi/3HTFr2VBgzIHNopV7+3s4ZIPiljfIQ4+JsZNgZNvUB+yeHbK608MDC0MwbYhmP
-+k3trAWLCxs9JIXhiVMiR9/FFedWgqBSyo7CwaaGrZ0BXx1CE/iTG42cu91Fhe5oM7lZf3ujDt76
-gsTI2ErHWZBlscTtkMIFoFVgdFgntmKMl4R+uuf0yRCmsJRPvFWVJSJbsLGk6Z2qdwAKt6yCMbe3
-P+HQRI+ArxJXeDXOC4CtTSfrXjv5EmU95p97msmzfkUTwb2eq/nYb/+TMPLRPHX9gvFyU3X1T2Vt
-enH6Gu9TFGHWSTDRRYEC/e854a75Yy/I0G54/TyE7j9Ge363cpkryEgdBahLnKE3q76NAZ2JZn4h
-jd7TuK9D0/aR43To+JaOtl2CAl5vDNBsVIbU0r7rKanImc75+5PKkRsSdoSLd1ZgEeYTXspYtzmL
-Dh2GD0etxwbTJdr+/yS/HK/SaWUixW1ouEWlCGSLfd6ywtu9Ay7I/aWBxxU/4ISS+0J0wWXla/dF
-CvWOmRh2DxrS05zLTCNMe5/7saI7lSXVJw8/8JZntox/H29RfBRcKBKhnKUAR/18Ypa4k0NMjgJP
-fa67hX/TJmXyr8ef0v5CstHSP1Iil5Jg+1UQGvqe/BVZE6+TpVVTRX+CQ3zlwAb/rmpn/DKfS9sY
-fvyXaKeJ/hgtljq4HAHmfEtkE1v9TECJlcwc2dgHyE4Z88PaOB+CwQ4fro+825E6oP0qM6jZH8Bz
-BwG1TjuU4uL2G3P5NIcuTWJzCBoLxgDp+whSpjXQBkipqgT2pt39S9FtLbFiqUd6kFDar3ezoVUY
-6sVgrTjrShsddIRI4Sccs/4GQs9u0+l3T0NfHPikMymoWofwRATzjoEqNjI/r+ubPtQYeDxR0SpU
-pnbeMoRNYIAWCR+qCmqzzeDueFNUjo6TenEemLGSkCg/ClvgIACa6YEZ79jcUBGDLj/wXWz887cj
-9IcFjPUbCYaFOoYt3GrNXcNkRbqi5KPjbksGkO3LHwnlsysIIY14f4IppUqB8ZOsDBc88aKsJPzc
-uYymfUFzQraIQUsGp8VcqxibAHU+Wy59/ZK/9DPAATL2I9q478x+ClMX1q2Alvr6ytyCbYLqgFMV
-f21N7wgqcp810MAnd5L4PmQsPrl6+zLnohzxQ25qyDlnMNEzDSM6yYJSupGmi72BOpiIx8YiaXgO
-XpiZjyyt4O4xBJjoARE6AvDybAxdE/54CJDrEbYcNlTO8t9EuAGz8QFrAN12tRLgJVA46vsyFKIZ
-8T7fDH46nka5nAX0iVN9xfqn9GLU3M9mguLz2acyyzNkLX8fx+YRmgjUhW6BH6+CWumVXrZm9Y/C
-+TOAjU5sCr7qWU+AmFL50a2ofsOXGXg1ip1zbyd39ThPtzjSJGhaLUjEhPlQYb90ZQu9MeGZkMwD
-0+93fvhOSbOjaTvmOdA9t5i9qSWHNKP3O5ghzz301DMzf9qOHf9Nhaj2+0l8u6disZSrPwmsOZ0R
-S7XA5bHThbb1EZZftHelklQ5j9vknGVOg89tKAmftBxIoCLmvHEYrkCEgptKzQ14N8KF+9FnvmOx
-KpDf2ADmMCpn6kZrSdj4ZugDvmXZJo2VDWDx5Dl5PAM4iuQMjfVcUEXxWhoAQ8X5mnjat2GHTjQL
-yvKr9m5onE/uwDeXIZ5l5WDAB0onLAYK+MX7PK+3aKW54FpvqJu16874FjlGYbv4L+IksEBeBYXy
-FhQQ/gtAY7W3I7uZyvrLLmouFusny1xnMVrCvnxjTWWzdl7BtI+avlZ4i/4b9OZK9daZc2q+UcnP
-FHYraZ4B4VC+eKX5LUoRRL4wt0vTgimw4OCTaXrlKPPkd0MKK7V8PMwSuElX3N3VVHbEkB8RSMtS
-zuaRxg4fMlsl4ggG/HilTvgPo38bXFcSUcS50xHMljm+SBsCcAbbKkm74sbOIkv6hYfv2BPbtaPk
-pseqDOxGrowOqmx8PKxuzEUrGszj9CzEGUHQwnCmAqS0RA4ZjTgiqkdSAzVi82FxFrLZsEzzjRVT
-k0EI3xmxEg1cveK424koiogIAuBAnBqXOW8JmIjLbrVVuyK/YIjhMUKnKdlzX/qrTrF+BK+65MQG
-yzGbdDWCtYBdrOyK/nzbMvqU0eYguXsbiqjBx46cQL8YireSp4mjGceEOf2T49rZwB8MNp/PTaqG
-A/hhp/77bR8wUvd7CKzeBruV5Ko65UupBmKhc0h3VToH95TBOIBN2X2b9J3dVcCRoP570dw7bYKA
-CcKj1VCu59TjItr36a0wT/r+DRQt4+Sei6E99dquDSXr723hVY1P71r2u1JwSVv0DcJQMXTkPspS
-xdg7BtRgGrmmfrP2PTAW7CbCJVHWz9Uqv4/uCdzo8N6aZeIgKAzbm3xkjTs/HbSofN5iODD0vPmu
-WURQm8Z8FJzIrv8gpjpz6WwENYtnEy3Wyk+ATEJzSROYEGGOsl8bmVPueRVcIyG2zms+LLFUsnyg
-CgA0nyWMgjFjS6+d3E8wutghV6o0orDOlfgGJhJ4Fmz4ERy1WQ4NE7sT1zjRXhsv8G9SgdfPDRro
-D2SDlPLaNoKR7OXPPFTye3YprOuf+wf8v/cY+GPTFZ5lZs71eEL5Zjs0ukRydz9049M9waiSTlif
-OXEC6fy+fcPl/oJqgGeukugrqRE9rnDqe+7zkC7887pC62XM1xJ6rJaTQ0GGzNBwzLsJPZhIAjfF
-lMW1RTWtJjCYcdui1DrYOnfyVwGY99mtfdaeQqsat5aTmRopgUWTwVGvVzQRZonK6fgxMLsdFz0P
-svXhHSNTqB0E2r/L5aIBDsmYb09f9nZpOnOVJd0cHJXqVplRPDfAoTM4rmj1DOWXQR0gUCJeMdX9
-jr4+7EA06c+he/VSWHk1jJFKqbzHeKmqaLVV2+OdI98SVFT43Aw/oThedH3X+wYSVAe8s/aYiDK3
-mGOFHJjoilj+vJifhU05HfZunb/H6mjZGjohVxBgOx/L8sq+HHl/fvJQBJNRTSaAxwm4fUv3ThlU
-x0cg4CFx8MJDew0H93zpEkKtrje3UYr25l+arPew7um/mghd2bIHXgnYcuhtVdVpoFBC4yttxtBw
-/3w/hyvJtkMAQPkQ5KxGDX8xFpvjfWMEsaBWGIXHC7jjH7H6alFimi98iLcmRKa+m/+ocr33Zzci
-J1/Z+EwtsWx8C1eA75eghAqUg7nomsXSo3IyQSCLTecSj80LkJ31JJJf382fAxnUQp4M8gVGi+xl
-h7c+TwpaW+FAb/5Wit/7yLnw1ZjEtpgjX/xZsums714AoSuhzDVHk8ELh6TemXXxUxieLhDMHvng
-pZFYO+oxGPnzR/z7VDMll5uwbM9N0RWJhaxjHDMvqjER9AlStNrcy4RbLfn/bPf9W2BRVAOlpP2O
-J5QlYB8VJC9dCXGJvhCAj0zU+G6Rd+e2lIMhS0j1W7z7tM4S57vEprl13U9vA1XHGBsTsR4kQsZg
-K4/MVQGSZSFLqs9eSzuFBnSwrcwPcYsAMs2fdP2LoY1Yu+eM4StCa22wzRA1wzZuVgzL+0h8S456
-zzQGqkiXyrG/VYdFJCN7tJ5SYHi6bI6FycW1UP6x+4ciCR+aisnVlfOHgRdBLCv5sGXKc6YgIlfN
-g9dp8k9iUjLtZwDr4zTQKueQckwfZVSaB8Z+LmshuCyDgYmMdGzKB+ZcjAzc47FFjGxVRnR1ULY7
-btSd54EEQQCYLetOxn0BZ9teMlP/pWWqyJ9xLvESb9Dmpt89AXYFHEltzw9oSwE8IJNzfW5aWcRc
-1h8Y6U6DOLAVt8DkzzXLxmfy3nr54p+PKgxZwwjNlPHR4AuVlT3C0X054wznxjR886RHQIhoOL2s
-ITUyV0h60Vi755Dh5LI7FUM4+N7UQmz2WKUI4RHWyOa08Lw2DkpyQcrZLfO4YdoXYqGxLwwWh6Fy
-zG9abFjcQ9ivj7jJmpjefNV9m+/FWMuL3hi9mLJpPEnflV0BQhiMWH/EuYCEXEYr/gkwn03/XMQz
-jcmlwygOG33wDqYA8ax/iSNb5LUon979W9FFI3c82GLsh4QLZaDqqyz+NNi8zqF5dEgjy4mUrzmJ
-PXLL0K4i4OGEo15DqoEybkabxpgZtSP7czdXbhl/+8OO1bOE9kasWRsZcKMD6X5/8B54tXRi5j/k
-DDT11GjDJpqu3AwvLIbH1kiXnkVw2xtOJei0Akj8I0zpYlmO8m3DSeHHI70ZVg2a8wbN+3kplHsU
-/YuDiKU4QiJ9dEKdx9O2gfihnCuPvDuIS+ppNWY74NdkSX2MHmU8OdJ//8Y+S0E5br6Lm3yUwMwq
-Nh+qZ4QEqZB1mIODEXSk1Oj5RTYMLbQLACxy3RDBO8y3TurSuxiMvdmvJF/IlcsTiWxSzWiZrTYZ
-TBbJIijasjOUoQIyGhRHjZX8aJHm78N+ulocGKyVPqTVZHbzEQQErlm1V3NTjWWDsVABWguuy0/C
-HshTGRDK5oA7py8ebJ4TIJ39RH1Z+xRo14gw3VCeZ3QC+PhDYVGuKNjOiuGc6KsgOn2WSD8zCeL0
-9EvSD+akzAEwvlBXh2B0Xt5Hwz+GYL2wNGrzR3RA5mRj7xgvenMUP57/rYFtmQDqepIY71DyaI/x
-7YmGS5VKZfdp9qr9CxAYpckk4+RU3veMi0jChOLp4cq0WscxRMSqhynck5KL+/rlUZdSijQYKTEj
-j8suFYOZ+bCr13lEdfOdG/hOvjcx+2JxfuTMbAT1ZVARd46cYq52STC0tTqw9kr1s8FNSchSSf4R
-bTnOlDN+UVrdM0JXgcZ7Faf6PZem8IT9kTU7vnOxDnY6CM6FS9mmdJKB6oavMQb9LWnPIww900ig
-+e0YWQ6Eq8HlHi36W4i13fS3Q3VG8w9QRK4w727s+62Ma5D/XMgKZv+WB7poa8w1cHaSwGE7hD4a
-btROloKRFtgiQ7bTwscVVS6LLR22UcvTlaOh1h0x6LRwwyiVPM2jNFfQvVysImsTgYPOboGB97Qn
-VLz794T7HNnTkYGq0S+E8BTs9zGMoJCZJ4pm53BY2LT7yZOM1QsQyLihBsshA5mViql/Q2DOjUfu
-vDivCsqr6uYDAmHEHdyWG31CTtYvj1cs3SlxWSznQkPXiPhVMuAfrRxdfBz9bVqEOa/7V3WkYp50
-sG/k//hR8/Z1zeRPBNV1P6QTjW52gmAY5q91RrgBB6fw5CDCWO3DNfFarvg+H6jO3EhJQhljr47F
-AHs7YX3FHQsbAOXqZBFRlKByaHWiHedG33a7L9Ku9cydK51hVgpZvRt4UBFas5V5NZA+Fs/V9/GT
-+1jfINrkP1OIt5pQaD0BiAhBPVgIZt+0caHFJ+lGhCq8IEpfqVZguvvEQnfHtTqXcblFZMNZ0jiA
-e/bDxet6S7KT4cqMWXlnjot6FykY9/zAx8xoV5yfG0xor0/SXySPJYfzb0nOIctp3Dtx9KuS9yKY
-SGKxm7J+4dLRxWQI8p76aNqgnGxdNxH/+/auBmo4aRaWlcjwux77DN+wDfHplW8RPsQX7wwOCZ8A
-V/yBxgIPXXl66VuoRshfaEWHPnEC3/als8gaDmna6WgsiK8mnRO5Q2iAnWnOlne6aLTgLUdjgefG
-VMZ+G3OGgl1GnIsEc9JKfbEAHOktuTR8JUwM0UdEqC7UNGyWqdMs4Y8jzAPN3a+IIxYXgbh98C0s
-/vwoKw+wf16150o95G7HXIqpnTo2bcuelMy9GD52zIGcpTqh+GGFdcZGNV28zIEDFmq51KdH/b5z
-XSf+OfJUWUMZLFcRyaMIoysVh0YsVIDdXB8baiYVrWxOxnMiZ8UYRHOsN6hdczp3c4O0Y0SP+Z0v
-gr8xFKZpwiwUwDfN3Izt4cT/QUuE4napQ4thq49g4lbKIFKdHO8s30cuAjQQdd1iEe2C4UrVAEj/
-3vWGaSPbolOWRxbQCgW4nvzJ15jt5RNe/doJ2L4qJ/WcpQvY3boQ9euXic+mDXZdAU+C7IzRkTaA
-ruHJ8KweTt3bt8bXx26BmG5TKZdtCoG/s7uhnhSX+f7CyA78xBGQMlTOlSyv0GMIhS3HI88/yGcO
-Dql/DTznhOGXt9OfUfQGlqkVo81n424hXRxQMMYNFK44dFUyLe7h3gCEDQc0EfUOmdlpPEL8qdfd
-Ed741dCHjwl4EQWHj3/MmedL1icDeTIXLyrDdDSXObIrelQOVFvcqjz8oCQPdbKwe5QN8rIN0NBs
-DHtaZXCS886NDa7/yluHKiS1KvvDKcu4jJK60JbvUbed+Ks1ZcRtV2rAjurJnTPg64IMEILnoOUE
-2MFtJHWhJHlemLk25+2C6ZTRsVlxtsYc4W1TaZWaGRpDZaaFLeHuN81gqMRZaQ2oQjyCa0SMWuCp
-B5E8cXM3RYj3zFxKRxilfPgq+HWd6Z9w3jGIXIEKOJvzWLxIxnhLYSvDjtulsolpyBbkb4D+WN9k
-pbTpWkS9W88iCRypqIghcq22Nwlb3aVkE3Z1qNj9+sP5TAQ0/LngLInHRgyf/cuTXNhQmVyqOl+g
-HPQSef/947UcBZyA10yxYm9lqcgPLKThaTi1jXao+/CZt7Cg7nS7t3JEBnfVVU2HLGKG/fQ1a9du
-qMHPFllxfWs4IWlnGnybThMtVaURym8BYQ1+NwWMi3u+wuOqLz5hT9lihoDc7TzeymS4cCOD+Jzf
-d93I/yHlzM21lMBLm5FytTsGxI4Az0673XJACNSi696bMJzVm1d3Vheognd623MrqRQmULrcyQkk
-nv1EdZstP+mzT+wGtZD8kNhO0kCDVuQQJv3Ao4qnxq6lo1aBZ7pNE7f2/zMs0k6e1iIqiT7mRWGG
-rKJ2B9L6uEg5vMrAtCkiBwvknKan/cNidrKjvKhcM6jbqVPO49jy6oRh73sOb+kl4G+kls+GUKwy
-RlIqnfJtqbKIZL7yNK4jTwy4e6aFGdTa1r8T+5VZhAymNHDlER/eSZJz44/UA1UmLffqa2H/4WKe
-84dcdnGIsFQxMSvYvI6BUSmGvLgC61Tegf7ZIQQHom5GDUwgahI2zFPGk9ll/7Jn0YBkddtRoxgS
-it/r1ZqXcAzv+h/PsAL4XPspBwi2WHZ3PsnvQymbJj9BtmQ9WblOZJ9ZmBXqb9IU59pxT17BAgEL
-XVorzyTMu540bdV61dTeLQ+zk0MyVEQxvOh441iYk4WhM8JNgNr8PTvcYRqJwsp/IdaTuI/I9/u6
-lwv2lTu9IUVsDhWuFxUg+dFWMznYxEp1Nt0AEQSuq1WEYl3m9IIWMpiGkZ5bzUf+AGEX+APJsKdo
-ecr+nvINncb5JT+EEdvP/GuY2bKh6IpIo/U+OssVLuVumil6fvSwaurwC5+s2jdkjbprDHTzkZKW
-zWTuzejht0CX8GhUXvJ2sd1BenNnYHu5K8qBocs258yRgURBZTxknF1vNbYWG710ShjIkJru2PW4
-5k+qLQkvl4aSbL0NCBXA6cf+Fb77fgG53WG9hDQXujbbcJAChaew+PkWciG5ArgWIOzC44ThMMOj
-NlWkwy83lsd3/YVWl7kPp+05EGP75yAghH5+bxx8ihJdyO/mgFD99Bsn7fOnu8ZgE9R+3nBaY7e3
-Hwdt0b9Pjx+TX8go/qo1GJZalWX2/5AMg/97uK2eQGWq1uS4MOTUAryvg+LCDvu+fExVh4Gq/O+A
-0/9sEZC4eL8fdRt3gp1GuHVMp5P2Fuc/NszmcjidKY/RMLYAuP1f84L3vR+skA4nS/8OTHInw/mx
-zk1bSbuZTXQ/8ZRrAO9fUuQ6+VF1Ti7qNKaJrR4sgpq5K6VVjI+qL0QM6HOTqsbKtadd34aofnTL
-MzZjtYtIDKJ2RbpIqDam1lXKdzRiv5u6JN+9yxfEdFNJEXfvksAbZFqQysN6pg9miGw3a54UdDyf
-dxb4DG6RHKz3deSpvoW6k0gOrjraDkSIR2fI4zkJgN3ZRLmTMCJVPW/ylbI8Xd9F5z+m2/r4YWMk
-txvI1aG6sD87sEj6IAodZzaDcGqdT5ngKIyzs5u5CkSEzXQ9Gb2NtLqV0HHTVFtHr3voJ4CT9bea
-LuN0nYl2I13jp428TLtBgOad48vJHCEXRWWq7LFFsM8hFj705KylbLk78m2QEShIDiC2oNgqIyQU
-3KIKN60c9pX1v8devMxGZDGunASxsMgFhzn1j68qeuwTrr4Y/46I5DAIARQEIO8I1dppT5Z6T2LR
-Sn7/g/2uoruBRjEog6rOig4OL+2+qV4HQWbzAKBgp85G1R3nWmnQ6yf1XW8bEcR2EcUD5p+Pz77K
-OPHe/Xn2jRYgLd1kEm4aXLE8s36wP9/i8vCdgm0ZYFmUSopK/gQ3NgaACHHz9tXIf1Q2OiI3WZhr
-ujY9BGRg8QBuIHCHJtPSXGWswK644UVycyETSNX2mRaTEewMmKJjCFqZChDmevF8Jgu5BSQWR+MO
-muI30mDeWAE3BT2mUeQGkdWr6MFwPCWjIuc0Mhfb2OvHk87aYeQ2txux/QPUDmbITY77XVzAwXWA
-JoIEVx8X/jb6YxwOLroUhBN/wm46qrfHZnrcaHnUTINwnzgcuetQlocFx7rmMB6kldsqJWihb9L2
-pw4sEeIb2GdOcVfIbH4uqNvlf8EIWbOYou+lcl+wtN++PJRTykTrGc24m6IcdHNogfnDnMUKLzIQ
-g6XnO1828M6MpgEeXZPg+vQsJYDr5XaFhau1vuqR5dyf+ZkDug1Eh381a2yBpbbK4pOQpOOPUkKU
-YOnPGGjZsoZn/3Xfcdgxw21Mk7e4I/DLSXdeRDi58iagsi6vTrcL087eyW1Lbqx3sgThKNtU/geZ
-1NvhtgxUsUPKyUNBJyOXZCp+d75k2BIx+JMAfe8ZvR/pAL7vdKQtMlmZtlb5nRkUwVBaVumTc6LD
-1tLz+YGqOpPSj7rlb2I9YK/NhTKjtDxTvWR6Ysxoxhn8cQcAMQJ9tDj8d9RA4PmMheFqN+nliGBY
-rFucf5rBonAXNxFKTfksDXH4Vpl+vRRtX0FgExQys+Q+X/lBqCaOQM7YMCymriSgKcvayqnbUmuF
-l2AUMxJK7qzqY5cE3t7e6xDEhx2kOK5cM5XrTmaRAZc40u5AQhcjMJCDdG1nBJH/MToF27VlI4bI
-fWtaY+40tWwTX7L7GC+2Lp7J09n8GaeSsfiAhO12+NLTUne/s1u/RC/+KKhJ/wP8I2kOr8vi8Hts
-Da9SyRc7Pu+BgEXNN9W+inNWrnClPvbw2sjJxeJEZMxQjdb1yrS20rJ/S85FonTPZv7grvN7sXJ6
-y8rUcYNb9KwYy+OIRo9KzR0iExbs4kmXfaG0j5nQ/B7PLxxRXvCoTmbmMABiSgIyR5rozhUmZXXL
-TRd4RD2mItyxyent5f4ZdHj7OXs3KRqBoq43EPPiaC/vvtB70WuNk2yIsgi5nlNMKTB6JKhdmsKE
-YysJj7UDXi/l7ApXUhqPpYtCA44kBzJMEzfv0tUTOrLCFzlHectOpq2zp6th76KmWzWb/I9XgJOd
-tnTMLY37qblZMcrrQD3BAYwH6nDoLrVF4Gp+vMHJqkaOVDRNICF48mQGXDFk2dK2MFNz2rOLmM7e
-UCZ8wQdx7Y5jzJZLGkUH8UoakPR7Kq+XTKmvJh+pa54rV2kEr3Az8f35xIuhT93KVR/LNowIxzQG
-zPGFJp28TX7Sc1AmtAUyZAfj14RMbacAX2SjiQHVCbJbx26TqHUztEo7IignNmnbU2/pCNxi/wrZ
-RxMXgDo+DbQwMhEdX1w5Z8ILcLdGsGMBCT50utAo6ZHLPattZe9OXK0mYfrxAHFXzOGpEiTMd4bW
-uju/lB+cPetDo0lAFvtP1fnfp3WuRMiBCTPPDlGm+ox0yDjJSUY0hs0FiTpI1+KaPhNSv0FusWIR
-39t4h1Tng/sttjmQ+wwaZgI2+HeNJtEgMG1uAr0c5dZeRg8VL/Mx26diqZLT99iLL1d75J5zsZrR
-70MKzdb3lmnqAhu90aLrbna2RPwMTwavlPsPT7wys1w3+dhAWhKCOeqtkhzOZTE6+aVFNJi0KLQz
-z/JvsV67ksk4KA7+x+a4hUcOdVLglVAc06uNaz8KHJFkHQLbozGXfHpTv2gIa3E2CX7tOnIDrYLd
-9kGjmpdmHqcD51bLaK9Wo/M6sOHWvjQT6hm5hBJO7xqn6JirVqvbriEKf1HRokSkT+DyJeEF6vY/
-LabkZFqHayEOBQTZU+eXUQD0prZcsRIRmYgAsyJYK51RooVaMO4X8DMlCyqMvt9uCsXwvFlKqq+0
-nkZVKGTJvHLro0MbH/mPPpHObf5oARr2/8vRVV+YnYCUStCnU6+9mc4VhSgxDovm/CSAKDsRpjqM
-OtgPzkH/Bzls6IDI5pbzDsoQzNcZhRXsv0N9OghA7FXZQp6CyvoPQsrmd7m6bQHb4L1rxIUitYDW
-o5PFQor0x0Cuj4xIm5feFjIjdmgFBTZcqwd1Xa9QrLUc5rDn4aabfOUZSa8JQk7azkE/l3XNKr6v
-wMiGl9QdJYxkNX2b0mkgEirKwj7t0RslyFro/9yLYveDfGjnCDtYE+MlxJVCY+7EdDoUBVDYGeAl
-B+9hOOh2OKk8048j9IkzydmP9UbJV28nmCwbpC8WJJbrC2Xwg872vt7I49l/E65V3oXVGiT5Wm8m
-bWnbHD6Z9cVnZHontDLGbff8Dhms1KruUui8AxgJHXK3q59xrh41nhDtxqDs4WjCM+5HuRe6GwMq
-thso0qQcqAeguUiCdID+JXkrx091FVQLj3rh9/psNs0X6O0P2YMQrZE33KPUiw+UKwFi9lanC8L2
-5rGAPGB8a2nXDMQviU8lQe+Ef99sA0qbTf0Ie0MnPolN8ujxYf1RAMZ5wMxxFNRk2/KliH2fxu05
-oOWADJZY/xgNXzxPZ1X9+dJtDlWDgo/jqLAwMB0LBETziIJ1A7WQHN2klCOcKDdLIsONeJ1G2aYD
-ItN92pGV5q3XTsh2Zu0cHTPO1U8XqvyKrOWphxi78GQvsoK/lFEV7gve/CPID4fMLAmVNAa2dGd8
-V9UVKFQxez9d3r8k7d3qp9ZS6PgNUY1MVsi3YgVuJv8YP5y4uuXGM9A2/b0CSHBsCsiaXL7gEo3m
-ok+jAwikG2jppwXDLmqsZT2dY8PJtFrAoPlu3XKzRRnVV+ORggAjB0jFS0qYorRvY7nZPT2fDOtb
-2ccEA0gR0JMo1w2S6ESTjLfNQ0BBNA8JEp14yNTjbqirfI4gPl93Yokhz/UPkYU6N3r5ZcHTiEPg
-HEHZ0OxMrOtw35zo8DPYE3MGozpS1HY9OYFNvZcLr126XNCe5WpZ7Iv1wZPwyesEPoVHdunr0wHi
-MBjDUOgVUpeconQp6iDt2iW4nkrnlV50BNBQO629m8SKjCR8MWAmu1YjH+op7zCVA5OiTUFl8aRR
-HmcrPEx+2ymmc/02n3OZ3PjjzMyN9MFv6H1QOfwjuboRMZqCdXLrxw1ShS6DigCGvRjXfWijngza
-CmFRwS863K98Uj/KjX7WAPikhQx9Tsb8s6xNiNU4IYbcPsUcB+4Un/UqdO5vINFbaVT5G2Am7l+H
-BGImhnswSY2hr0vNBi/r7eF0fA70q1KChFkJe1vaY4IuskoEUedC9Aj9ayHRBcX5YhRiMSDijtxa
-DSYi1pcBXQD7wDa0cpzgeZ4au2cwcz00xx7pKwRYjD0v+YCjvybX5B+dX+5ZZTxQuRG6wLxU/8la
-XntYWQ4xwghrMZUkzmbqXouqoKq7hVB85MBl9dJ3BE6o3RSRYi3iajGIYoxsj1K55eK5dZ5iXzzA
-ax0uOWD8iw6c1gzatFuJVMLFsLs7ZTC+aAB1preqfouwSlB/DvbpcudlXb1FLadrRLo0S7zI+HMo
-1mfhsHiXftfF/9/60Bz1ql02zpl8iiDiRtvBYIWCDOeLRAco7ueXX1Ayg3BfVhxsrdrI96/g9QBF
-Wg9r3uh/sVrFfv9EENBb/PWp6jyIwB6KDBQPjDc5BCSg2kSZfdekUDhve2dljB/s8shh084PFwN8
-6SNZ2/645RIRcR2wr4oRvJYrAMn9Dfdj1zQGV8t60z7mGy8A9TpgubTSdTIJlLXF4peBDKehXk6c
-PEIvlWe6k/Yq093sVG7AtJxceOn1/ebZyZiNa/rDiSe4wGIPo0WPUyaX8Psj6ZDpNq7d1CkI9AVP
-ZaVVDt4+ASDrRx0pvrxDNMSwMyQUtEEZWJbN+/BzOe2q5e2Z5r3Lc8qfjpsvcfhw7dsxDOcrGeIC
-PmvZUoqRDhwcjBeAVvyVpwDyRUOv9a4peoYHjM6+mlWTTF7frr8wxFh3ll9sMf5U78hfCjtwY4mO
-TPF/VWz0KhQudAuuakG8Rd6nEhEGTPWaWqDEQ8HbOaZEnq6DxVCHa3QvOH+DIq1F339TZfbJffiz
-VkENa41q16wyxUKfjKHTXTtpcbdE2PI2fXsg5JiHZQre7KmGqHO4xyf5xfgRO8CuEIx85mGBYoyb
-CPtb/MUNSp/GpXgrdnygQP6QDikeAMGLSJHOlfvBuJCmZghTbuc5MNmEWXXa3fZV+DY5b4oC7D8b
-pzYd+Z4kw4vsSxQPRpbb6wD1gQYWPJeXLwUZcfbub6GgOwK8CJ5rp65INvooQkYo3fCjsZxGxvJX
-YikLm18gp3MQ/LfFlZNkZyXG/T9jt01kfHZjSYTGRdV/hv2KmnWtSrNDqC21k92LWoWEhU4upvT/
-jt2mBbbmKjDcatG2E1vqJQIxn3adKQ05YKNz5/zSTPAdzqndPRiITqmU3vBBpoFvzBSdYkcUTn3n
-55lpMQJUXqXDHHOfldF5K3rpNLAd6+LWqJy91lDO21b4jeJe2+iIFKsEbo13zwRiuxZ3WCn9fr4L
-W9RKNeOx0d/BOs/MZ9tY2DeJLeztrHDEd5GcgEU07fVG9/n/euu8sfqbNZx3cKKMXHeUTPBBRZj3
-BmRs2ryx2cFpxwuA3lUgh3T0PQAu4Ftxxg3aaYH5GjEAJzTv2mmPgnRPfAb93fSssq4k7pc6pUeK
-EiN4pQnfQDi6weDO8VnwoLQ87fz292Y2j2sArUr8n46a4GC+GjIVHrZIH1RyAMPHAvuTZkNH21Ay
-6oBQps9kotr8FOlp1ZQ047w2jrDshWXj4/2Kfo4S6pxd/Ma3ZiUwYN7FNjvgy8ZvnJxGDH9U6PpJ
-fAsWpJy1kCESgPYvv19hhIKK5nSU3PQALTGiaz+OePwoTfHq46qz5MxoBVS/h8/vmbd/VCyTzvLp
-arQ1yB6Gqeq8ZqnnOIwBrezyMn8cDYVZ+XNdMhHLxITn5M3ull0IFlCHFc5GQVoCRRjmp49pPFhd
-qNwewIBFGCdERnkP4pfQM++IJ5r2okYleOyJCEenOk6UPGJ0rSc9VsHsNzM3BcPf3a09zhTNp5dI
-nJJWzKVipDn99n6ZtEGs9OzYcKtO1zY+cYsCpEpbTF/YPDg5zbKF0KWiJ5YP8dTl46+ee0oaqkY3
-QVzw5qUBA8y0qPw+2lHday69EEI3PhdnLx24dN8Ljnbq3pTjtFDaIEVti2OR2llH/gdQtUvPWjZ2
-MQWka8qRfp1Ra1HEOpgxk4k3Jq0r0yaTFeXHfN9J61kL+VAN/CrY2ouxh5FncqkwuwRzcME1QgjK
-6EIa0UUgjpxgpe3/RGLskso1Bog41RyhgbdRmhNsgCb/swOSiJlJ3YYcXpMFUWKwWedVvQa+xupA
-e0lVbJq0PfiJQr8bMEfI2QAahDIE+TuG4UMcd9vw4YphwoM/e81eKg0bE+Sxilzi6xePc6Md2Os9
-WGK+/z2SgKYd2ou1Wawz6LKWjQsc4ZFcNOJdU/oIrHTeLKEQfoAsc9ue1I65/rfyhfCFSAJ3SBub
-gYB783vXCHU0PKwmUjRHywx9COU0B2oDxzFMSXJrFWpglaCVO93sUlqEEmG/gHeeONE/VWGDIwHy
-9FiNJkDkjdVNHl+T7jdCTF55/odwJIPrczXWf3DgJGBoPv9B/0SvI60hXQ5aCilnVLST6wEuKDKJ
-8VyZPoY0vUxJGccMiU+p/e5DH8ZFUZZ5sxmQVPCYf5nQgyzb2m9eALEWtH7BLe8+Rcm5s+swQr4l
-EAu+wYTGQi2E5+8EwsM79NYVErrDd25nG0YzT+4V/nsvq3H9ND1lTXzIBVtiFU6J8WktFgvsQO+J
-okKTgED8y5tMtobEkfP7L6yS/j1ccswgySbmxNwb2UQVngHPK9aVFyfbFs8LhsCMydW8X7Wz7v7g
-yp7gcge00EdQHPwZZVxkrNhwvICTnVzLO8YmqZMecgDJIQhjy6m77io2BfWSCRjW7GdPs2OW+TeH
-Y/xYFVH6LOJTG+KI7hGJ/0h1o27eVw8Bc75RzxtrCl9uJ7adWLh6hyEbnpyrALMTcJz55jYidXHP
-fru1WtwdeZhVjAkldSTO6YQte58GqScZUE787qQnArbQwXrioS5blphv9zG0eAlShMF5e7ULCfMm
-qxoBpZTPJVyWrLz/Hv3Lco2dvvXK3Y7F2b8We1mk1HnTBoJ6fLID0R9mkF8BRWdSTwFT6DewjVbs
-XC/acUSdkvot8qgwP5b6eVloeMshlYOgePaD2sqRXRmH4+ozeqcMv1eXhx3SMKOSQoIqJdS7R6uR
-GIErbzsO+Q9OLaPKdtsoz8nIqGuQITq+h+QwJzPJjPl6HPudXl+ObqPwnBiDhJcjt1kZOzGgv7U1
-+5yFaLjlTTiUw9U7QpX6MRn/J+/bqt0WRjByOpCIxQPqy37+7UgET7JRv9SgDd+eeH6G8ZwIJjVm
-1yfblfqK63crFdQiaL6K+gh7ol0ZwYzvgbe8SOFv1rQ5HIv8/uJyEnMyzFl8Hifg6O6lUf71ZXaI
-1tXiN3HLOp8RfvV+6h+xDcqBdUPsH8NNfK/Bbki8wX/yHytz1C5RyznB7P1YxZ8oB4rnbAPcoXDA
-AfvtYSYuzDOM6jdKAxkU2qg+9auWzBW2wMDaBlY1aT51Hl30Lgqa+9jxjgpD/uMsZ0S7ppgvfrWh
-Tt93S0U6XQvGWsZtMpMM+Mlu/YQ7RvWzELVcI96H210iapYEQYUnA+G/tPOVJOkaTjh9YmC98osp
-HZSktflbRzYaR4VRBvg858JUrmqAXBBoBFiq3BuhgPO3dYrqv7+O8TJfhfzvmxCVZDt6NLnRcdkB
-k6lagCwEn1V/GGpk9Odr1oMhAETgJ5UZzxAOBM6+OAkwQr6/6yNpf2oQIx0tTwuHBroKfY+owVMk
-r0C852W91xdUNTIoglfy4JJ/g18LhG2xuDQOlndRT/gtzSSmz+a8p7Oq1VFRJ5imAH6ovZAMH0SW
-Wr630xDxSMJWN1gdmT/Mg/74a6bte2IcQAE8MBlL6ucJe/aRmRLYxGdSpsPZH5gc4jSEqHm1+073
-w6pBLq5WSW1T63uFdfJQFohBG/N/5uz3x7F1+VsJIFTso1/tzJPElt2xDZXlsTX91VaRcMHIu4qh
-b8qDNM1qlxAcqeZZaeggQyu0G2OLdmjn/X95Epvsk2KhZvLNByHEsWC3hdpioc6SKz00xLenZSly
-EhqiZf/6GU9n/qZJdH5od/Net8i4T7NbsimwBqHCk6Rub7IPYvmEAEw97EbP5mYMvwq156rL+cAM
-vk+O1VTWdom9drfcsug+pqrEUqh/TApRqQaKiFYacS0Inc8RZs0DyKQ2ZSdhTKtRTok4/LJUB2UK
-6wywmguqlVWzyZA37VVRR4oLpUn6t+2t2vvfePteGCOv7Zyun4pTfitzDFPhiD5OS/g2RT3wMSie
-IIfoI0LeZvKDEbT9x9+yxcpLkk2PkGI45a5zBF5jZjeX3j8PpSgEzEvluOWAyqJai3FRwC/8hUa3
-ABIS7OAUxZdKTAPy0ge2d403/3CcqJzZ2frxY0mVzVDflHuqh0hC0fZiAGCRTGEEAUXddzhHzzr7
-N075Xe9uFx0Jh8mV2ozHionMredaCTHFRRKYDpzi7+OuI0+vqDc3ghVRSWKrxOcMBstJPOnNIj4V
-AUr3xgBZMtQtholcu3q4W3zHNEhdC3WMxDgbPuwwK39824Ea0iWXJBGczAPJRr2u+XGsBoQswwry
-9eR/PF3HpSytLRktdCLAzBhq2wMGs052Efp/rKhp8GcONpVN4tvpscQEcikECDRZU829Ds9M3MQu
-l0wKHYYLe3lrv61WK6Nn3R1wH8FBP0/dfjGu2Dzu1fRIkLLKzPEC+w/7NdB/iNurrlYdc7LaxYO+
-iMOqxEhLQM45/QGEE7vPO4XyJMGDHPoRkJwDGJi9fDGiLA/+40/5xMSknWdvcqRV4VG3KZlp7/HQ
-i7Qm7YyvQ7bwyd3ccUvSbRksvrS9qEDhGRKv9XbPT/DSfYcw/AF9G0uGz6rB6zQMA6IP1V9TJcib
-javKxiJejpi7Qn+t0BhFsmClaWNivaOSiQNdxvXGMfxSPeB7+npmxkC8JIlHUtteIjd02tTKOuXD
-tc9UihIrT/dXAVf1V9jPq2smHl1n7QGrpWIm6P759NvmABljQ9hPyYzJXF/CoHN+ibbvi7QsCDja
-2EWssB4MWuPXyTEnK66ZIIfKYcUU91K4OxS8u2yVbDTSs6gh7X79fkw/XktJ7IsOWWf6DHDNqWEE
-ge+9FY/2sgo+VQarxEibkkZtHEWVOmjsspX+xgH/qltMzYwqzGYUfuUerlkQMmMxCD9Km6R4G1n8
-OzL7AbM2TjIAKUdrvsUKOq9TuB41oEOtWkv6jZz0ppKXphy0p2/1HforiGHvAOpv1SS4NIflc8x0
-8pY224rQZTq36KmB0CcaB3TNRg0q5XJ+dxEvIsNxSmKRs7Hx/nCzUuTCkoAi+/di6Ov5ho6vH7Pn
-QNKuRUob5NKhLOIaEFhReZSl49Zt+m1C5gRB3tkFWWyHHD9quftQtwogG2qbfVyldXqR/rfUkL1l
-q4EcE97r46UWxvFxoe+BPrBaGXYgXqX2pNuTcARYPL1j6n62hmG1gz5F7f66aLYHgDeGMgWjaMIz
-t0LZpRrFO7o/JNVNQG6OERwwKnRcLHpw/HT/gau2xjkWZcRPCABDGiOmqDJ0O5ALkpJq87LPxVwW
-t4aMuRG9RLohiKsxVvQD0exKRCyUX7KXaO2MzeoFoDRsVsmejTcbo/cRk+PTrm7FVmkOo72TRVt6
-C5Ewz+4b1+BMMHvCky+u7/a2aNS6rMJQVWr4FTa+o8paGmlKtR4LYKnhoxpY6VS5BT1DNtXepPnI
-v4Hl6lmMxaYuo8viTstzQ4g8klr6h5pu20vSaRCS4c0vdKAkHTPIB+YMbO8Jlpq97aafu2GvwqID
-tnMSyBz69tPM2ay1y+MFKqqtUKgdCsuR7683fKyjzMLVnqoFp1aQ3hO4T52RFWZn2qO+HY/Ig3za
-dlrh47pDpMsO0Bw4VlVaVNM7ZJAVZw/pMABc5IdKH6SMict/1TkjFN86ydpkqGHQAGdUKVlb7pP/
-p8mLCij5E698nwxfnfVm/ZJmvPTQoYu+I0VE/O2pCmjdXXVysN1Gt9eGCENfooIH703oOx/IS6hH
-EZZsKqhSailS0UcrgOz7MdvkVFX+xAx5j36IEly4gF54xDz1RFKILT2S2uASMpi62MAx/dscH7HE
-zpJPhTQillCvtbD8qDNRYwe6Lwl0db7140AdS0aFyUtw/x3hKLXW7F0GlgMoHd5UpMu2ZFJgxeq0
-dMpekuE4Ix3Q5q0gzU39ES26V6TCTS0Qs4pgF+VP5/h8Wer/zhKbv5lqIArbXI+aWhnSyCl+DN9i
-UuISR8esEjfgv1k2hKc1QR2eL+bt9lugMggxsYxJgn+35DLuk2vvXnmA+AruxkewWLgWPs6bqv8C
-DCdLo41jYCjwpNLSB/U8Zh7GHwJBIrdM9bGWQvzOULqODotfZ6R8X8AS0KdV2CIscLCLgDBt9yhl
-qUxWXZGWYOC0wztjQyLDKJWdbw2oB5NdtmrNdVHg/+0ukv+IDCPOdpeOiTk4B4OWvgyKjYWC1ecV
-QKKIAw9x9ydSBBjlqRrWPxHBwiM3Ci47uICvamvPxuTNBjnsUy17MYsX9GhL2wFyW8R0GbmCGZ/E
-vzG8svMfsUB0Z67hSy2iSrfZscjmjAEuAtyWIBJMg7V2HzZv6hRcbZYcT0+aLvf+9itrrflYlDQm
-0NamlGmb6LY00j1KDrRslpO7Hq90tGklENFe36S40FaNiqpm6N0d+MoPDEkqRHASZmnkpO8mvhtQ
-O1m5KKMFrM3WpYJdRcda+xIf+h0QkEKkGvKMm12Ztv5J3s43G7ut3pJAXl7+ubsxU/BsWcr/z44L
-G7rpZr6O7adLyEm58x3JHrnivmDN/4/3iEBsR/Ws8YBR2jnWspD3nqLM//YAwkTgw4HTULOA2Apy
-IWcRVgdOLtxLjHZiOkdOVaRvLaongDZTZurESNkhMrt652EVbWcueW6EEKTObHGJMntf3wFQMZH7
-3imu6PtCL8jnzPx3sdFrpIzg6j6pBQuQLfOmo5SEL6k9vkWjBdi1EelF6s6VP2234OX6dk0KxnCq
-N+sHiiU0kFVk4ZaNjYJ2twjNg8ge9hz/Sgd43mUS52iuyTI+V8KWKGKsgIpzDyhArMCJDKR5lv71
-wq1apgC6D7QTb5mCXX0LQrx1T2uwcRp1D4rPSAPThn5ZClzkn7fEJAdsOb9e4x6hYvusQXr+T4gC
-k5knlObQninfJE4abXeHMLTv82g+gQQELFc1rGuVxp7O+QALwJEtWX5syVexuxfi98KwUOq2YpOY
-RPg61V0OsW9UfhWHAAH3h8Va+AOjBcwtokTB9IfauWDMhPrK7G/k00EdUWVL7q7scSOtJ3qEMguI
-nRetqJRS6ABNqG+oIo2OPKjiyS1/2X+ahkt82piYMh+Wi+flqkhEvWLWbqIBNd/XJ752PaJmAuq+
-gOcfI9iKRxl/IgFyciUd75O98zfefqRF+FEN8HgNk5cU7hCWmkWaaTm1zPdgdOa/rMQjbouh4bl7
-9wUlO5qTGiKBbUye8tK3il17ZNh9mYbxkeLQpIYYJsVoV6PJ/U5WScvcR1YIPW/rdaG/XCO15bro
-77ZuTIGKz+DBGjZrM4JFA9tEDNh+9b/RgKVwZ344E6KYvQraiVzoepSd1CZ04k6CGJE6w6vE9TsD
-H3R8gtJInkcSZN4jbenn49PDEBBucnTnS8T9ULlNOx0/ROYo7LJmAgvu1WbxX31MPZ7AISbLPQsJ
-cXAUFIJu/IKcLcGTUvwsRl0z5AYx7ubSgKFDOvNr7K6Ufp9ySG931zukCbm1e06g5sU9gC9Lcq6w
-1CdlE32fxTBnxLyAHIWR+p1VuILHuj0wMBlLfWL9Bl7V1ufUhMr5D5R/2sHhtKhwJbBJ4B5Hq+lN
-GMkwsoJ1LLu6fhD21Z0gp2Fk4Otea2ybofMKtukhibD2cQC62zjoME8O0LIgqdtyaVKlns9yHv4b
-YDgiQ3Czofz241lqsyc8rI8CqxBWkimVO1UNLWDyHabSDk6CTW5hCDadIJZud9Bi+T5C71FgmLhF
-sECWqpRoNAg7DB3gn+UNL6eI3JtMKXSvP8u04V0061gTVQG/2dD5K6QV367smOfbzde3mTU43l4j
-n8sRBhKKzfdv85Rlj11WSCN/1Wv80WvqmYp9bU0TSo7oa0ULFceGByLVhX9oUtSJt++gVSt538gm
-sryJFdMOLbI/BJ9v76GHB0unYGGm/WGpexMFrMDnZabed56ssFn5UEA9X5dt2Rjkuh3LD+stz6vM
-ztHr/AimaHbIow/UdseqLaxzJLXfeNBEOlaazp1fdAEQj4jNWB2zCUYrPd/iGTB9g87NV8e62hOU
-d9GEckEm5eEc09HsoLh+dS0FFSr0/wtXm4Gv222rgWLpxROGlup3oGS0cLL61ANEm/008T39lnKP
-CEXdeCY2h+jqC/PNuLaetbsjQoeSHzSuFZTpSccbo6aeVHuCzN6RLNbXUi6k7vJe4j+5zKOr0vyf
-NOmRfCr2GVyR62AKFLW9I2vA04bU+HqoR5Bf89siwK3rq+ud75DvPiB3Q/H5/srsXabMNzwSr0+q
-w91+kcjEcDE65cHmDrK0ysk1pRpS+z+RSONb+mOJ+mykjYp91s0ewPEFDHV+iHAVlB4GSPTl5gnj
-0xkVV1cIVfhz6xKpTOafcEfS/OXcOFVuUO0zXmsXMojrqlhZ+aYSQsUVusdzlzCFw0feYRW5ERlI
-zk2rB3Rtprph0cRnlrY140RXb0UMCg/J8VLkjW4uP/avvpkCBFsEs6+46OmTYZyc0Iqdptc/ZIKS
-Bs7HH+eIywhTrR5pwlEmBcYiQV9Fuc5/qxYdv93WTquIcI/HkOovkx7tlEnwccLGhVA/QqG7yuw1
-Om+cPyVKuGwUl+3I2pbE21PPRhLv57XNuNGmfRZpXZvkxjgH+WznktHZmSl/7qbnNMJ993eFiBwX
-cWHdS7uZAc2WSq6piS5SgISh+TMHeGxQ8olHLr23MBhqdfNTNQVR9rjbZQLKvNz+RpwMNGyXEiDl
-DAQF0vru1GiKYonXJNsSpZQ8KVfvQ1yJAHKzQB39ZvDNWzYRtG+FWWTtyCyXp8WQ2jKjYiBmpFIP
-8AUXeC+II+ucaVynNlFQO2nhHP9iS7YRpFGqbVG5pUVLJ2xGzB74DzjnaD8Xx5UWD5ch/zFJkFhI
-g1ARxw1CPWO9vmSHN9IHoLGefCmG3JCP/PQckEF7iTiXoikfc4+a+5ZaOlrkmcehKqZs4lyh9/BT
-x9hti3L+Oc3li6z0VMRVro7jos83qvepPUNkAF3vSt0KdiYWMuRso99tq6Aw+vmxHz6Aw9isXBjP
-1xQ9LypfBXtY3O9y/GVpLUg1A/ovtuKpxZzcJA8vBBRzGVCvNzFSWfExHIeGaGxi+L4qrpw3vl4w
-KnF8zP7Ygj+MzTevu9sGr7JNYcp2gaF/0ZOM+Esc3Egc46gglPUua42fHf/WtaDSPcfeB+brj82q
-ScLxCNT9fMm1Bs4buKvFlatiU5PnAHRxq6sD8j8v2MirCAPLNvwzet1+dwOBq9X7a1wJvD9roBx1
-uCdgPl4aCH6naLC8RdZcE80D3jMsps6Yyv3DnsRUCVrnPI4bYzoVzudh92xrN+osLxtF5HuRZCj+
-IuQn2VwhDvSt8o/kiMJ6BUnFzm1jpZh4g+5nx/heUIK0mUomrLP5VbcsQDawVjlaFrtkJJN5ksuu
-qpvZtUu2ieb+4eZ4xaD58d7tVj+lFnf3uYYhNJSuf5gCoLedb4qZ2i/e/7FR/PYaSxsUbre06n/T
-/M9DjpbU9p77WHghm7umzwgRkFfZ68YnDDxmuvwBjML/cI9khcn4epy3jMIaZ1vf1v2kzOlfZ8dm
-7SmKLFe6ifBh7sAzcMUjHQuxPI0rCqLkXYaK8Dn3U8lpqHEMotOSDh7VdnlrDsxgqybZjAAuN2SY
-WGdN0Az2cUhQcA/ABD8lJI1Dt+eqqVPHxj63prYGY5ynuMVQu/SkZqMRH3L4JoNqyI3fnjJmWyMc
-IQDjpx6RERZzSwBfUpIKeCb87ow4Vxjw6651J+Gda2gKmxT+uhe5OSS9GxZU2vu+UQ88vItOcsxX
-GGArE5iH6qvJL7HCkR3SXHYIYKfN1QO9YekEOkaA2+M5Jd/M7f65oJ65+9o+AqjubPrPBTxTyVXG
-vyLtWcISrBCzWE8eJs/wSOnLjgMxncZnrLsoE+bu6h+MhAU3NMFtY2FX/Jt6LRNDIhHgEWPbb487
-eIO9aRTZE73x9d6QCJx2kmJWhmg254SvOHmlJsGw1fRJwbHLa2dqhvr/De7NVxfxeDQCyJOnb+2d
-wMBEVyL9Evpp1HdowYN4qGPqygzYAsVYxYwuO9O28sgoX3hJnDET6HpPHqqqYpdjmlcz4V7aecaO
-y8IlLelNBjAWn9kpE+/zswV+jk21cBEzPb4XvysgMv1cjkHgV3efMxkmQKmOa71vbQ40IMQY7S4Z
-Tam8myMnjLLVGvNXLMvoxXYOXL9Od7Nt3tPGHcuvEefG/eYrCSUt/+ffVnULdZxTmjltYwfB5v3r
-9QndSkaBm8ZFoYfouzTCYrJ9lRs9cIhXz3fCpHMWyxTO37tSlu0bf909Udg1VM0tnFd2DQHoTtnc
-JJJeMCF4bsqq9m0SiMmD4uSZd2An+UvCqlinU+7S6V/v+SRTS4t3Ie242U98fahqEiQjX3h7O2tb
-Dl7VhL76muJE3N2Huo7IBCn0JyiQj6wkBSWFtkbMC6Biiu2VQ9ti5sXSQZ4tGeuH+OiwG4CqqlQL
-jJb/8J+ScDYEB9GnzwSwJtsyCgemyAy7H1ydkQEs3vwjVOEMruESCECuzxvzZKh+wC2Ueu0wf17G
-xkoa1nRMs/CaxCq7dicjXGDuuhYlAA9d1Msp2F1y9vdJc01IMoPJnoaOO3KtvelW1WOgzjHcYICE
-8Y4oxfUlIpEfEHi6Shrp16WuRzmJaMS89p9Kr2vPc6TjEBrBV99/fg1gW+n1VOTy3WFiBTxv9dS2
-5FN+GrB66Non4fS0SZNyoSeHDuzamgIQ58PHu3BrNoZLXt23eQ58YDmfufq3C8zr8mr9lloLYExR
-G49Tp6blf31cMEfIPHwNfx6rhLJNWsnuoaq70nMV1pOfSjvMXpyLz798wW8zRbJAo2sKvLdRnagW
-WVTh3EOug998egYOx9Miu8iCNoz8T9xm1ShrKEwtOsMdYi5tCZYfe83DiqsX5BIE+P10xSwKQBCm
-yRDUbh+x669c8vyXGqFJxMy6z0C6hV73tHGw+0uVQWgnsIGQNEJxGlK57zQAaO55mZP10cmHCand
-bRVIAgAI7WvvxX0411CHM64tTNcsIT9NSf7E+Lw1fvBGf6DhHEJ23iBlzjdzWEplrjnPX9SqHork
-Q59v6c2n/XO+Dcqg2QXsn/nf3Gidh/g1D2OkhRQIxKRg0nLSja3HqhO+O2ybzVAgsa8kOLfgflR8
-DnRkIEywDiita9qf8+yF6Bg0hFQZAtT2KeEho5PBk7+OvEK0YqKSG4e/JD+cUd+BmmtmnMXsseEF
-aeODRPFbxJim4ggJoocWHXDA0hHUYNGVd+HY1gEI/XPSXcrBWK7CQd6RF+EI1VC5hpD1i6B1A7nC
-QrDXYwF+qLM03K/HVL4qd+VwpCDjBFe78ocsuweYFIpWaOXN1aBa+uSt7NC0N21mt/uI1tiCiSyH
-m8k6VIPkvwj9AQisfrAuI3Rggai7t1XkFzxB3JC1Z4kjtwA3xhWTr1MqdRcuhIe7fyP3/VWTE6wA
-fILve11hW7Gnu2mZSyoafiBtk4EyIen91FEhz7fqbgCKEmKmsG7r7RT3IZL4pS61cdUSexJl97rx
-11U9obKAM6m+TS8HyaBamwDOhCFA6MnoON+J2bQUWrBgfnjO2bXz49zi6itWumPLG+sU/HJ2ri9O
-wz8ImhudlrZCOq3IGMKDkPIk9PGLBP77L16ybl4mZYlbAY9mwxOsDvnMhvJuM2ntOlbVZhyDbXVS
-avV0i73ibfEcoV3G40z0w9SJGjT76ZYqA7rqu259BYjto4oNhlS9i7YcoRFrsvM+KVao5iDJPrQq
-36MhqEglNp2zWKpx8KoUdWX6xZ7kke5yhNGNVeJWdGYLvk1PkhvH8MO/UwKfyv5MpbP2SdIXB7RW
-UVr5OfgpUC5IPbJEuAIx9i9LMkPyLiT48uNRbe4l1ID4yUnDoXcoaHHRiHAKX5ZGdUoK/D3Nohmh
-dZDY0YVIoBvkJLX5QCaPm8mHM6UzUA037nV6vdtazZHzWN7W0dbqwLEm2N0XPGz++A+MFhnpbMqI
-MFqp16i04p9iZPFTkQkkSS9Ye7htlVV4IU7VpM5y2oMOY3RJeh6BsRSFN5Ur7RPtY041GLQ0Zl1H
-X6wzFOPOn6N52IWKKmZxW7pk3lEE20ij/tf4STpKVOLVi6IoVzeprC+jXqXVcTKBMdQlYOu1rerw
-5MClTj5wttm6jZEQvGJnYKMRUNPDVWvv8vuC/nUneduzHGN11ujTNdxWlL7zNJJWZ5rIUc0bkZsS
-i9Xch9R7fOLbh5KCilUqhnD9JeXXNxUdQs/AvOn+yELw5txmLi79eUAd+5cWeIhdkl4fC/qj+99g
-WyPdKpjmOIbYdwPxIZ879L88JQlRihModSzpaEcfCc0AF+k+egjGYyF5wL1iAhi0WF3RJUuk+fgZ
-vTLNbtCCrbIrtpU80MF+UVHL3u6bYZESkK3cOnq6HOMAbOUULIjMEnD0//q4WhUbXywPQIpn+jzW
-794dM/tnJaXJCCD0qPkK+X5Iw7oG870erRAWfAJLtzYi0g6pJv6PyuVM0h7g/kJOHu35P8tP4gdY
-iwRx7gLbn89d61xfDro7z5wtA75txtVR//4v67oVQuh9Ei/DbwXvSfzB8QPGFJv20GbEttojxSng
-U6QdxVrhZb82GH4as7XEpn3wOQVy1YUByTmr9t2rcDRjR6y7dUk3x/scKyVi0iy6hxI7R/bgUZqu
-LsBonTfaUkUteQSiJ517rqud7dW3hHks+q0nSotL4AnxLHxwWKUYt+ixaojbUOKnY/L7qOL+TMld
-Vs+AMXdoxf+ff+Q7hOhKKLkQh+nbOaqtrX18YjcZ3inNAj4tlbrLGUSF8ajxkAKO85C25hXrlQ34
-GH6+MX6X5VnlsOxeV1cscufdYucLKgKSCj12sj/t3Lqzp64ONgAVee1rgMPNau3Pzru9aU8neg2F
-djTJcIXJT70zyJYU6M1KMxpFa8rK4lkojNx/g6QaVmG4rU/fJREPwv39oLCGSosERwyJ8Kb+ajZp
-0WTM7zt6AZvMCMaqYM90SaeC2uMrAuhP5rvkPHoE4Qy5glqeeKpm3HHyPjtCKLpM8jpv3AeqCrak
-fk/0yqRv/yh5XmDxFe7IsVgNjBIV1rEh0SAhWWBQtBBpeqdKaSdKGlslXC7lup3/ukZ/Q15jZ09K
-hoCKQ03kzeKArUc68rlcfedzen+RZuYfKxTBt2g3P1tB5jyRzdKSE8Z4T/2klct+cRu4/HJcL4uW
-HUBtYGpUfHgDennUGK6NOBJv+XVltr73PuIirHt066KztWZLXI6v9L5vXnHq6ymSHMxJw9Ma0bgm
-/t0D2JFk2eWou1SRGE7X2Hhiw7ZkFjR4TLcBUoZSNqZypMpEKE4Jare/w0c9JUG/BesCf0uPgXQO
-34Dxlr2wLGpQVbepblGounanWzSdH4gjfaGIuMA9TEmCzVw1f46moYo2Qi/JnDA2sIS6QQTNMK0C
-M7P0AvoAEko11lc8MYs134zSMZypdgjSGlpsPtYFVbpdtj80trOaAKz9jO0XE2pCQI4zV/a24V4w
-8xE5LmiltkB1QHXdkee8haNRbsyiL/YvOGgQE4wCtgMo3ADhWSMmjE33TngGP0VGEH6raAUk7Xoe
-VsHPR3P01TD83CC7TnULjpsoUkHxUysjCAM+tFc+0pIN5AQmLCf3RHoW6jKriLUtJt/dax9VpS2Z
-B4+vx3vut85ghzREaRhAxOBYnSkOF/KN619RLE3SVut3NB/yeLifU5DG/wPwJm/U8ksgpuvWhqQE
-v4GoeLLL9WRA6ReDb2pq3cddQXDu2lhIJIXD8aqnWCq3kd2xoQu30LoLoL3RNBWrJapZS9fs/ukk
-wcZOwIo7/kLDPhJPSzSMUUN1gKVn3rvvCQ8XxSUTRkdqY/vtL7AygX29WUwYBJrXSGGg+yYemVcr
-jeck8/No4ZX7YTqqGC7sCgIAe9Q9Dj4F5YLrLS0XYQJ079J5FRJ/DSH8AZxlssBQ3/lZUTWzD54a
-VbFHWcQPfqvMa5GRSw318fVG+0F1hUhyzwKaUv2NLpqma2Ox9b8Qwn0ahVRvBMlAYCA1PyOnVdxX
-lgRup33H0eQtFidQ1rS1ZanPbHQ9+53yeYolar2bc/OCtg3yyTTacD7hmqFmoOfGueojH3aBa+Jm
-L/tekgUPocLwdqlRG3TEyyeSmPq5Q1m2Do9gcOiSEU6XXJddawoOmDwGGgc0USa8W5a2pYVfqeE8
-MO8VPP+JdcV5H5q01tdoRZjpD2+uapsnMpOKvclyb4iQTqi0yrjOTS24PdrRTiBxhbleOIxw7f7i
-2g8rUFRllxRhbejryekzih2pzuBYKvI6SMLHinm5jVXLhp/3uNGteKOAT/SPJHGvqMmp9gVzqy7A
-vGLr9FlMTBb2zzTIdyB2/nsb3UH7unBGkO6t5NK217CGtur6mP9mcs0VMFu6k5f77EnYp8qX/UdW
-I/VEm6X3C/+cVU91wF6f77pOy2CRTEl84y2dqW0MBC1sKvF2Z9kE8MGjTnLcGPFXXKuBOxQUmU33
-IZ97Yu3slc3ZWi7SWbX/Emj+Ha+wyhh+8WJr5kkfbgL/J/RHrc3Ov1Z6q61I5UxnGI+cCuhlBio/
-7MWdcKjoY1Trh3t6JkXUG3FJ8BhxhcpbphdtrTRbjuEZj7fgkWFf4mrqyyU1abexOw11Xl5j4fNa
-vWApKMGcJ8aYpzNugq8LoD3NZFErMfAr15imShYxaVKQy+QstyEXhJQTvOCTTrCPj4k+xDF7kQ+V
-s2WWuNYwxdVkzJRDiJI/2F2tJLwmRzs3vduPNGQdzsscaM30f6I2YKlYx/rsn0JORrGR+odh61uL
-Rsjp05qWzW7EhvGO0e6ywVai5V7crXsWampz+LQ6TKHChnj2icof9cuSndSgKUyhQB0TWTnr1nG7
-2ndhEpkl2L+Orh5XN3902tvAQA5OBMZzT3z5U66KIlyLab+/iZLj3Nxo9qcz1yegnOEl7mB5AoHb
-qrYo/pKUZLFILD9QLiM/iq+qscpkdBwpfAfedCnjzaG2G6LLwG5rQE67SLDepDs55UQnNyOvnLBv
-8Wi56tU3AOcD2psFHBWROo1wvRoGPMX33W2fvg8mIwmHZz1v+t2CN7HFggUXLtoadkOdpowduaGY
-RiAk5uyC2hyg/oN7917NrjC83HUOUCKhsxgiAbT4ErSn+TZf9C84Q6v5H3jNeqJaQeydrGSBd4Ak
-8+dHOjvPLYk07JuQsqkkotYSPgtzMNH05WA6B9AKvFv8/2GvA2CCbtMf6PnfkVv1Ir+u99rsdE5K
-XcICwCqXTeBQdH5avAgMwxAS5QXmr/qCvAC71yHWmxSRiSCMj7moRpLJ4YQjKJso7fj411iSpm9f
-DNekgp7mBCcQQ2eD/6MUHde/n890lW2BxL9+wXEnCji+n9wSEmPdLAwRsLI9hxVtb1N2BjDy7M/a
-IYS7oSM8CI0L9SHThLyTlDN3gIWEJurR3VcDTG8FbBuo/ZWDxet49V4YcwJTNosUJwNuJVFrRrc0
-/NuRsp11z8EndIs5bukrNHGJyG6ZRoIrC3zTuwwINEUS1QRj7FYwTuJtSyTwjhMjPVXb4MwirAjd
-2a5JQ/WFtmnwZcdaGv1I9X5j+m/YdVhoNU1or5cz9hZzpgmPUMPhDZw6EGF+4lTKKd5dEYYeksY0
-RpFge7X4nRqCQ+nRMIpGCpZ1nJ2tXyCbIHcEPQLkSbcSlRxX5p1vzlz7dJEsInFwcSdkV0KpyRGG
-4c2NUdCWWxtBrXVNUZM/cgP+2+/I1NzGPCeRek+yJg3lyeb3l7UJy1rP6njHAfnq4WdnMzdzpCVC
-umwO4dB/ZSHCMYIHGy9bJgAMUHr0BEFxi+EWG3XIMAjMnfGVIZkb/eLTzNMbwmck2bCeAKTQiYhs
-xmpFtTJQtip+ebUbsG4f5RqIX/ISG2NqJXMnurnUWzfRb61K6C41bCdzven4gmSTaPIe+EguV3av
-WEclAyTraTvVUMeS1AFyVFBsbRNpxlrn/JlrBwsBhYFaiYMG/7oHEH7AQ4xsY1P1SD9cC5K21r7G
-ARlVeOnVeKU8OMWX1cRB7TdhbPnpjMzRkbAvZjcfHK5UEgIFE91cPfB2QNUHNTPGXWhtGY7sJ4Cq
-skPMuzG2CwfuX86NHQYRMlB7BS0GTVaVK6GhZBhXmurLY9fdBDRE66jhpn3mxhQwRr19tMoKtmcY
-0gbCjsp9ybClpL/jBUU5rLYF1OpqnRZ7fdu4CmNXwyfJmG5PnTAAhVZ934m8L0oHfGl/aVlbi+iO
-LTPbrNPNaq7k07jGxjIaZyWtgxPb86XuxMTnlP0cz97AxkKA33/rgaGez5EN+vUbWI9mB2YYnxmh
-54KXfueoSv4EcHjwIRlc+EYyWzpWC3eRH+Me/4dvQBBEpsqJX9PNhjGf3xGV3NXwypfQYpyahS0Z
-LAzucMeYA885QER/s2LNCNED0SLD1zb4tpKt1r56wm29Sim2sRPpqqFGgqefyuJmHZ/gkaJAGmIh
-rE5GLZ5MdPeo6bTpYJymtqhpKaaKuFMa5bQFipjQzNSVc6JH1/IMCc9+NUFsygZHTVIDv8rv5qXA
-Rza7RDtSsxUgGP+nxIJ0Q9aSHJ989FzgtVEc+/KsE7nlJ10TnVfyIFjVpcJDEdKwc9+S4SkZcRVA
-xdGbxAHTJmH12sBoVrTnjgmeKPUSB/HDpoVvmSAVdBglE9xfls4KOYfqDpXgaeonzXmuwqD1mAEB
-QNRDVQN+uSL933EO1Tos58x+Fimr9lJuLcUfcSP+cxpbBniPBAy8knxU3LdCmaD7zoCbN2Iz1iJd
-wtXY4UHzMlBB2wLRBmopvb+wxjP+BAqhajeTn4S3BW7zeJ1/1bY7JI4bl3NgE47pFbY9rs+Zbrt9
-ETHKtOufLPjAmpRX9nPudgV2ew/X94IxvQTm7gMxHVISmr9STpHyP/h84na8qdv3DFDA/tr+CLxk
-atA/8foi/BzZb5wbkWcmIWEtXp5DRTCPrq4WEuiIXCpOBp9XMawsGkJdlcRPni8gL2cgM3TOdf6n
-AYsdmJVn6ga32FctCWSo/Q0gXBdN/fU0vwxVHnflfLrPfC3vyD695MsxlMABakPfXqeWx+YF2wSR
-X/XIPYg96jvR5FsUdBz3NxSUYoILCWlYg/VKkcHI6rClrIv/lnuw1RK7OuFeiR+in8GsnNjHt7DY
-yRm33aSbAUuk645zoH0RTJGxKYNTaZGaNqIgiTKVNTFP80kxStI2ElHid+6+NG8w/x+WohA7yXLK
-QTmoMseI8r27Eu7xm9OgbMoAIeRdNmWzhgl9TL3BraOnjbHfQNfG8w4cEPg/H5+frKgTwxttVecj
-wvEhQd0u9A1r6Ru2yLdVMl/MkQHajUUj2i7uZBDjQSoq
\ No newline at end of file
+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
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/d3ordermanager_confTest.php b/src/tests/unit/Application/Model/d3ordermanager_confTest.php
index a68a5dc7..9b2cfd6a 100644
--- a/src/tests/unit/Application/Model/d3ordermanager_confTest.php
+++ b/src/tests/unit/Application/Model/d3ordermanager_confTest.php
@@ -1,74 +1,176 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
+IquEjQyQt2BgV5cBPgpkCCZLsQ2ja3Fn
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/d3ordermanager_configurationcheckTest.php b/src/tests/unit/Application/Model/d3ordermanager_configurationcheckTest.php
new file mode 100644
index 00000000..fb1fb5ec
--- /dev/null
+++ b/src/tests/unit/Application/Model/d3ordermanager_configurationcheckTest.php
@@ -0,0 +1,150 @@
+1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
+?>
+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
+io6Ke5wjCYC=
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/d3ordermanager_executeTest.php b/src/tests/unit/Application/Model/d3ordermanager_executeTest.php
index b4ea59e9..179deb40 100644
--- a/src/tests/unit/Application/Model/d3ordermanager_executeTest.php
+++ b/src/tests/unit/Application/Model/d3ordermanager_executeTest.php
@@ -1,666 +1,730 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-lu6FCqG=
\ No newline at end of file
+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
+mlmJKD11kUkFhx4Vjg0=
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/d3ordermanager_exportTest.php b/src/tests/unit/Application/Model/d3ordermanager_exportTest.php
index 2a5f5090..3b948f7d 100644
--- a/src/tests/unit/Application/Model/d3ordermanager_exportTest.php
+++ b/src/tests/unit/Application/Model/d3ordermanager_exportTest.php
@@ -1,306 +1,308 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-iST1
\ No newline at end of file
+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
+n2qIllNEI+HRxOrc4AYr3ZQa
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/d3ordermanager_listgeneratorTest.php b/src/tests/unit/Application/Model/d3ordermanager_listgeneratorTest.php
index 2f6175a6..9d084623 100644
--- a/src/tests/unit/Application/Model/d3ordermanager_listgeneratorTest.php
+++ b/src/tests/unit/Application/Model/d3ordermanager_listgeneratorTest.php
@@ -1,527 +1,589 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-aAYxSo8fQ0==
\ No newline at end of file
+HR+cPt+R6RZ1uE6/dAwCcqjdYPXLPp0uOcU/TSf97QRcp/U1bPaMVQ1hT253ZyTAsdZbVGQhy626
+uUnLHrgYHl0fXkWUFICDMD10Iu4JPHi6VNlyKmQMQLIWNIGsv8Hvv0dLDDLdWOHk1oBewDf9gLhk
+1HMjeBp1v353xT/uETvb/bm+mlRtGR8bxsRb/CCLe/kkQwE3KAfQAtF1IHtikQtAxRPzAhfj0P2B
+U6JpP/5LWe8VLE1bvDT6dRfPz9CamJcFeQ238sI4Lg3PUheqzABDaDbijB60RwBvVHj8IsOcZsm+
+vI9nSFystSk2wksR/iH/h8KCv+DiUsUmqAUizOvypCRZlIMJThFnnomePqetOLtvGT0Hxxa/DH+E
++LsEyC9pIIWEbgA7yyGQhmK+6SmBy//coOKxYzSoxue0+2C0nd/XZRshW9yA93a6nFU0OyOC8nkU
+EuZttlBhjn9XFx+Sw/vsrXOEJl+58uVD7I5svysxdEIsD2aoul9H2GCDBIVnduTCDeYqV26C2VR+
+4igpYWhaDuf/T4HKHjfGaVmh4C2UCrm2MzIJoy/+1zRzgwTZ0oH/2HH6N5aaMq5vhYCHaLgNNwHK
+OpFhklgCJzbhHky3lODMxTPry5d3a8bIY6QvCnzc0Nqm/xSoGYZgXeDLrL7xe8J4SJZQOVKqIjgd
+hdPixsWqUpvGQtBY3NBb4GqxWs7EG+sGgAAp8G5X/D7KgbZPfA/07a8bdNwoJcp9TJ57u1IQygX1
+lcRObVhvAwZ5jrGpwQuQum6S7fEJvgpHhwiUaSfcATKORw8CjdiDjCAvMV7oh7pEmeBPxfVV8Fl1
+ByDu5brnBMbVGJg9PnsMpAO0JQu6CabGluWdR2n+9XRPTo5BVc028JdE5N3rpca4dQVw1gsk0pvC
+1WaSQXPsy0efv+ofXiloJQlClu66BLsfkME8wuuaxbKzxsZo+kOKPuKcfvpmvkpBW5l2zIBK4i7e
+MiSdTrN/EQRJySrcsm2ryEDAEOiGonxXl1Lzy6bI7DC4N/Sg9ecGw4iXQKBPb9s68A9ItkGD+6nB
+y1zREeTDd5R7KYyswxriu4jK++j+jGaQSMZFjuvwnXS3GNEwz+sinsx6qn+qY5k5ywXN9xyEWGiS
+l3H/zg9Og6xg7JFst5T0pUO8lJyFsmXyX5809H4HQBJAv8oo7FIETwOY3KC2hYojC340SjTcaYDR
+lFdVCShxLxl5fWnM2e8jNNeoa0nSxxtmGcIICR9fwhHaQY4Te2yg7tSNC2fQlLULKPIUe3yKgNhi
+OIk7jfyKk+YZUf3lEP1/itEVTB5eHL7n2F7VGnknXLCw9V/DeiWPxU/HYbPyTtN9pScLKqdcrb0k
+hMAAgyp1rrV/JRuh85kdfddmpnFUOhpJKSyUBiVmAyErwXk1529+eCk+r6QrEXE0UxcVifSifB+m
+KpU8tQn/uN5nxXSYaV6/4py+c8zdydHWbwlciYe0/3sy060vuNy4UtOa2GGcxe3mJfuJ37EpkBDO
+4ERwzWRiGbrspilHaY9VfuddY2vN/r9CGomReV5+YJAyPV5oOIOVUZD7WeQ2Zp6aT9fOSWgtj3g0
+XT8HcZYPkq1nCcZ4Qdw6xlw7uIE/131sPxCwkEm4hQP7uuzwHjcHOD6tkoD7A4XVDh++BfSjanPH
+wjgV0rOR//+Etz9rHX8b2f+WOOCs4S64r9NDmIjELbOO/+/EZ22JxgV/XrmJYV5WX/VOi1Kt5jRN
+HXJWkdgYwsLwMiIAJSzEhgMbXC5tLEfCFM4dT+pn09Mgug04SnlNowtNe1DvHfAKHMf4jKfzkIth
+h8cmguODUazstjQ5gRZYpo2dkYSxduSp4dEL3e+U6JXjW2P7C9WSVh0pEVjI2720zJ1LcVxRfLzg
+60qYk0VjUxjxtWaZi5+AJmQglvcZ/X3U0wIlGxVLbhXDhfYvv95ugT5tV6acBnmiLxQnqYyae6ha
+CUM9YUgljwA9H54sbTMlsWC6w6O8WYnQcr+sgVhRGaJbdKCMAq6s7Y5nVkI8Lq2Hr4vO9d9uBF0/
+N8EdOvvz52wv5ScctZHW99J7KcYteDN9VtpH5qnWNfx5p6Z5U3P75vRh9IkThc+NlRTAwrxsoPh7
+tnSlKyrC4Qm01f3km4AQHz6fRFtbICX6GnZS0xYiA/qZBYp7bd619V6uNzwX8ArleZz7O14v55JR
+lzinjTPPgWnp6dcnrfwonO8P0VchbnxX6esvd1k7cIx77MjgXbatYLYQ7jlKnRhfeeC44otxzEfP
+oRUEB3ZZD8PioA9rrfggL7/7MHWgOWb9U07XOHUUyUrSxRA5C6LHtNUJV6aRXAweUIeIOPibL+kj
+zTqn6ov6IBoa3bB9cbJQ5ov0Kdk6HN/1O2hTVNhSYgYyjb08d4FgXoWnsiyobd8RZBZ2dHcNYkMH
+VByo7D8fbsaQqB3AJ1UYlfCXSLI5RWzUufTWf7JPSyBdZ49XIwJ5riEC8DgD91WFYg2BYFwl4amt
+0sbkD7rVEld/FGsFLVf0kE/orUeFuOw80XWl1iSSSo6A59i1ooy1X4HQG8ZmsldiS9atNkPNAn0a
+LW2Eo11lrwykznrQXXclR9SRsxlkdHfjLZ/Sgu8HwcU1jJzHQyEIOemXmDpZUX1p5S4oSRN6Kmvz
+b1DtM9xxegsXbLR7GSAj2VbyaCmVkQYy1CtBhGi4OsURcqrMctTG5BIcWNk2e+Ou/zPXEvul+7lV
+h0w/H08k5AYKoSdqBFbnscgcbwMesrJ043FHXOgaxkrE3Z3GD6MyHwVPy11Ql8OEPqQX0GoPNzQq
+d1j+VPJeNUgbOmo+x/eUWSyXFQXeAPN+882WrW0r/ADqYINDQLxpefrIfNLoO97wwidTjEQY33br
+h6eXh8NgbQNTZBOZQ2izglFkj12uN1YKAP0R82PqERq6giK449UYduhwG1XlnFlo30WjrE0a4toH
+acXhIj4c89sxPneNTdb5qq9nzoWf0l+qLPB8xXmNGg69lBDxZUt+ka+4jKAHNLnMViLXug7ARXEm
+foOThlvb80H2G5paXGeIpjz6z4R/09py7mmomHZWfZqb8qjMk8QzI7bKmzuFqXdTOzH+xBZz0Ayl
+akzE1WMo/p6ncbpAf+KPXhydDp6NCxxpqTMoAVFU3KCN7wksTkkiGdQhpDDe/PFs/hQwPm69yPXI
+gFg03gv3zG55JhnhQJq9cYUjvNuwQ/N2nC0mYt8GuwL8jPA7ZtILqXRBjlYarUwli5ABMWKJVdh4
+VFsMHDYESndShpxWtEtt5W6al+1BXfzmSLQfbMX28Y122Y75vdmgRinkc94kdcQQGGiPPl9w2rFc
+6IReyTFXfuAYpQz1BnkwOIaTAPPsthEwAwNItdMwkWb+DH/Nl4GQzZWEP9IubJW4RVyAkxLtA0vc
+Adq36zg4/QpsjTGgcKnczhyAvTkcJySSu7EyAryKNrOE5FVtXuDiCHxMidOrqdOARzO8Fid44Nt9
+iEt9ZiZ+vnw5FkQrRO/PMHDoyVekplOoAlrzikxxSyoulNDxeoi/6dPs+fGnEgKQJroefpxLxO+q
+jBRuIfO3nSq4l7YiOfBta/3lvlMnsxnopcaAqeryLRkRVsbVYlmqMMaUP1B+5SpUQ1jjjTrUvLrJ
+gNYH+gGpQ21qz5g8RMmwnnas/WnYYoCNc9whXGMr9nHHFUnErqgHBxqE/7OzKKLjFJrVX4TvZgqC
+MJr9Wt5TYB9AiRJ9YB8rETj4LC9M0m13u9OW8PLLqk1jzbuYh+KZnHLZorW7u4fbAwC3tRbJyyUw
+VME61gFqyBidSd/ZvVGnUYCMOxcX1c4iYiscoPvC0Uwq/G9nhnEd2IZ85UwnC20i6QbPcoW8HVZf
+hjCQL6sZV3fCaeN0d8veQCiCapJmWj9XMxKD4Kyo4CIt/cV4rRUl+aLAAXe+tKwpZTjzFTQX/xxg
+YqsSRMoOh84KKm/AqsN5Geqm79+3gvfkjL6J+LTL6+pw6sbSKoTUouQ6rWmXFtM/JEGZNPjHLPgC
+CwpgN10sPEL6LKyciJTEFJ4UPYA7KRBTCwghS95MYVd2oKq4ALN33HOaFGQalbyH91LM60Lm9Ldz
+hWOdbF1xJ10Mx368Xzm7z4mI3p06ueXbwnnCMuPg6/LkRVHCzvgksxkbXXSarsRgYohlk7O32Lit
+5WtIb0Po3nAsSD8HLKUy4s/7rY2UvYZy9doXPRI4uxNTryk/s10ZBgRgoz+GlkwDEfWfpxrWK5EL
+CZ6NBYA53QLiSlZGSAdLOL2i5EjHdGK1AwtXvHSSqigR+oMTPE+YGZJ+lj/vGwMo1uF9Qwr8u7Gx
+62TDK4k2i6kGBhHGXj26p6JVT0m49wQlvl4kaatRZvuYkn083C+JvRRtDKroec+KRV9WPe5bCdNM
+1gIXCy7VhZL0EEIyTprLXaLbc3u/7uBx4MmZWk487r0lS0Yylc7APAawVv0oSh+03x+hHHaNLYKI
+JqK6FttO+1phErmvV6ZFbEs9X9rsVauAXlGGlVgzOiAVYxPT2dW47Mt9Q/O4vBfYWoCegywQqjnP
+Sjv6OfItQ8XrZSf7PdHFN4ElYc3+ZZxStYtZY+pkYe9eEkoJ1DM5lybWeY7YeMp06F82TafHxjDT
+y+gj/YnrK6HfigvoAyq9rRuTu+naQO3LLlHGGRgc30uagtlObU0/JZL/hxqC7zTnN4EKcINCro6I
+Wm/5kzEsvPZa4vBCOJROlGR8//XSm5rajW9aGxrcHD6KojH0yB2tDqgDhgr2EcqJXWzhvNDHbpZR
+qCN8JFFintsqjvqWgF69rk3lqyvo429c0pf6KnVNrbNnwPS3SRSv7w+74CSO41Bf8qtsd2IzeonN
+JJxn2K3ipkYL1CGbFprAuKVh5+LPWHqKY8czaz2Mwv/oYiEfrobAivLSqoPF4E68CyZAqBQy5S4p
+6BzNKs5ehjX6tMHNzQpYUnRQ8rSdwoYuoLAD3+XHw+TVnSA/cGcReKIZGBfK4aBoqS36lu/ZObZt
+nqBkGc2J/WBJdO2FG5Ra98qlThzb8PxkSZlLP4ekJA6i0EvSKhvNKYiV05Qcd5TnWfXhOoiH+Y3T
+NuYM1y3z/8aAvrAhXvqB2bTW6xBDZ52Itsd9jcOarMbSd8jFEe4wHGYJ3dz4p1g8CqkCZFNMteSd
+pmdjt0iIEHp2AKfDVHmqkCNkdJlP/Ft2r86G5C7m1AHA2QWrM2QRnhOz0qt5xhT9/TvCTIgGIs+V
+hMmh0qDIG4XgkeQ4gc3y7QTeRfRMEYUV/PyIFiGoB/QRQrMgz7lDPSyRKy4fBun308u598lS4mdR
+jvsOYexG/l8Nj5orGkHSUfO4MOTVtzk5EhxEFkF4tRYwHUD+UyWdJjbOlKxdTDRSMakneNU4EogM
+JJriVPRQ+dtBkdbgZACK35/WB/HKhLGRgBojAIUdmPLoslYsHDp7oLaOJLkZKAAK3k55Ha7e9CYH
+y7UZLIlsplNVY4x07qGnrOsTSojvRmmHdQy5utsbffBh8/cFJWG3hlN9XCrYR+kvduIZLbAqoxVa
+Y22H+AB1lPkBYUA2Jwr/4ha2799+QhQNumpG8rFRTMlVl3WIDi1G6N4SBDFwubm1t+MkvdI+RZOl
+zkVXZUmKee382yLZKk8kX1MXKbeVINri4jLW5Mo7nqIxgmO1u6Nr2EP9suAWCNuAoBOBSowtjNVi
+t+Sgj4tkdalFp9REWroErDItbrkScNAGVOBCyFzQCYwIsfz90Ks7RssuYB/tA6ypdy8hAL3XwDd+
+9dwNRodcGnDTUX6UVVpbQtRoU81xFq0CNVpUeEOgKemxoO+/U6deYIYdqlZhd+HZ7qXqhzzhYQfp
+NA4ueWdWrdGt+GWYq0VSYExMZzfJZ6B9vnEqEOMDtFuWTVPGoQqrUNIhhvPNl9VhUpx1vHKs59Jc
+Rm4at3E2RzHLdmsOrH31M1ZML8pEy7no9MGw3k5sPJUyQKmANoYO8Yu0rlXYNBOGdr08KXCsN/Pr
+QSFlIfr53CruI/58KuKfIt33Dy88bUDL1mWHjNUj9CTzwt75boS7Uz5UlyidSWU9/iJ4VfX2ErmL
+45R1HeSZkAn3wYCt/8lFY8bZmGFc1aZccI3eXrqfiO5fexA1Q+fB9uclfAP7iGZ/OcGbnVIrF/5k
+mNaoTj4l39spijpnPvgoB5d2HnaCm99HfBE3azUViLn22W2F1DVlgW72KvR+G5DqQIL9WUpD7LOs
+Z21Sl37j+zElE2CM9/mOjXMUjOBUgjLFl7I9dtKHu1vDZU7FvVcA5zkjd3ve+PlnsTAPQxAD851H
+mJEeo4NbZHO13o5I5Fk4TilzIGhbred8o9gRTtJw5ECt/IWW3D4T0uAjVLRinRq2dN0ZHSp8GMMK
+QgEFeJcwkBs0vNblleVzkECGAKtCWLL1lnnaFGP1iYa4ZDKNnyu5AGmsmDV7mr7UDudN60sZizVS
+3nKIbbUB1syVtKxR2n9X8fhP1nc4sLZtmYT14E5IM10FxvdNn3NkhfbBrSX4AGy3AJbTpdm8ZkEQ
+uGLr/xqVEibb6V+SWsLNQZbMkhzz1Bu0Xfe19iumY3K97k8HpXq0a/AHU2StJp01XpwELvl5iijS
+gozkcMWHrfLJJguYe8Q1OOmlz/n/kA8c8MpwRKqLuPDO8tDgsa0q5sJLGAG/C3iRQL4vGENsZVSD
+gTfmR2n2PRFdkjqAYKyds1NN6PRA4XYdxvqk9Q8mPP1EKu3dJywoadWwvCPRByRZXTI3e1qu7UCf
+0JgFjqJepL0+Iy6zVYi8A6XMQOB0qpRVpJT4re0i4utIIbyQbd/37jtWZWdkGLEInO4jRQx2aCLT
+dPXvKYm4I+KH89sofElTOqXB6PLdsHFqDZt4QoATB8MG4zO5wnfV/mcKQVPc+ZDJVMyImS3clw3D
+WpaYaNJJVtmM3zprfuqGw53Ko4jFBCJN6vQh2/V4MIK5h50SmmYjjw4CXvg+Ip072peWr9hyLsOY
+RAMuZaNjjRaBgu118yDIxjUf8QNd5kmBntWwLC3V/gHMAaG/z4BTVWMZAn/7IuyWLEjUhY0YAj2K
+WRfKsIP6KWwf7pBHRSMl2u6aMiYJe+E6PjDYfY96yApt7d4iLvgRvnqMML1mOcMr4CKxMjCG3mif
+se8fNbquUfsXNsRg26NgDtq71AKFUzIf8eImlNS/8RZj/ThZMIQbdinyEV5C+1HCNr+7OkMCqIP2
+v3WQqpl0BcF+qLuFf0AIOTYaj3eeUhhzUf1qda0nMlAuh02TLysQoYJkLqrJZnFBWmLbsAKdfdGg
+ysUNPfvLZhJ33wc2HdrufygLHFJq9fKpsv7BmBU5kQ2lujL2XhiAJ5Vy91zkgQtOPY+HTdM/jUy/
+Pc1n9iqsXf63VPHBYUZm+opGrjOIRrEJLiiTChV7Jq+4NO0WRgAOTZadE2cKS5zZ7w0RUlEnHTve
+dXrVSe5rB/vFJF4Ut5oVMustggWT0orgcpg+8S8YbBUso1DTX5cW7OGvWh0PurZVT2YFtepzdNLv
+ZlolIvmVgf9u5sqV2oQZbValwXQmohSCqH6wb1nwJwSsrYzpr7LL36l+1J1sKlyblKet+x1uMdBt
+NvCpnmshYOi4yQ/drPznncNk+wKM+0RDJbOWtfbZXaeR9h5Yhw9PCdeuAbzB/+V7OCW2K21e2Ex+
+9cI51QRat9opV0lCEU0E/HyzeYNsXOg0EZUrG7UnKmslcTqoRk3k2mwKI2KGO5ME3tWiZhDCZskE
+L6Mt9XPPNHyvTsEP4hyjyhd+L/7CnKc4QXt+ekRHzzxcly+ZWxo6OGZo5FFS55tn0ur/WlaPbF7I
+U3gk27h5kpN9ZFWGG4VLnuyBTp4kAzCYZ/RGs7m7m9NCx8euLexskHzLVlqZgR1Xqb0go2EN1sFY
+/6mh+r8blB9ymUJv/pqzQqeh/wNNiR81UlvhDs3/tEzC5x4VaIs4O1sYywCH1nX0u9zJ7TmI1Z2r
+NV75BRriEE2IVf2bCJ+Do1pHn3YA4cm4CxCKaIbnNDAYutQmbtuPuCDKI7uoPpwLfMT7HJBZUfTt
+EIWTe0APl4mKeC9d1DS9YzGeL57uPmCB4jikKdk3ThhMl+m7Eo56tA2KXpuOnfYsxE7+XHkD9noR
+32MjN9C2MUFcOrOLQxc8jeHiuxsVx8UaWfJS+d0JY4du6Chc0B+wKp4wJU2EnCJfZVCxvrhIZ9p6
+9Y09ZbgopKXkZhBb74nW/bN8Sz7nS+Jbu79Qj500DlkoW4AlG3gjtOwLqYvpqNWA6NkL+E77wmpW
+MvYZ0FJhgGqHYADrhBXUW+ipZatvCTvLmvOVujrOc9xszoEdDc8tEbpRhqKWXnC/jqi4eLVrq5lX
+KQzsc2uoE1/BDgqaxV103+CvaLN0bK2yCVz25RaVSzbli9/6HfHG90PZbFSz4EQKX8/QHWKcauS7
+bbFftCRYFrtu7FQtd8RaawSccAM/e5hozUGnnllCnT0DfUVeZr5GfXVnh8ElwC+Wm66YTcaz55N+
+vNgM0qlT/yQ0bbyIVWlpgmGv/awIIaUNlpzHmWLx2Flk8TY9f4Ec2MFRAwGa6hx+slS7fwfY6pcp
+siV/7Yqiu/8kO22anuAquy6KcncnB08vi8phL/pP8YqGZdCvp0CFI6fkW3/+Oy1bSJGplyOue3MR
+pcQq2lbMJjZhhxbCZNxr1QXIe5h+Mk582LgSa9ZCXQH2H6C0GJksRQaEFJNjEQ1KgxowL/lzw4WX
+xQsOLCbPIckW1GMRzco5dHXVqmWCNX2Rq51fMIklyw4TbgnbW+z3v7XQd2B99k0ziCKT+enkxGkB
+M5kCT5OSlTNoeL2lw6idDlrxCdQAbQalO0AgTLdSCg9QHD00R+4x+Pez0e+gOyyAx6kqqwbRcIDE
+dHRtRT3LyNucA2qDjeQEnaVjH1021iRKt4qz1SSet33wyRYFDkxeb8ii13/2W/iOUaNNasLFZcGr
+y9MQg7aI17PqLd9FCI2eAFCUyw2yejQnkiQ6Sb3Dq7w98UxdTl8IEIUGTuZJqIV0mrqhlWP1Vg8C
+ckfcl4iPUIxABgIQLCbsjt2keKsRpRf4fOzgDZbK5wxCe2D07jOAYoMsN3aGZi3Osapq+MCqh1vT
+RjWT7xgs6OoWgPnyjiXQQPYWw06av7SgumIFUtSOTkQp3wCgEf/VfRNpWhESgLzWPeHrgdVBbtDA
+LrgiYTqg+dtcAwu+SR9UN4BCzZbfE2plMr6cqqYYgg0VBiuG5bXRQgaXYybiWpwCv7KAu9lw/Nj3
+68qPkJlR1lIgNw9n36ScHrFOdBzPeV60t4L7GrB7IpN/hPFyP14FbsJ2WxjooT2oaoxw/EG7PsWS
+80RX3J8hFuqI60Vbp4FZhyi5Iri+XJ4R+V+cB7lFuPONLrBt2j6SPdDU908n+MHN6PRrAIuwl9JJ
+P86jpdLC+iiAIZ/k0I2TykDfJBcySydzcRO9L4I7tDROKp8FGACLBnMZAUWRM5sR1HBXzK6G3A5e
+kyFvXcSS6BH7ndS/9yKhUy9sw7qYUOq8n47qrlVYU9I98nFoe4vjjNQykYBDWkHUyiq+y2luRUUy
+7dMkE85qJK3fZvLIWEevgCdDchTQvmEU4lmOWumuU1zcVm74id2nQCpYPWq+RGbhzPEcucrR/Yyl
+WP+V1rDj8DZKmWzITMTR20W3YY99QdymRPk6cKecfOdIIgOXSWqMvj3iMvPWRZTPMuYCdheUMZ70
+VwgBmE9HCu1p1VTHmnaKWqq/RbHH8uLW2EqSYmYsp8VgBHes8bY0gMMFTl91qwDxI3XQGLG+PQ51
+hvakRurSE93UhRYxOIGRp9flHCllEiPTOlqRO/oXZa8o7qagpp0B1GwOY+DXvGVFiGQDwnWDHTmi
+i4KWNyVosYVSX6WxutKZUS850qQ1QtCA96vguhFU640+mAlOaDki1BftGDI6WuJ0j9t4wyuoGUMP
+c6s8voNmLYmuaQ2a4h4uo7xqzChOrJy86P3Iyf3ebvMpm5xuxZqJ4QY6BOwj6EdGyyqju+T5/AbG
+atq6xP8pt1zzjLxJ1gBoQHUc3hzB2Tz8F/4EY/uQu9r6s4bsbnKDVACXanXT/rPN6XKAXp6nSb6d
+g+VSfTGJAvzbvlEFUyWc4lem6fKP9iBMhloAQJIuyG1v0Ey7NypUthge+5qXgC0BXIGJqfn3sTd3
+jaaI2G48awWBazr8TViv7vI/fUdfTO6ZfrU6jQ2lUUYfAN4QGToywm5StdQBvW0zq0ZetYDGVyis
+JL5meMZq9s8M7WqDguPDqpTR2zlrKWKgeCmPERSvMuwIBpAlYxVoGL6dJkZqZL3MJo/fN1k0Ub85
+BJ2tsH8J3XrZ1IGXqcixIFXTqXsITe4lq4lAHZZrjYlBkHJRWN4535t4cJECWGldRhTJNnlrAZ/z
+zKHBtKuLIidUEoypKb/y+AHZ0IU312d2/yKCwvO88lxqIj13C/GKhD2w2VogVABcumRhqrVT1Klp
+kiciNq7w5Q7KzwaI+TBmSh/kTIxWhPEofcl9+K8N+YlMCN5GYgFo7qZ+bVnh+OgYVFrS4SRuOF2V
+qWGblrEHS97Jp8VrVy1vYFKC5voDLj6Cwr5+eSmdUa5KTkqWokksw0veuVJ/sr2U8nbQDu7F38uT
+ICcIdaMF+xHBgyDlRcGi3xrTVPl6gSjHzcQ8GtBo7/nvTFciME0l4k/PqVgWC2qRSJlloft0GkCb
+YUAlPnAoplz23owq4vZm2sM1jjTpADrGAZFjwJ3KGZ7mRrrwLZu1GUlTu54FLOBUxn4uYUbpObbY
+1l0BFHmmtVdGMNChqfNbk359Jdw2KNECr/7tGDMfv69/61YAZcdWkhXK+FxOfoMnc+80ZJAKkTK9
+ZuQcqlxGOLxVWvbFnqMpUvbY2QP5nDaCP5IQ4H9bYq894tda5pEElVvWNZ4ST0l1M1mmnK3GgPZD
+5ezryu2mKnbVdWWAzS3N5Qs8A1p4rzcTY/l2OoIrKF3HMyQ95Mfg7TcPYQjCSBz6ARigMKK8qt9Y
+ISVfQOVRmDZoLtPjeIqMX4cY+tt+/QaZfQx7JF+R4vGxok7Wl0U4NCsYH8qYod7FXWu/LjK0I17A
+6/mZHQGCArErUB71L4XEf+P8t3tuuUgefOWqlVa6FeFztA6UzgMJd8811plq5j5kddp3p3krUz8k
+a4l4TolTFcHA7uewLruvC/zsEzvNW+b075PBgbJNTFwx+qzJOI2jL+Ww3wpRaX8Ywr/s38eMnJ2e
+w9aU/ciEo2wMaKgFHXzFKgoKEBgxrBXALETbZWCO8AjM+Cwnnr3dJbOC98RywqBMy32dx47zoj/J
+XalkVQZlwlTRQeTQQaweStqMzOYXtLtZnDhYt7JHGxou1HcUgxaZWwG4xHxwqoHSquGfsdW0s8XK
+/xc98BFgYHT7EiX7MiZPDbl8TLsXO5naFzwfKl0U4aweZxNVPabnKejwFy0RrYWxIobScnkxMWsV
+5bedQXKol7BB5/57isgGcK7Ffl5f65qW3kA2tL2MLMYpw6JyIJcrI1VnDbfG3q7j3uvmfl5pPjWL
+3hyek3yGZoqeT2k56uS/mIUpMu6ulJWMkb2/NtuR2ja5kYmaP7EGcB/E47Pau256Z0sGmQOv7Bp2
+Ac/BLa7/kedB7rPTyGivnEfb5yEBbso3yJYx2clgSx/Wiu5WjyF7ENnWYh+pEt3OdK5++4RJFV1w
+XPXco7/Sk0HVLsaHfwL151GACM9hU6DEDct0BX+Jge9n1CxwcSzL7Wc9O5dXD+PFKebpT3QrpPmm
+rX4BbxkuJS58MXWZO0E8tvzgPBm9aiAwzp1OeGXaQT2+QAppiklQlDT2pGn+vS5DiwnsDi3TFYbf
+pm58PLiM7hMqJSwfkQVbZa3t3IPY1Czz+fbN57oWgby34jlHuv7yXz1Aixw5NciCyB581MdlxK6R
+lJi6ezhfd+DiQmYM9ltAH0XNB8hqj5byVRkzRO0Pw5w1LwCS+Izg3nqCfE4l+UXlyPWaDB7A94kZ
+Vt3fbQu0smDt9a3gTx/PJ8obHY6LqBbCnASGhiQxd0RPUJv1QzKt5W9baddaV4xAcYjWhj4Fd672
+76XeC54VXVimHtLGe1dY4goT6/JomNiFSTmpqVDUV3PsCSo5PwGTsfcMGfmcClKeZ8xwlTDzaMef
+nhgtzoRqN4AAjwwfiOKguykTz7qiWgIJSwEBPjMGHMUjvqvSpNnZNANuy13iFhnIG3MYZ5SICq9o
+RKdre2yNQ4NmcltSCPqqm4WpEU3Ozg29h6Nx1IZtOmTVeN7GluaKjR3WP8UnuMXx5Kc50gonvvze
+JlPYsw2J60cHz8Vd4/EJap8gAXOUkAus0mDwF/JMe9xtAxFnsn67MtyID2QXcq2Z7Ts09pimgBxm
+lxJBFf6weTbhdFAKPaKsafc1b2k86r/ORwH2kcOuWR5BpPa26hCHMnXdRovDnfV5h1U9HMipuq/k
+drfv+RlFWkqDGP2qwlcxONKMRdWKHBaGVaQRSNNbsilZMmEejieQCgCZLnI9A2CBNYNPCGQ2LfVa
+Y4CFeb7IwZDuS0b9ZEJ0WaZFZRDsLp4Qkc4JKtzYWRg5j2wUiJBIoI5mkDmO91Q834cGkBf7hxNj
+EJQm6b3JYOv1Sh2dKkzfgpdb6IYHM+YkPpjNktbKyXvVWzDAh8deWa7NRry+gxybbanjwfOTT381
+G8ANQRo6sX6YHVMkfoVZj23VT+eHMIUDqn/TWPcnd2nD3R/N2K+BXXG9zWzXbcLiE9JnKXVKeK/e
+OJMNFNSgWvfm/GMgiIaTlkWm1cl/dQRvRQMvUz3Mui0abZ+hh5najWiiroc9Z9rG8RkjhnNAryq6
+PRiBAspO6KoT4HsiQQOBom6mcrwX2wivYHEQyJXk0wVGRTkWp7QfqsTYuaNLiP5PuLqMZ6sAYJLP
+CumXs2i+w1wYUyHulg4esq9pGzUQoCVhVIMCx0ykYqRDPtnBNJehnoA2rb2XMo3uIB9Nh8a2X3dU
+GYGF4y7QtDAjcMjtttFTgpLxzw9Fvbw5K8ILG/gEdkoqZKxFMiHPq+5KHNfIxOLQCBU138BsNEe/
+Hh0VQ/HsEceinZTIuOymLigNkiaTlCKt+GvIXKgULee0oATHrSiZcWzxFSAjaoD6BmWDtdpUkRJt
+78/SJ04xZCiMz7SkBWsEZBZ58joygl86Tkpwwl65WaCM4HfPoDLVjMMzg9VPE6VWRupvQX7LmlyQ
+kEqSvNvu1cdIB7DrrGP+XeezRtfHxhOAiqojbAQFvWCE+x9dT0Db1VF2u+vtmJEWkLkoONfnL9I3
+wsd/6RF61qPM9GN8xODYRHhcf7ZpdBtPMfo4aoWJAEkUdN0hotz9klf81Zc6SfW42Rh8p5xV4bjW
+cg7Z/jKweCkkjTeYXvyYx98jp0gpXsuDubp1g47lKGwtU17id8U3iIHCK0US31qHSIV5wP72sTTc
+0kbvV/vXl1p6z5AMyozgxpElLlmwvlahOdyQ74fEaSh5V6jW6LvX3mZJwkbELZL2DMn2qidYzz2Q
+GpxEH0qSMhdJIWN/qjOaiOWwNSoS2a2zXptnsrxHSY7EujzkkjQgNWwRazFG+QEzl8EmCn12rmeg
+7KU4yz76XF6C3L7nEiSGq7PTEnkbnaL7LP1qQaHvjKLdh8LekHHBUalDtyJfRBW8s48dAwxAimci
+ZuBgWFZHix/j+SIVANJLUKoMkS5oJEXxARkBUvKXy9fZgvG/F+SuW/Jcj6ZYQsUlQaEpGXMXzetY
+z7hkP5KE1MvNNihURj5+L+GKwzNbPrkBygnAczJSVBn6AXxlbQcUJpqJFbLmyd+SOeBlVmQo2xQY
+NvDiXJl/V0yKe1rmLDGrwo3gt7uMGzhNAy8dcm3mVi2NY8Y3gkMb4Xuvuca3Z0ZNwKT8kP24zIzd
+ADyuREmBLUmcAI/56C2V5XYg0DGAeT+JaHpI6mLU3chrijCnSjt29nJu/wcgskhGqPpouzdPIv/R
+RVED6F8bpbqQYDpZ94X2wr9e34IYdGw8x4CIL2vlP+wCi0R+Zj9u40k0s/TkQXr/aoGu7GP3mbpp
+978+L8VvPlXKNPpaceRW/yFvx+lDfHCNLk9SWQcPlpCkU6xIckoCVG2rDwyvhPTmg0f2zPvpMXJ8
+qUFX79N6tlxdtA9mMj1ELgjOsXlTid/Ti8ERojvEglcD0xaRfwrWOe82wTqjybHPByqj9LpruMHZ
+axsOYTgMYK74i54HqT97qqX87gUWDEW7pzvc5U1GJf1A5UVGO0xlAuZf0D3bJQQH0aT9K94Ooggt
+wfKctFunU+8qfUo81oV5xlkmMyFTN92IkEFB0xoMfnX/tTN0ZMSJe9CnyijPyazlBnp6S5hPJZ6i
+LLEa8LFK4XtYbLtqvt+P6XCciGW+LmrXkDsbY0l4BfD0P53WeWyHd9Gj2zp77On3q8EP6JhJy5/+
+G1t1B+1Imva/bbzJOC5zSmhnvpVSdT97/LOgMcJl3mREciWvLyP4qbWjlJ8folbX73lgQH45cUrl
+2gwwf/dtWGOY6UjH/tAZl6r5P7c1suR77XlTp3J2Lop8CK5sVpOQ/OSAfEk8ZFgh9WnheTy9Xasf
+gMRXzeINkg+8+PGZ6otCeF5CCjo8Mjmwk7JQa4c2ewBnSDCtifpRnD55qOwQVuphKaAkyf85QgNC
+kAOOijvpi7oaHlcSt2jUNdKBtjIf6XT1S0R117Oi9gUSd303jAUtE9pY25tQ9oS9XuA+L0DCOefD
+gH4Mrs9iey5oIgNWVVAuezoc0GhkRw0DfcT8lCR78i2pc6AhpycjtE1NXmL2WTJJPgrRpxuubwoZ
+xnRDVXiTiWTqUfKr81256dV7sasExrn6+m7QbDw/vcP94PqFOBsRZq8TZXqSqOfklrAC0kEsGMai
+o+ibeLdM11dZ3vIIXRQ2KG+1Sc8YUAdKHCCSk8dex8j5+hseJ+Sg4+dfzadwTL8m6i/FUAF05zCg
+7bYCAml0plviro5gcn+dtLsPheiIBGB5nN3oZraXnKL6BJ8bXb1oQiJ4DE8KqY4GgmrVyGRVv4ux
+iEbrSiwS9NdNkzIwW73tDTjOEvI5iAyV9kvIdQOka9mXZoqxNyiTo4atUVT+p6c1IAxrx+TPK5Mf
+IaQBi1srpL8snuj24ro1alrE+Jg4CVCaIdyYyeNNk/J7au/1G24EaXTRlZE29lCuajhbeGfZGNhs
+Jr73e70f5LASDYcEpIQ16+Rf8j89hkMfazraX8s1Xc3k1TmdDGFIwPOJVsmsZhIFuNWrj1supj8m
+nySbvRpWfXPmLCq1RvWIGaVOjSeeHHQcT06MshY1Ggplu2CTbZk+t1l4UWNIrtJuXNFFPvfzwa90
+YmP3Vb1GLtIMziOc940ApPWLejinqn1wHy/6dta9MDpxCUteHlr7QAo67jMkNsWZ/fYP5Sd/ZUTh
+Ks5rQG6Hart5MhiNwagH1ZMoJv1NKCBivV/6YLxmzP2ZP5spL8FUtPkb38VEJcOLIKCIwdoA2PPv
+vqY2HrGikffE/2HvXIq2Z8QgvtcAjvD7nW1ywmytZVe5aTAOTgh6d3uH/MQhwebjNeaI/nXPs5EM
+zI1Q6cxpmdg9cQrNAvlCfoqAehtQTzBNwxUamwPBsfKWKYB3vO1Zmk/wwyg12cwRCSQpnaIEdfQh
+LWyZ53wy86mx3K1aZaGanzeKCeXeq7/FI6HWlovK76ada8cNiCOdv0YZgetfuWyhhevrPfQzCVGA
+9fPzq3fhs5KGrzjyMocK0ZUNNKpXDQlQBRlVIKaorwjJvInC2jltbTqb9IZ9Q0juxkGmw+vzUV0n
+OM3Y3rdKKbZWx/H6DpAz5uGIj5jhVu+9qzMZdToWuOKTFO/QoTUccT/TGuT8IXhiiCa2k+Lbi5sZ
+yXkMLi7YgE8b9aVGLYX81Y8wyaRDm4Eo7Rn27G4x4ZKJ5uEOI0OsJRdJqSLlBriHTCTKUyaPyC1U
+3l7XubX1z6NoPFDhfbveMLZ639Qab00j+Fn3V4fUj7Jwl010Zi3kK/T7ymy1tQohH8FMJStVXk/p
++waWKJqqZpZ+wWupYoedDYcXcDjPAtkApHD9WGWlBJhoQYAobotLQgFcMEvC/BetAgyukl6AEliL
+PR+AJJ+mLXgWWTqkR8If4bvimsbcvqvwHbGksUZY3OFdPqp0aYQhhTRutzs3ui6IFVcVA7DdZG/z
+PDchrzr1P7SwufGzRJTA621ibrGhfnIj3SI2GpjWEnjDRyBb6KkbmnWYHtZEKzqVTv8zynHET8tH
+tOiftrG57+ve24yw5/IRR7N6+bdoQPzgMxuPHdm/qBj7nNTVsrx1c3rBy5MZ7QbD0yduxPOPqoRE
+1fg9Ff8lT/C4epwwLspO1tWhw3XP26ZqQ2UvXn/b12Yvy+fteoly7Fy1h08hf3k2GwqAOupT+u7g
+sGP9Q07RhD5uqH49dWevKsz7HB6r7T7DTFUKL21n/yczudf1dVVfCrxOBq4leyPJQp4vDmt6qOw4
+f4NbVc4oBZf0Dibd7CQ28XJBe+OPm1w8JxpFQKwoG2Y7jmqk2fWV7Dw6b/Jf/7wK2rFOfimCkZl9
+b457sJdumgbkZZAnM8cpNI5QrOX6iY+TOlrKHfqx/rsrfpGITMRmEj8rUudGFwGeOLQKSQVgFNRy
+Mi+Xcic3lyKk7rqPOSuf3lyGz4jKLkaNApu+jbTGBE9316/CylDSNBOEomUt58VUyzyQWm6jvyMj
+2D54Rcpl5O5mUXF9SHhxcty966AhA5R8A+lmqRnIgXO+COd98WxWGpg8jikZSzVTtIC47/3frCBx
+WUF+vPPiQKC2ikaFVfmCRNlhxQOWZHOeRbaDMG8Pn8JqdbKlqk9ji4fU2FD5Lg6uJ2+MxIaI+r92
+Zej7D5mmIlRnhZMLawGFIIDdteVxwB7P7jtO2AroDm4QxkpNkPNR+vFBuJssmRSjGk7COr+4TsA+
+QY7/Yymtt2QKTpUcRo7dD1SGCwvmYSNNISXamb9yRw9v9HvKmG5UhsdW9Gwkh7xl0yrYgrvB33e9
+Amr2hQfRqYg+X9oYhFzV69PFPKRrTlrjHWMZ47WptY2hJdjI00znQsKShm8osdZj/7UYzDnC9Iox
+MhGgbo9tDKYeENbeed57OLQ7C4NT+AKM+Sv81NbhF/iZSrTGf+bwanx4KrImGw/ejtQOAE/thLe+
+UC6dK1bm18QcLcoWtWsM/g4jJN0Am00tAohHBkpLRQ2Bo3/5s9T0qWI/zIDt9h6diOSRa+EFAsrj
+slSaL0pldoF2COHYr32Bz0l9CPI7pnVLVucIlokU96ORDFx26nUdALV93hzK+SnqMLrjlsWJPicY
+t5OVZHKDPS1MY8hFmNqEaFBDlaL4sbdHNl6WUzjP+ZHHdjHOZ81uoUDcEg6eWIPn+b9rrWmJomnj
+glhJav7rPgi1pznBlYf/ddcmGoY4/LgO1aRU+DerxgD3dRjbcHY8V08mKNOJKLJ8fCOHVw4ryRUD
+ERFRlqcSImkp/gLmh1TLrB5CFSJIjoEQT/09jczUyeHU4S1EzGrRz5oKkKV3gNiaILs6MQyvkZwh
+nLR3ytK2Fd7+pvedxbBwGm2jyCXxsrij9H0piKIasZcIXS2e88dikuQ7ppx0MTW85fPB9gI6AVld
+u9XlGnG4TFp2R6RtOR9uls1ME7d9SKZ7hgtogaIfnbWqbacHh3QsjLl40c+t+74gsGau9vUo5f7/
+O+IAl9hHkc+HacqWqpqOlL8Y1z3BwsjNjrwVyqOhzi7eVT0e6IGz5aZjzoEGmUfUmKFBEu0AGvm6
+f/v1xdTTmzB/X78vYXI3AoDMI9zhHGW+d/sX8dav+a+02iXjs4m5fC3iQY6lf7Ur5o3M1axCMpd6
+P8cAS3lx/YsoCJXdZezswVBHwsaheW8E4qK7CRawCjSlRVEl5YbyOjHHK6an7DAWdOGX9TAxgpI/
+cWjQyQJjU2NYgs2Ebyu9DsQMNzTrhSo+uNnkwUTu0zQU+ruQT0d/CVf7UPwLC3j+FNVt+oUe2f9V
+o+BrCuJgAfbRQPJ36IWe80FEkfdd44/z4NYH2hE0ocgG0uXgvRAaKkDmUSxzv6ZkAgMONKlRCKMi
+BjPc+t1//3HQVwHIlkb8/jdcBfkuX7EouPcmtTL8mKc1TLtCMADQEfEmVoUfcsfD3gTiV/7UXeEt
+wEfkkJlB6U0XGUWNoFA7Ptn/WoU+L4LBVQihLYEW13TvN6gKhM2ti6SVpAzfHbucbeDI4F4TDWpS
+Yg9HxZkze0fOJNvgueUexsuH1JVEq+qGZK8WcUsYkbVMyuKTGKplzQsNRYkL+Zfg3DUpEaaNMLKl
+4DF7kLECu/0A5Sc924W6cyaZzNdgEWFhDlWMBFvMA6vCnkWN0CssnCB07Yw/eImqIG5HHeMVrChI
+ejAc/7VY7t92GzZ+mzXC9IiRRk0Nr2pN2Tc7DNM+s3J8iHf7TNfqqZMoDABUvomq/gB2WA0PcQdD
+5AyZj56FOAzkDniXToTDu1k07++VNxWgZoIutWk9o7Kar2VNXIzuNccnHlxvQeKU32Hpu51nM5f7
+ByxzPPyIJsFJAZksdTTY/56LpA5lWeYejIEeNF8Q66TkeO3SYFphgzcLsKGrsuct5s4xacCOdo9W
+f/EQRRxw1PN7DMy5uU/ZMvn5gfzHpuDyoF5C/y4W3yxSr5WbrWRyjdmzcvnHPvMgS8xkz5+XG139
+gcefaKVe2H98gq31CMZoYDfg1rEkzTaf96v/glPsQ9+VLJ/qThE8RDH30eN5jE3FZj7oMl68RXXf
+E4Q7lTVoxOs4KajatPR2jShZqLoGtu2ap7xHRfhkBXO6hlesSSVI8Kbw2d5M5k3Z0/VMdueuNkbj
+s/oozaqUjvMHx0QjCZGHD/Un5ihJVrThd6oydROzOoo/90B+5Ktuacic6utZI0Q8YEjTpHJbvdAR
+PzEYrflrqg1FlFlnZxPwz6uEP7Fwudf4CJXYu5pNwkTfQ5WNL0QZg5CONguqgWKgc4OH/PezEAm8
+lyY+tXGPq/t75V0xVwvPcLNpgT0nBVr/r7Ua2LmheP/U7V6Li/9G1/uRmSK3tZGkHse1AkxyI02Z
+b75Q1CwMCPj38KXKonJ16N8MWITmkupak297FuTh0xbFPODRNhg5BfR5kebMSYgu/CI/yGV0OXSe
+ZF8MidhRnFN3+qBw1tvGvLRGzLJHwwcpOUfscLuKUBDKMAFlT6k5SCSvR9DmE8Xr7mVdVP16LyOm
+a8bGW5WTwqb9YvELMXhzdcRgeBuDNbl07X5S7pWR5z4vW4gnf6a75Imb6hO6CY+HDDKIMTezNVH2
+K2a/z+GL999FqNyAy4W30ugn7XD6ypZZe0jTfphAm2V5bQjR2odanWxVeCxlPHV4Al+UpiUHbqQ7
+6WBFq/h2aueneSJPPBkeSWvIv2IOFvl10UMVNGaEC6MN/80/eX9sk2MxNkmJcJ37kc9I8qHQKDAV
+VUnyh5r7ER3pq77klnMMdfxzjOzAc3yMaSuoLnzrHLF6pSFlWUt58TxNVgyMrn9j+vdSeEYtEWDS
+SS0S7oRrepvZsNZcAwrowgEw2N2dOcbkjlsFT5Y6Odz8WRXBexnj7dbXilOEzZChGSZpZhs6MpYR
+9NJqZXjf/5TcMmOipDJm4RSPSO3+ZowLHRiufgDdI7WVwGLw+UzziCHu5ZSiDguhVh89RovfJqf7
+6aC49E5UXITBDwxlrdZ8BdEMN2O17aW3ukfyqRNa2gJSCr/UeoZQYHzQb6hVyOqoWyaX1e66SHHB
+BF1T+Wisa6OxnBXl8NEARcvO7v773ik0kMgq/qthLMPf+fNSdo/oKuCKjjmRu1qOSRBh6eQduBK8
+230KAmWgK/+i4xUUMSQFsEr6aAV9eA4zMmGChI7HL2wq8vbPE36NZsBKoj4iFGxt1/yfXbNNzuoz
+cwrQnM3WVuOFjZ/56+YV6XtfxP8ViRM1oBtMNys54r3qrcdXbB5k/JYcfTXd+ygawIHq1VWVJnV1
+1nX6UH37+Z1EkeG7jiOHAtM9sCkrBX8Ap14R8pRHm7HeRTo0+DwMpNIvIEkSw2omj0+VAVPMacZD
+LfOLzSkJvI3adBIECMNQuC5rYtx1LCzPwx8Oc0IaRf3ZzwZOloNWDxRI6tUKN11yFrxEi7eGhVzt
+YG3AE0KK61JRfpYCv4/COFf+Dc7e8pSSHlUrxipteiiXHzOEzTWHxxpptW397+KjxIMlLIUtr2nk
+zvZIwVMubeEb5IcYoWPQUuS7OSkBnTHmISIuDuMCiagHNlHX+JPikNYeZfKWnBzXS9pKd7QxD7Zl
+DyALmZSf7FBKDOYcCiPZ90M4VmRCB7q6jx5c0Vu1LZ21Y8Zx3p75SS14LF7l4KftQ+MRzm9dcuc/
+O1cpT3ViNgkDQBiRfzM5oENpLpDtIN3+/6hbNJwWDTOIL4MqS73b3LzCR58LiZrieeQYdgshCAHh
++794eL0323bIhavgzT4NKAwaTMPkE9Lbmjtk7DGEJGrQYToaVxztoW6nxo0ZcNYUbLWk1s5vhWCv
+pdamblDcvSIMHQCxzrga/E6qYkHK/osFgbRJ/sqSR2HdWjjB37KAjxqby6vv8uBPHRDxepGe9U2X
+bq05ly+sH/K2ssL+B9kVZAbKw9rK5I4AHDaWjv8p5zo5goYxo78HcPjLvhdXZS4pZT4v1e7id/2u
+CvveZWqrZfDrvqyW27Nk5EybbNTxA4E79mO9+oRHw+KpYR21JQzY/zIfTB4X9iyK8bEzhzT27KuK
+ljwKfuql2D9lMARUEXl+ZtXHza2Tp29ihFDn6Y8XGsNAA0bBrLo+mA8pQVXo5iGdAsPdEml1NjHb
+jhGEY3QoQwcL9MnjmM8fOP/s08LI2xgrb4DMz4q8znJlkgfJuuksxnxDsNMG7sYUwLUF6xU+mnz4
+Keel21p3qu7+zu4xU5Rzj4HM3u2HYNhubUeWXlg27ER0Sv/DZD3EB6KZU5hhwCNEGVHPLMQ+snt6
+Z/a9SVuVzK/FS0k6y7Abq3IYd2fJGC9JTXT2JOX1I9z02ihebg9prFN1LwnA20Q9pt5zpmaXJ6V7
+q0VYgGWTrlyh2sj428OUfAmoU1lil9G3wDztcPDwOll5nghOjYd/NJ4mCElOXSeU3usx7mNlrKRV
+dDWJFzB/THaocsjreHw+nUHomu4WZoqKSJk7MKiux8R1SV816g9IQ8R27xzykoOQ/DVDaYv8G/Os
+kmzTQHlxp/UTAxl5GsAB7w7w80xEkTIC4yimuk8HsgWpTN6kEntPADcV2NRht+L8/PHT3h7n4RWX
+Ef28iGKSUhnUGh7vgGIJ04yHeJqSjCtGHP22ElbPrOXTQlAFrJKDWvmGOxD9GSs8k/W5U6aIFRow
+ffGWp1deJFj9lIN2xnBysv7kJw8XPMS7WZ9k7tEeHXeAxfGEQy34c+UTOgwvSuxdGPFgyzNkVRFj
+Bi8+/RCruobLRgWMpB45199T6wP/smrO/Xs0GR1i8ty9D3zw9NfGrPmQprQfN5w2cIolq0N2fb1B
+WX7zB1lJzJtfxRAo15bzbMt0HPJkl4QASZKG76pP0gMmgbzeyuQozU0tCDLIa4c8taAu66gSvOao
+sGXkB5uBBVEKMGSXhMynIAZyO4ViDWwsKwJZW45xblNxYG1CfoFCyNbim/YwPUsVMsZcZFqN94KY
+hwc6u1qVK/cEHLXM9swWHDRVWMsjmxTswEDCKANnQBsa9Or3iCv+8MPUMHeGinXoMAcxxkudGTVt
+MaeTU6iYQMJLQi/nagSx8kRws8YLXonhQdPoSoz99MBGADrhqFLyE3khNb/oytkfeEfeCTX1gcZJ
+wFSxyyZ+CoKRO7GgynycrQPgJBldx+y3wAyXRUuc+EU3N4DIxtarCN7g1x+nNHI5+HOKAXC43bs7
+8RYlRsqB101kKg3mtCr1ImQwqQK9c2i8eqQekOeNK0ZkrufNorWDH4synY71+Emz6BqdxX90erIE
+j9N68XmLlbMHxdqnc25p+bf3w4uaMoh5fiXpLVizcB7GzKgGZoPt6cESJ8UwE9iGI5Lovz25egwm
+245EOKUHcIxNWtjcm6/NpKMislkWcG24dp61wCd9ahgNreQGoF77GyqZx/9mvBDsdijn1V97Mrty
+NAaSE5wtb43QarQjulHvPhmlHQZkBmd0BvSXoUJxZh6FkpNrlh2Z7+lepz5CdFyizsaVw1yLACiz
+mIUeDvJ6dLpCKCrN+IHW1H4QBI7ELm/DRx1PYgHSMGvqWUd6NPQgUJeMnl0zgdzxWfU4D0k9/mSh
+QtTr+zakMFEEGpJ34in/HNElyphvKy9V2XXDnjyKSLfRWpMtXKVsXwdRB8r78tKQ8wuXlthgTm6U
+ri5W4HabhdQ8PHkLUeCpyQDclFl9mWJE8dFId4jGv3rImIfkQpZWjF7+LKE/OJcm6LCo+aLEC0CN
+sUhqULr6BhtOAcy8eb9mjLPhqf3Y66T/1u/4TBcgZ6ADnfa24A2q9G4nQuvdxU8PQu6zRDeA59aZ
+vmffWTTYm3lUYQlmNtEzCfj0Ya9hMFTQ45ZYxeMRmE4vPlbi7+DnCTVKaG5fNRMGPGiCq0OjSrw9
+0Psn5p+JKCI3F/zTh3VjgSuhn8Ap7zSkOx4qdAQL1LJTJCImOhtFrFlBpLtD7OraooV14ksBU6YH
+YIeodSLrp3GnoreA6UuU9sMziHt19uXglLBgwvcIyaYLEaN3T2OcuIbd3uJ8blFbpGAkJlbl2kcc
+iFeaBN4ayc3aEzS4QeeMEcPWWGfY6Lkeu9wVjLyi74ggDwRhRF3ygzvJUAEkzDakVP+hVgEOHI5E
+rbNhMl8bGkg9apr4zAp7z/QGDb+7EaBNf5Ilbq3Mjrym/jS2pmdM5OfVTQm6ZOGRR1F/Bl7tZkqP
+OM4edblkdxWP+xRrUalreAWCvxJHfCB0dzCRd9uHudPGJ9YhwK80Oegl+OgL1v/pomdMfu8ubo15
++hvR1LaRMwFhDv/5RxwcW3eS2wHyasDxePVqmfUlundi0HPBekMqSLJr5tZntHB/EELuC/lG8Gm8
+rq5G2j8zuhvCaE3Q4NFSEvOcBv3OV/gbMDu/EHHW/EVFtk/nO/9OlEtH0imVKInod1+k5xKmOJ83
+8kCpA7snIWHrT2OB1vl8IJ7sd89pP1jgf66QpOHmmyTvBCyLwQjLyzzDk3gZewvhoj/VfcPdRdhJ
+LLiRIjXz9KV3FVyb59njzUhHI7Du0VI30hxT0vHYnRi1ehFBCk6N9HUrn8TNQ39DWZS3YHnYb0cp
+blW8qlhTOEb1r1QKc4Wjpzn3f85xBk4vFJY8TmCcHudKuBrcKEIwuxdWWykMDmKp3sX5zPyE86/l
+Cs9ALK0JZkgzZiJYy72kPZwE3NCpEx+lCNJkFYS9YG++V9oJYVAgSll6495knIVXEgZrogGBA18B
+Ucud2epF87mK5zQ/1AioLDEDu7vbwTeXZquvpyw54/idsGy/5tFMNGVYaqTUYq5Wd2zaN2prnzNt
+WEa7EuImbCm1wQbj4kX30Bv9zkrkdPDaNfAsxhrBr4IVxVzZFcWHqS82rnzxMvi106Wk9iMpiMpw
+nKs99lV17DjZbD9plBoKiVGPFnMR4pIkAk02WQqmGF696NLtx7rWMzHDmaJnpJxiDPUjCSFoIhlJ
+jmK/OsE0eqYb454Su9TxdZVEe09bZ69qa3CTc5t+FT7C+KQL05pBzAHeB4XqncD7Mb8LPQTIaSx3
+eDbTOJ/WipsgOBf/K2gvJIx0+A8bbBaJo7H0Z7HPPTrM2Iy2RigTSwrL0+Mtb67NpfS91bq8dVig
+RfOF6aQDkpM5dOURYw6wHbK3YDtwaKCABP+wUcGFBU0YLqL+vjptSKirzrpOa4wudbe0bMO4iPQL
+Dvsn4/Ra+f+yRo5l4IJ/lr9vwNBdHIOW/8m/Um8q9IxX07IAA3Jt5rA+BevXHz3WKbH1mek65YgD
+t7axfnfYX9OlHGCt2Jwz15Sdy1V682sboHzcKdZFA+ElLpwZUZeTxTMVMQUfKuWxYQAkpymrYK25
+qHpbJasIQxmSb1FjhQ3FGRWmku3CoXIUivFlnMPLmMFEA2QxXU6N6CO2EllKfqOWNqBf0TyZ+Vjp
+kiBFXm3xrmWWotCa4Gexklb+V0Rd2ZVBFiorDg8Jh23faCeUGOSZWIeCFxdfiDJLsL9LAi+cqIeP
+n2yNJkfqPqHz2hn2D1qDYbOtq7TyKCCoDQIFVwqMDAr4BkbRowKfzhj36GwVtNG1Wle4mxbIKtV6
+vPcxQn7SDhQIfu3IoqfZFo3GImKE/OlM3zuG0Cf7tfFRtAmPvdyESaz+HPxj/zGjms2Z+6iHK94G
+0yheQIr6RTBTysrRx9mhbimeHt862tz+3XZsGNW/AxCVLn5p+Lzr7fJ2ihdWExLU/T8cnksw2bH+
+3acq8FsRnj2Ueuac2hMvunoDNDIjT0hMrkKmcmY7ZAmcQpQoTACW1CtBRC/C0O40CrBJse0MeJC0
+1//aV4EtJyrfhCqxDtRa5yjtoqllkxPi29qQeNFRm24gf9DV71ABRw1acFsaACP+pwsR7GUnos0r
+KUod6w4JanWtkN9iJ6ZdFevf21W8/pc9oNs5Pk+MKupYgmTzO7K2mxgZtGIs0/QdHrTJ3PA69RGQ
+3IDTNG1JqFwDD4XUGQHy/0dB6PxPCK+yuV9BP67jriUTKwJLZ8LcbPnpxdWiirVzmAQq7ylILIQB
+9jODw72gcloePOhCYrJkZtt2/ZLI+vCSmDF2DcOdDzvqt0tx8WkbGevUTaJQIC4g2iikR8lyr/u1
+KaWGtR1WC/YltmI2cB6xJch7jeqD2dLII6tvpEn5FTWpy1N0YzsoC5RpYnN5xW8InaNSaPReT1sr
+15nXZT6wouAY1X8xwACs44t4nSVL5rMQaZVEk57LxHoWmPZiwU44hkOuS0vFA68da6vXPiRrJAqK
+4AGF9MXHo1EUw4WBjuqeR5/rqWFJIt/y56WP7Xz5QfkbsPy3st5bp6ymEggBJLaYIdSsETZVrE9L
+/vt8lxlSiDu6HguY0Ht9cXC6daq3ixfHaEzDaNWsd3/Qb8wzOvtbB04GW3Fwsgts/ivX/nTpIs3+
+0Xemg+ofqLJhkUWmXnhorOfZAlmHD+nez3OUCohnuuFknEr6w6Hg1GEJeBC9KG0sG0BqL5DXqKtA
+PBk7q4qDiAhlfV2+7rP0uXfNfSajAAoujnvfZTUouTVyXOJ8FrnQcfDdTa9b6nTISHvI8MpnoLN5
+Q9GSXWn423E6s2mwqlhPpxkbpbfdAPqkC//zJNqOZcWkC599CE+Y5ZC7w341MBTzZDLH+3TESEyq
+PoMRvx+o2mjTbJWRxth5NPQDbPHe98GurdSwI7OFw8spg3268wEs+QGb6rpYiGrBZcwZLbHTMWv1
+yKbHHQtyaSYgayvfETp3D3a6jN8CytitND19UePOYlbKmK92+HiQJBScQEDSKwVR8vxlRRMffit1
+yqFCsAzyKeyEKTlOjHbRgHPHbVRasjwP4jE0vSoQ7bpfhCeCfY+dby82jYiMvPmiugI2iMbwQ2hU
+ueKB+mh1RkQjJo+XnnhblnHpsBpniItyVkPfdlDiaeCo+wFPkBug5aDHLha3PUfSw3Vtty8zL2H+
+9xyfqG/LqmLnn+auLihbNBKmCSDyH51zbRQgwmkwAQNpK87uDQwDdIlFi8vlMKaFse2wQxulYB5Q
+0XNgr1IvV8e/dQh476DXUjCLnwvBwEbkTvrwUghqnNfw821mG8O20NFLP8Y/quYcVWEWdiC+lDXf
+ZNu3rZWiOvtBQAV+vB4dinLIlV2FLL+Qp0HfPSYFsifdu7hg43GF9z7/WV27E6VsjbVrq0vz2xxC
+Dyrijgeu4ErUp8t8oKs8BC5YthAAbhKWtnMlDoZY3Am+cjCQzie/OpynOWVE3e8p3CVTVTBUYa3V
+rioZvkrnKl5nle/mpyvIm8xiVVx9as+DcryDD03SxGkMO6hNJT5JO6Wifm5wdQ88/Ku1KXOAu6Y0
+fI0pixLVMvJF9TeJNo6nUJ0UNqGsWlYKN8kH+RcJH/rhXE6s+waObGJR3ixlCbh2HiSn7SsJZWWE
+BoPbtX2xKZHhLZXvEiECw4xrcxZsWEpxYD3C3ZKtAkyRYRD/vBTrV7E8ITi0kv17l3tAXFqoOSAc
+d/lbB9LrXJRfPrrgO9JHEKdJ3vhTE0CGrRHG9OCLs4GXDCHTP/Bd6vPnnQTbD+B8WKvZ2jMSsv/T
+vG6B73+mm8ZQS6CRfQJEYB2Y5vkTk83U9o9bkq6tD/3R+7kT6XI3ZBE3zxeC7YDjzFUQT1x8Z949
+7S40EYafpF1W9BoNp3tCKK7Awlt97BCZT7urhus5PQck5sei6fkpaeS1J0TkefhdPDL1L34P1N48
+KqfdZoIx5P6B+rj9HRmmPxyqGfZpoNu/MsnnV3cdOvSgjteungZph302UdxZIgCecIQIpAF22ism
+Qd/EPsPTCatWKEOpOAElMeeoLBfJY1GsO1JBZL3NnucTRmpcOIK+LiG6doP5wHzJw6E3FcPNYSgs
+3c8qx/j0IbJO2z23wWxvbBRFFXfHl3LdpjVTwJtt9jmFNyjIOsDu8NBsY8cd4f2tThzvaUo7mhQi
+yvZTW2R0tKVxdRjLQDnmPH7jjKFd2VKDpcMO8CspatjruweVErT4pkG7TwPT0aiIffPfhotm0CYf
+ctKFasWu5DQC+RRFx3KpLwixTXJs/szxETvhoU8AKUfMdOsOEJehdy1OmmC+E+CuumMYrbla8oKM
+No7e1y+oXHjtPLBgBalndM3qgsgs6Pht7m+yS++10yFS8lwz7LXBMLnnI6n9If8v81SX0FSzP3Dc
+aFizFjej/QxFX7TcKU7LP6Of+wlW9H/M31ssxRB40kPsq4Q8xCxb7p13EhM/gWWWthnxD6iPMQA/
+fDAwPwC+V6LxyRwW6GKoaoi5BT6/OdEQiF5JyrZn2gLP2T+cvRp8kS1msddbITJH1gq60RB3xARL
+0cPzFGbGvzbJv4N/DnDgOd5S8WcVq/wF1M0KHhdO14dDeBg09fszjpA6kb3NNYc/rb4MTFe1Tzky
+5g0k/FvxeUT3kyegQI2tthChzJgRDegXoSkiyWHWXLYCRYVneOV4tKOH3eT9MmudhyquKCGnk+vO
+MwBMe15bUVI9q191vXUKJhVHutKwqrzFkpt5T5+kErXCjV3gSygU9qfcyC2i3Jra4aD+LGTU0Cpo
+qVUoKK5l3V1ZuRDCsHr5wN7uC3xaUxQT7hfdUqKwTatQXZLykieJclJrdp2Q3xbNJhqAmgkg2MHo
+ZEDrMQLPxbWkOlK5hLuR/pPQJf/svbqdqNC2BWIo1z5FYoEyjLnUPt1iwSoNbELdyAynefZqTsCi
+0uM/FQNCjkk2IMvX40opjId7UASHsDy6RI9q1MusvZduplse7SM6+vkLdL3zuo36U69jLyXqJ6hB
+XE+C1eRtHU0Dh+pS0nRFx90Mmj0XSUV1paiinycknjtY2d6ddSsbX+0AZiQZ3n/QQujHuWbnhUxq
+OsU8Ji1Vb1otUDEZu5vFnfUDxY5GW/+FJexvdf1JTP4Yf1IaI4oEIrpBSz1g2JxKYT/n1tGGSbRN
+Kbte8+ewOQSZX1Pr5G6shrL260xzbgtEtb1TKBBjYdFTEiiF4k91pyr6ZZlrSa5KVYnRnMkQZ5IL
+e6yG1Bnrs0eK1MIX0PG9C5WHmWjwQ6jcgqrX0ZWFlthgjVNrzye185xslcMPj3ddvo6+bCUVGy+3
+h3CSzeiMROdpCyxWRdUw5xyCCyYzqnY8tqTfN4+Kq/4hIFLBAjOOvw9+dKxkgrBbetAZ52nQaxH5
+Ux1TIAQAxHPiMtQarKhmFSRdAd3/hA3QEmwtgi+f4c9s53DhPoDAyAVFTizWMHhVEqBcuA8ohmAO
+/+0As0lDaOKUNVPy67fTeCH58MuZkMT3FW+UokmhU2IcfcNWuqEZbpP43wrEYt3GRvQNoNQ8loeW
+z/3snpE8k8LH897m68qN3IsxDWnhidR8IO0adFSrGAg7qMfE/1eUt890sdEAR3d/rDDaFYC7xc6B
+pVqelCLYx9uFcf/UjKL+4ROGVkVKPt1Ux8mq4B1YFM2tnoaqchxNXA5EFlscZMabHpNe6LSV1h+4
+h83/AQ2Yvu6EBVAoxsWpGicUgajnhmXA7N1lGZPKlVqWtSVdVIo82qvWl4YDp/uYWQ0C0M+mimsu
+SI3APrQ4NUViNxpj4S86sEGBrYDUGR/NOzHKX+T+8Q2j0zisa51SyfoLDTis21FnUC+JpO13fdUi
+teHVdZQee95TeJ2X6+S4yTUVt0XE+2zKqHG50U8TIKSTAWSiz2r8N6JAmIF9onkMbcbU9rpic/I5
+WWAxntq2ZGLYWQTv4pVBPSjJJ8x3f25fBJhSoZTeCdpYbTeSbY1fhoc8/FnLacUGSnNoWcouQELu
+VurogbeKjZCUIkKlKb8WOv8tfxiaDn5LqY2hoFVksq1QDtjaSqXo56iOHFcYaI5ZV9ALHzx8wRGN
+GWVHzw+BDW6rYPZ9f5dr9abNbv6jb+Mh//YTQeIsbcE2UahQSuu4GBTFBWBUuUdeZ9Hw2U3Rcdpu
+4H7sEff7T6PL+Ixyd9etJVzcbNv6GbiaUnMDiLU/o9oeRgBdKtTYBPxQ8h1VQvLwuZNRbi2IjIn4
+xJ4hPVFIiWIZCo2o4ttdTNnKSqMsTbsKCyOtQk6IfOwM4uE8CUjnQcJJqxLLUin7IaPUh0u0eIci
+fsqgROln9xrkgd4/w330CCh6Z7CtckdmpDXwnGUA43itbz8eaq3zf8DwVuB9Q2qkDX13Bea9nV4s
+6PA3KrQ93JyjXLqRqV4h/5PDwVfUZxjNVU6V83ICLtrba9eoIvTyNBSnRaMdtjxcfzt4s6QOptHO
+dEPtFN0CZDPgckYIpLn/g5B0GV0GYY3xrOMGaMpQuvji3+0X2pt3ensFSPzyWAewNM1LMLEvzvD1
+yxN6fSPc4xer7SohpfzB7JR+QCEtYotFxL4s7GHnjmlZhE/RPd9XjwxU81d7iSjBATTGe9U4dwyh
+G2pzrSYC9wz4VGP0knIYYqF/ykuQd1o9OlcE9td5qzfy1m+6KMGz5L3SjEvfS15XVbax3RQX7utl
+zKgN7T6kkHJyWVCeC659Itu0Swgr6HUCheCtf77s3EyKpZuxYPT2Q6Jb73IZuqU6cm2a8fv00kd0
+S0Cv3GasA+ibjt/QPiHGIyUSyMz6gG9p50jwW8HUzTTxnbqVHblWtqeD/m85gEZPY2U2TRHhAOHa
+jjXCmYA3Qgx08Ocl7CRI+OXjpKAqjwtmWmd+VD25EcN7xESe/4lX3POiGxENjsNXXvZ6IpwCTq+P
+Cqiv7wdhMMTuffxLoZgBuH8PFGR3JJeQJIH62LJ1K0mrsk1CqV2mRm7uznJ0Rb2YsT79F+IgmeT1
+2r/u0BAyr6v4IjTnC6IlRBWXTgd/qB6delTE0JcJpb6I3mF3DOjddywsSQ5RW7CCcx3MuC3dU23F
+Zyjq4iXZvEJ0Aqq8Y0G8hcIPeqwMxFxPy4S33tAZuGE9QKGx4mFYxaNoCac6qhO6qhp+DYWKBJ5w
+7fNAIk+1xwdV2SQVJgbcjd4IdLMFBNOWT7XKygJ/nKhBMzxt7GFUJfUYfPgfXXVI6BviS/Hp+/wS
+8eRrDoztqp+CxY92WDzxJ9mR4W4DAxm806fx85RP1/MG91dWbl01mZt6QVoc24ymZ0SUY4/cCfj8
+Guu2CSgTDQsWElrFspc0KP35vfmGDK0ZE9r1yc4rAliX+uGJ/zkJ4PrbMEV5En/yZFVzekmNnh5h
+ErEnM14zLNhTpFcx1S3BSYllO/7itFYaNYjVVCvLIU+QHHwH75dB6zDLLjQxc01CDXNBa2284m/X
+b2fLxfpfs0GrZ/NOgwLd8SOYIblYddPX6Bn3Hm50sK9kHDSi8stdphdqbiKB66lPMRc3iUz73gXR
+21I1Leuud4Cmno0LCuECkgBim8tb3C/ChV+qy+vqn3eqf8c0xyVlTsW5PFKjA+TIiEpzDADjJzv6
+kDTpF+4BsVZE0UXHeI1T4bDHCyZGxP8ElNmobZjy4I5h4zNVZWIwxUg21ZL+nNlyLIDLBjNHbzfu
+WnbQpew4D1CJJeBztl3sb5lTmM8uZb1H3KiKcPCK6+lJDyTH/He9PzUAnv37fu3U7U8sxdAr0agt
+AY19SamVKXpiktSxyAG1n7ZfPCG6hcOBoWzcs8dT87T756uzaB95MnmttJXGmdM56QzWl3qJdRGw
+kdEZyscUs0mGkgr8MsF83xWqZcWClwNnt/VBuFjqkLpGiSoi/aON2HqIQi32oI8ukpds03sxEuZu
+Zl0C9BstSeFxDxDAlH1RdFkyEgdy9Z3MoSDulaenOhLuKQdL12RjCQIInqba043/SUAaLUm9EoZq
+evTIha2KiPtTzxONXKLIT3g59eQHECdazbIvPb8/VXQOo375LsDTSfeS6vQOVdSD2EACQ/5vogXd
+E6gSU4BxgHS40FD25PPqX4CuFc4VkfVI7FXaAF1vRqG02CEfSxqGmChGD5fWntJln1Z0yc+tblxy
+l6aJB2Bzb15SDhHSXu88KwdfPSO+QC/B9Q3HnYLzd1JWAXfhvWPhXFVVINoBo/8J5TtuLOZ3fxPD
+cpG0fW+CqEHfYUTUy+Iq01VqRCbnXRZnaiKfP2mB5k/9AgK+BEDDb5rZEPe6aCNJ0Uj5oDr5DpZQ
+w1TMHiXcNZIZMGw1M3+9uBPYaObgH2w0z/FY1/h7SNnphbW4ZDzKdkEtC1GzYE1CSZ15dc30pOss
+fzJHRsycEfKqgCv19L1QdKxegzc7qMIfg213iT1yUhYOw/BEHa/sLeIM67tYZrnUR+AwWipGiHzs
+cLQyUqL2+4T/lNo+fmyUBMOTi2ta3Pxe9jPLCNTXsLek6Upt8dWKMPpzUhob0BOlILzg3Vs/iuU/
+kNFEHEcn3A5FiBKMttxZBMz4567hi7WxHRQZ5zqJL6qX6CYslIBxDrHwDzO2zAAL4b01MWKuEUk9
+gEQQ42jXsfBDrDV9NqIcNteok2rCmQCBv4obSvr7HEEipfQkBgLLJU40QEhen4JsA8YNFKIomYRn
+leWeJ1/f/Sq56etT61EbtG8QldF9VjkVLya4bOqu+heftyPBIGM7FyZqp9/hYojOhiu1CzPJzyvV
+SR4GwjX7hPw4u9f1FbnwvkLarLu4s6DGlk46VOskjrpuBqfab3PQCwrshNaC4pWEdF9MOrBUNLk0
+iKSRRJlKPalMwQv6JUFjuJRQjnr348jhJgQzAGXdEUJN29v57MCfr420/hdRnOdZaDaOYfnNFbvN
+6SvrYKUdMR78cF8hqZYp7fJCleLKjrD1Q8r8x6b53zplf4H+Ef2flvT/2zdAOPnHCM09ckSS2EXk
+EtLWEBJ4iNYQ5XD7NRrh95vBFYEustnz9sVFXk+fi5j2qIkpYPt3G8obrk5GvNHGitQ8DEJOo60F
+YDJkoeCJwotbfQcXK+9NXwj+Li8ZA2nCuyWfgVUQxwPZUSgR2XhtXWfcELiRBnNePeqxC9fQAOLP
+ZVt0tEI4abCWzuXVHDApHaKU48WjWp+W9AyTIK47FiXXHV8ehZeV9kllUZgPO7GTngDwSN85YB7A
+ueDS1ft0e8smIupZIupkyohjNC+xdX9UaIZTCChVtyeAYMG8I9RpOjb0ResQrbu8zC1KTnxOsbuc
+TTDFcYfhnmJ830l+t1h+N3fgKLgugQ2sCi0WKPBTkZvVQ+yxN2l41aO3V1fwFlQSS4/wVDp25lcd
+UqP0fW7k5VxgGHrnHsi0KGo5f4CWegfWy9+9xzV4oQc0h1tq5rIydressOELn0gz9Eimf9iB/+qd
+Jnt8ZpSP3god+0ZLGFCA37VHgRiHWP6KlX5rcEzSl7o9tQc4yMIEhPB+RbLBaw8BO8bSnZ2lRY9E
+YjB1tdvZ+HDGDZGWOEKMj1pteZxWR/56CVPw7uNAmQkTy3v7nTnrqfNaa0JN+ImmoJOnEPD/FNd3
+QcET1s1EpBjdvkZleaOT5LxcBBvrHDsrPxf3rb+forkuOeg5uvlyIYYrMIP+cwDLH2ZIh0z3W64t
+UO75/nv2Pcl0ZA6EsHVQgTVj8e9JWfFJQYt7RQQz2/BudArPCm1I8bGI96nL0lEOtPRUb/Q2lxRN
+52SWOFk63INBZUrk6ZHJocBeD6SZLguNmZF/esRyB/Jtz/lP+YvqTR0SMAqKrAdZWUwoeI2VGrNw
+EB3AUkSGXhUCG9j0SxIHraXOiv95L4yl65npgjBc3gsEaQK2qxSZ7itJ1yhKuzf7jjtrvbHpGrlv
+7SDB1VCrsBHqaRKaleZdIQvvjZBl+BDGcghr9PBao5z9SBCfH7Qc9FCfvXu/zOwoQMC4lv/LfnBF
+P429FeKE/wZ9kxElEw8p/SBREb6uu40CjGQnqeH9cnUU+c0R0P/Qydq7V7PBda+JLZd/pFYvU9b8
+Aq9ouoOxiB5Hh1xf4zJY/49ft1JGY3ObnVl6SF5E8YPEXI1gik/oifCPJe8ZP48lfKDAw82962Sr
+eShnzsSD9SX1O93AKITITAjjROM52FFZ+mPwHAjmoLoR9tTWMD+O0BpV77IXPj05pjHrMub5a4c+
+WUtVdFuRDvPN3KV5EuWDC47klLODlovwopxjbGMBSdjTl9Xps4+5m2dCwTROyG1ojiIUFdQUW/eE
+5v3sy1NPk3W4JAmgK/lvICB4JNg08ohsHHs6E7jcOOQTDjmtP83SqbV6Gw779rl3IZqNZVFS1IHQ
+dA2UvVcHf5JBUvl+asYBRf/amz3FoorsXeW2he7wMJwo/rXNtM0V0mRiCwuM/LDk29OXxeT115mL
+SGaNcw6jPm7l98HduW+zkRi7izfzsWV0E0dTXjnD1WHKvzNMv3kK2idOWW4m+SLYTLYVuigHvG4i
+pHPBwZaEwFCUK/1X0067ZuuwFJW/ke6LbB9ggYncKaLt3/gVAO4Dg1ehe0nJo0VnPH3qqstdiLh4
+/D/Zlu7v9/aW/BibE0xiTBiBylwF3o7mdRJiYlFunumLqLYiuA8GCdHLwNTbXw0CgfNlRjcuj/Xn
+doDYo8koQ8xMMiJZWL10rfjo34gGjoSC0S6puKY6GVIqyS5p4cysCJGdXmwwSIlxHdNxjZS+u8uG
+267xZBFjnPRpZHrDWBnmQ0fq7eoil3BYw9dk4YC83LfZmLRC5eog11zIZVLWQxt2dJf8UvGmylR4
+dN0oLsfD5+6Ap8in2XJCMjWrx8ojAJys6U8HTb7xmvuhYW9HD4vQUDjflKkfl3ga+GVESKBJbuGm
+FRYy0dTXy1opWvMk3zIVnodxVYFgsvO2/hzPLGQR5VUKt5qbp4mxrtWsRF3Bp5UJtmRiZJUw16rh
+tf9u+VnfRReC5mL/nUDIvj9/ZPblqYHF+CyEVbjpnELj0wqTVmwEpuiN6LRPAdbUcdpCJXgAJBY1
+U3wROT7QcsLLJkQ3zdnDjZTUUo356WHDXY/p8pgQWIuQp4TUlWvrQ/oOETB+2INf0MDNbk5QHKf8
+A5QDqAIQS0ychcP7T5k844N5ACZKfFJZnrHKzUfA4TGmQZj9r/YRkLYzFQ8mAp9FU2O53J4PSIJq
+ShQbZ766UwG88wjoOtwOr2V9dkLk0PZIENIS76PmxaA8sGzsc3k3YZtpAgQz91l7/7K+h92n+PRT
+JBUUbXDyBibVRCY6Ud5msib+J5Rt/aSt/f+WNFucHBgIiUYN0niqC/kcJ2D0QLtvCZNNqEJryeyH
+98Obigqa0u325g8zCl2MzbdeaxEaio7nMHbHmO+gXSiIpTMDjl4auL8h4Sv6f/8jWF5INjh7hqLf
+wEpGLS6RtG51OzeGaw+UXGqZdCdNmDGLckNAp1iMhj9qp1Z8FgUDJk/W+aMHd9nfKhetNV6Hk0ms
+wwl8XtnzNAlrpd5OFjsk5wBGWoQC6Ih/87tBbejKiV6MQoC7ID7bRMx8hbLhlFlFQS50RGXsyl0L
+x9F4wdnzAiWxsf2+sSMz1LBfq4H24tYP5YBEly1CUNAt0faG8Vg6SFoIdex/uxCxDH0v933QV10n
+8xTwIwlmr+NY98260pV2mbZZUpAFbzWhqFLh+gJsYntL+flXGZgReN9T1GrH0FG5YI06BpUlEIow
+oXgQCBL0ouqqZ4YyJT7WokCuJrAzR2ghIenaFQ6jbW57vv1Lp5zpBjndMKaiSWi6Qep4d47v366R
+DirmQ1GOOHq+HmDFEn6LLDxcl6jm/jtpFLMPez06sZ9xuKXYaKZ7lQ27kRCbOt+2JG935Nl+ojdv
+mLRCn4xeEdxWQG5IB2LkCBrUfyrEYmdATKMx/I2qjmU/N/iYB75OIHVu4Ml4Fx0qALgHdUIkzygM
+Coa0Ruq9RM2XmV3wfomjsLRL7mEsk0S+7uQsrpPnIig1jrIoXGqSERB7dFeLOuUzhSCU8Nwx6jr2
+lmDpaXgLvqU3FzdMBy60CupM49LjzxsXZ/7KIfGx4YjqXFvNhqoCJcD+crHbogBFY0HaIlSFreQO
+taEAQym+uVPTmVzWHB/VHipOPlst3UguQj6v/qmedaMnYK1xdiY8fXhci5WatPPt9mX093vMylZr
+kvUfC/0G5Aik2KEbmnPrk6UnBC0PDK9tLS1VjoTrgDR+bE5GwuyMIy0G3hxJi88hdA823LHMDAgV
+uAS5McxavK061C/MzF+9lDEdsSOi9CLPTSL2dq0SB4yqd6/5jb0NcVEX0Bp60N6BNiK7FRc0UMmL
+pYdenQdWJT+o2yNmdGDq4PstDPMcWPQ10IE0BDy3ZjY7n1UrPzhjNwlluxGGXB16wwTcSCUtx0+F
+l5/xKeXEsC9AhWUkawYfWXk4ErL/+nltnCD5VOogcZfzV2bRjpYwaf+HJ4VRWd4gv7ewvpRYLre/
+dhaCYBO9EaJjz+/lPGGES2xEKXXOMNIhe0PZkCMUiz5tLuvyT81CSChdBqIgZ/C3obwp6jHGlv2d
+sH+C6kJ58kkcTWBmPSo6n9VmWP2NR4IIJSPmPQeAKTufYyJARplNTgH6QUndTuSFrfQMBi1pB5gd
+c3W7NirahupWbDPMs4GL7Ebx7CF9mTwH/SEpKEyUmzWfe+8UTL55qmIeX6q+xEFtPK4x0BwYFZAB
+lXGqKIH3PcfQpY/zaR1DnmDsSZkAtROZQWi0RFgV5MjoIVBKqbtZnaAJtRbyQKtjTS4A6Du9enA1
+hk+Vy97v8dm61b/fZvOtA3DeZOLLvT1DlJl14StMOBZa//q21JfMNvNsX/xh7M09ajURsSpSe9Jw
+IhWV+ePdsafJn4DE44buDmQSDD5NjTIiuMFwL8SSO7j3H99tprCOOvYH6ydgoHg9aULkKKy84N5i
+858/AhEEyYAuhLm1OmvZRWqH6xTVsVOubplJyb/1U7GzZxy+QdcsM7SH4rTSnpMzDRnTEGkJDO6H
+lvcIZGlp/agXrMVfm3/Oh7W1JS65oWZlFc3uPA81YK71VGrc3MBEwgVjNq94R4zefKenSrtGTCT3
+ZicquCbdOzDUi8H5C6oYNQOzYA8Z3FNen5V3D1nkMdDCNhTefre5l71vYfL55HBfJQ3NMqM6VuPg
+ZC8vUdcYlHduNA48ag4t06+VL/kKlZ3VT7NlugCKIETkEu9JqrHYIPb4M8SNrHC97a608GKA+8GT
+D7p5nWaZQmebRFsaedZkj7t+QKloBzgk5DZeuQvemzTAWsIpluy0rfTasOUCT53TcvbG5/BkHrlO
+5GaMXBuOuN6IOs4URza30EVb4TJHwFipk+bzc2GC+YJD3IB3XFK+kmUBVo12fPPv7VPRYNeuxo3T
+JqSuEeNj3oRuYaBOTCoE13FWaJFAvt8lthYtKe1v2GGgEmozN6AhrtPrBQqm8ez46sjPOswWSD1o
+OTZxCK2w3iBsRcuOjpPA7o2CsJqzGpBil3Lmg3Y4sDPtXxx4IkojY20GS7Jx5z4w1yqk7jNd7Li2
+RacvmpM0fPC+cjVwfHOtwL+v9MTu/cLMGE1jWSU23bTyO90vqTvKU1KYGHZ/j8vmHoPHnC+9z3ah
+Sh9eQ+x8nGBBwjn1LquoU1jDtZzKlAvz3QctTC8WH21R/CCSzIpNbVzcepXuZGOm68Q5aJeYGyPw
+yhLquj2gB/xP/XHIYu3GDH0Tldgd7a8bYF1IFQUZtzWuVWicabmllGc7uFSQ++BM3fsEW63fcQ2o
+JcVba9+gI+KbfVv2l/XRUaPF077M4L/QKtRh/efazyI1+x8B18OK9yUgeGR45gehYwraSCnrdY/e
+rYYhUsoDFpqBRNF6esUQmQvtX04eAcBabAcP4/Nd4hrDyvBYLDicVByjB005D1kXeuTh/NJCG5ke
+BDyeApZhTedP23wyKJsc0WjY03d426aZr0eDdeA6IVCSZGIJvsLJNfeGax6nO5x2DqLBmITajWrJ
+Zvql/9u9tIwoX1WrkRkjYsl7oLaOhfOrZTJKQqZGWMIlWFnxrz53gks3lfqOtbxTx5bXQg++Tghj
+7QUOX9aETTpjY/ZfHOTZaqpC7+Iot14L3klUtiBUdPpGH/t//BHyB44+fa/VHyJGOZbNqfhW6pCM
+GAhC9TBB9Pm639g5Ala946eVALow7i5DASmdOCfjFxnhtWAeZYzflTViz1o8dnZutwR68lcLcK3j
+ZHpxPKoQyD1afZ6NkQYH6SCx/JFokeNuW9Vs12ntuvIqHuWkuOtRFYStAafAqrL6DWtVXhyhE+zR
+zyDt9qUmEnPH19THN0QX3SI7jnzfebg/k9VWyPmNAqZAEHmDsfBlhPvyLW1wiORkLCW7XkEA5jur
+N6q1xjDMaxD8uSDPzlXjSD1jdiV5e2x134xu5YL5opKj0ntguHxWLR6kHIR/sYALrFk5et+qMW8R
+69rTrM+r2wK3L+0UD477aoZWQ9PyOvzBuIQJVGNR+8BNmf6O5aJIwifeaFcYg+l2/KALiHIiSTNT
+eqbyNEZHEmTBvT9WwbkswE2XK9PwjIZumpECMOxKVe9HWJM7es6GKD1Z5b0+xvBwsKB0GmS+g1qI
+AhoDU5SBlf6lwub0/wuJ5c+UWCyzW5n/Z1X2DbSgQKtbdDhD62t5ZbIIvHylNi+1sXMn01ibPM2i
+erBq7CghW0F48xKcbJM5iirRUHb+SntxuEl5Hsrjs+FoMcq9pmWVn7iBoRGMTwwF4XoFiz8Oqp6G
+erzkvN+A4b+smvagKtqKbhBNoV0iWQpmEuhd7z9QYYoWyuX429oL07zPHHQtMC1PTYQGfVwXhmb0
+Vu5EBmKG+no3oDuqh/O2rs9v2aOVwE6O2tdO9seJmd3q75uikJZK55uYWJ6+qM7tjUUr0GP1+yqL
+C38ZrD2ZugIGRifPPXGw1+EW5FSTKVuw5u37jb1GUeXkNrW8ELzVH4IA5b3N2shgTCABnz3iJl+P
+AWNZx0OovSEA5qgBI7K049sJt5M5J5jwCcnRkaxGC81WQi98syt1RuAeCvQsDJr4ykTinWuNxd/8
+Wqf32lo6Z0YVPJv63iythoMQfJ7X/XzZAqHI2uYCqqXUihcDFgG10GPXRPAqffNzQcQFHQWc1fuF
+C5SkTyodWTUDmRpYGqcQx9ADEEDhW4ehbD5sN+36UX9gM5k26bqNa0cRMjUFUhz8hLDgXJCGY/g1
+3CKYVLOrv3BxFacvJi6VRNk725i6EPM0psaBmWqfKPawzbTnOmW4jV7t2qkoTVN9oFwpXW+gNj8M
+VcKSapSUAprBTYEMxL1kh5aqIERtAsTNXlSdiiJ6/kHMmpG6cVPvPFYRNjwmPoRkHIB8WltMm9Tg
+U/XtKXejT+cARlXyoy3JnXxhqlYPRD8/SaCTsYME/IR0bMcZQwfbqAmu+33vFO0RR8Pyx+H0bRAi
+nrJ/7hDOfF8u0IphBh7wtu7I6RkN8mYn3BxGTmNxXch7RUsEs9Ng0gHiow7i+jpDvCML5HZA5/Pr
+2RJ+kXX5ktqbBvEn8L8srtk0ouTEM/9vJ9/gxde6sEnhyE67fdKEFf2vcb1hgtct3WQXDFFLUsKz
+yeLSvX2JUrH9Jk94+EcIziSECJ4Wafst/AjqUKv3zZwyFwNWXOEEEXkaKG4pGXAnVXgdyQ0RV4OJ
+rTWrasR/hgHSjRC5YaEjssYYg+1UtwaRx1y6i/GnQcNUrDjYdTueJGPN205B6mNIynK+jNN4uVzs
+NGKBw5L9dYKWzXm9BrPEE+chdNYuV3QepnWbIClIkZ8Qiz/c6XigWIgRCEFokLV6HEvHe/KDjXUY
+jyO+bIhO1NA6sGgyUcb/TrvRGvZheWPIVT6oCOFf2aPRtiiKzHlPhj3amJWhvoiAvBWPiwTv5baU
+YnQWG3+vpovo9TwNvtXNYQ6+VVqb2472GQRm6WtjpsIqoKKv1H3BDc1Qvt4GY+FREF/yFmJB+9GT
+dXXeHBW3zThiwUHuGvwEpOheICS84nJnwPRplznrEdDDKFyQSz8Y7IxFb3C99s6DxyVzWCbJkfM1
+ID+oN7iHzWChlARpMK7RQ6nYphsLYaX1DMp9H7yJFxeg29Ka1xnFJmgEtHHVzWOjC2F3M8Lxarsw
++48EzsL7rS97nk5wmA1jbn9sWZg1ky8OHypih+dZAqZh1o44QbSdRWpPAslEi+CcE8KFdqCiHFTA
+SBEs6XMPOL11Q2Uw+igSfZB6kB1H08g2NiBW7QQGxKVvK0A/CA3jAVAGg2AvoxeDhABtVSzoc6X/
+pRZnFzsQ8/5WfXdOLwNWsHqFO6IhH233/rqeTRkVEIhQzNu4cMgL0YeolfY4jQf7aB12sj9VMmVQ
+0dCwjdjXeNa27RsJf22ZZR/G5I50VMNY+WQrFQzw4Ler1FbqC/qXP04BmnfUU0v31tBkk2+j0hwp
+ZGLEtbJCGAG1HJlszHLJHN0DTwARSPhA9NtCAPRJmyYkcsSWJ032N13tzU2uMxiU+qeIBUI02fCv
+ee8Uqsy6mfEAhQBLUQL87efKb1erOkWj7T6niU8Pv2fkz3tpNzMpZm2GfQbnobZRf5X+a49HWUWF
+NPlm8JOifpsl5L5BH4aGoCQev6BVRiCu4Q8wRof1fFbDhG6G7GS3t7Lt3ibKDypbnGjrXvcMaCmI
+K3MM4zyocT6aqR12j8XKzThdDPS9QuzZ7YV6svzWedXDOpah22x/EAvRS0ECpgyvop0Q+V7asdMM
+F+pS4VlbOZRyXkhLFujjx60042y5X6A9dCfvK0HNZi6XDpdmw9olmY3gFhL8zHcTEUTtl4DWCxMx
+l6wbaBrojUvX9bPzpghD/+d5uDBq7+5OI7uok4R+AP6DwuRUygPzBwckvZ2e+lBN+qm3s9YCjugD
+DjsP9jy4gFjF5n/HIpBNMjJxsUeUiuHTVY5hJYaHt1VE+qG2ERIp55yvcnurjE3EdHfmpl7sSbO/
+YcG7LJfr8KwupkLW0XmbxyQOatzq9iUNyMeUNeNAX6b/AZG1C7t4wLH5mLQS1aAY3y6S+YwbGYkj
+fiWi2/Aerrqm8M4xJGSuwrgLa4tcNnbV4vuAoy/bTAvda0STh3JefirxrAJTVu2yvOZWwSJrWIYO
+V2qqsfhf3UsUNRVtD/7sUSFFp1zTFLTX/gWbwCMkHqLX3vfeeLogMCvAkE+U1HeJa7etWK0XRgP/
+DGZ50PVPztuxtQqa9Vnu5h4wgn0AdUIS0EBfydP0a3rm0wNz3cK4CvnG/UZWU/EqSdi3PKfYwq9D
+dohWIHMk1zpdw+b51OmTalfkK6oxYg9r7/VRvs0VndT8EroRw0AH29j/NF5FJxxH6mFSWP1mBci9
+fEYTsHewkRk2XdnuhfL2h9egCNRTSVHjDyr2S37XwpaFSyAO2qvV4Sy1bFGX2jhd1fb62NRP6SQ1
+ZXEVQGr686eq92QWeQpxjFeIgysvPJ0DISzbbhy6Jt3nb4l/YtnsIyuUjaDicZxTBEVxw3Klt0DO
+xH9ntzl/NYWUUvpH+oQ57aNr3hZ4Me+5YzanAEc/wx87c0OJptlZr79Hrq4QWbd/FO5DDRancGBj
+ObQAXjrif6icuCEAm9ZzM+bAZE4wAivyVtnrjTnJzhaLWaRlssXlH1j0Ga49lC5Gas1CLEZaiVSl
+QgRAJ5I/ohQwGuknTQ3m+QstMxT7zz8tvS583UCSYPPzU3jFmqk3bvj1qXAr06WMLD16wVDvLlcY
+NWA8BtCbdpyz96EkhaJZIjbIOk0UenD5a0ab7GYdk43SZCJA8UpjBQURgnywshUvuM4KJk6VnnDh
+z03JMXH8P9gA5uFTJub8NTfEiDK982TTq9t4HQOl6E05mgJUaqjwWZkfr2oGFNCBLSTJtdE413XB
+8Tu0IhgtIYM1S/YXv0RA3LbqSwrYyHuAHJb7/S1s018TPFJ8pRA+NTfv9/qL1fOoo5lOUeahHiuv
+mhd/cbPSCG0mMUm6EVhdkAnbwuEFLwd4M4SoHSBk0dw+zVW8hxf3QUNilWi9K0J9bhuLhEYzZu6Q
+QLusMkSXTlF/Zli4ZodV9VEqAKYLWbm1Nstf9r4p72kp2ZMHR6h/EEjBEOg+xnwg9yYx3g9iVO/k
+6ly7lx+7ihQSxb+FDrULlULa09gkI5c1rXz3bjDghhNTmA+cZLIdUrpe9l6h6A3OSJk705nnq5eD
+RMoaKUfOGI7ZFzsEDVm2JJz1uZB9b6fTixlm+68JnwM7OS1awh+W0aw2JUK3RVr63j9Ybr4+qW6v
+FIrMPWg1Q/FJu5R1kSvmWgUdbgUQhRwV6w04U65Elygqo8IK85dZ/1jEou52eB/TOYPbLZleS1f9
+DeuJR8oWY8ueU/mrsvU7FIgK6Jyz5CFsDUCfY1GHyVf7v8qjbpJuGqwUR6W1Z+GKWXOEEVRIIEFU
+b99UtVqId6HaY+6pMza0cADB0MVBS3COqq64VQDwBQ63eWwmoijGzAVbGAXkKBPZCC1b7zCXu5Fk
+5l/h14c6OLQq5M08CM2zrGreMPh/TD5zUMdd3qyZuEVChG2u1OtmE6NxcyhEYZv7tTFMVAwalJhf
+1j2HdWs9JPTaCYBom4aSP952z89I+Fzyjl4xZaTBASHzDJ8VNC79PP41gpauVBg4VsOXUfibt3Vr
+J/N26F21dHtXhQVPyENAudeFn48KWjBgrqni7VrOEmH3cHO2bpuexmvmEmrqRieRXYcrew/wj3gE
+exKhojuado/UVmGf2h1OMgA41OLT9K4HR5kWhoGKTUioGuyewogUXXYH/ShLYV20kkSTxoHOtYvh
+aBZhrd4Pg4xVDb7VTSKOQNc3rG7uQhKPsc0WI1fpkv78Pr/Rpqf9GrSdm/mNL4UuZi1iIMXuQGg/
+BaB2zMKhi8VJ8MOMuxdvbDM+vRGcVpKeekp/jGt91yB6df1D79CB+0m72aHFVm4Xr4Pd61C5ASPC
+Riovq3a92y+WP8MK0dIpAeVbUcrx76dI7H8xFH0hdlxa94EpmsOY/eyiRky3FKl6uRQaFwHBZVZf
+AAmVp5zAjg+1FaRskDLimMU/yMzgLu3NJQ9vgin4C2aecZWbPv1iruDcz72NHWjVSaiOcQoNnduk
+4RUfgEymecp/rfNArlg9ckLK5rsfX5RUoTj6IDd26k7zxFyEtKky01R32/+FZob5EypL9Fcu8eWl
+BQA+ieWWH89n0E9k4Z4LDZ5ZRgCVNnnKtLa0XYXEvlqHR93gygZgQCxSrDhJrjeBWBVL6l7JdQbJ
+97qEb9jcbDuj0d/nw7BxIYXQXreCE5fcDdt828RP6E7eLM1b0v9SQ3bb2OWEpXpxXCkSK7ghiGqC
+QOqO4McK2fT8+umOtEccib1ugZJZbHp9vzrjbY1GkCf1xnudnYyCrgvKwSnslGdw0xKd8GHrMToD
+GHnf898xN6Q7fszRiDco6AeV6LgpGhKFU3x0XkTETdaEyNfbBO+B1wqOtWVIWkn6nOuILNv9Jvj+
+S0/idTNr71iQ+7aKxGzR/rGjdIIpCCmhgXm5o1pNq34+wN/BuZ37upHfnpCXlDkb7tuGmBzLHcvC
+uTw+8FFDKhsbktLysyJZ1zDvfR8eqhJYZRj4mpA8KGFESGW44iYdNESVvRPtwbl2jxaAXLKb4Rj9
+9h3Mt03OUhz38udsoTJHKHWznpH02r1oz1aszNLd8mA2J5o4jeI9dGjHvn+K9hXkKcRdIvyMr32h
+GhWuuNb/tfVx4XhZ+ywHMffVmI18FhGzHP2TFYOuN/nvbRMILyvI4K8IJlPK9w/h5b0ScZDPdKi7
+dz6oSQiRRpEHaaWvbY1MKMNGK20h3rpBzXrhTWvOadi2hGTp00dmF/Hp1WR/qgQjXjBDNFHZwlL5
+UImeJHnbYXJm5yt1hfiXum8ZE96yWeBodQXOUKIlE8ri+sKXbi0rGOSoTXm6eovt7+eWKcNXMRky
+n7+L1SqFZop8NDgt5R28XteE5/sTRj8t+WrWT5lZXaAp1YsOlyUSmv8tAcRV3Z3PzEESk1XpbLXe
+0VDuAjwOTmZMX+JSsHDn42eSHfTjZ8JZsx/YvADDuYO0SNO4yU7xgJElY/bkFtA7b1RHLzUv51yL
+JZ/N/ltO9r9F0VgTOlO4PcCn62jWH6GFwcMVGtPQ4IQnbUe0umrScfGpCdhimROLROUWV0fKNk3r
++le3PQ/1POFknhCPLVQ0LlyGxVEILhqMwKXw2NA5Va0ag1uTIpruiGm6oQkLmZFl3f2e6uJy4wlx
+eqYM/2+cAs5/47gW1GxMC1xo6ssNXALQqFaIMbonpJ+eFmyWIx0eiSoGPbx2g4eJeyhhYO1H2QV7
+O376HA+AHNcQUVUjWQbVFlHBpFNUeXnfDNEyRdD4m51uh0hGDa0VlUnN10NPSKRvRTxjphe3E5HO
+p4tWoSVUvk8N1PF+PPR3aQj2fxuCQNB4HkEHK1RGZoP2ZoKOp1zp4pF2ursb3zdPXH4lGx0MZcc5
+fHCIfROpIxyOSxUfAZvbdQCQm8ke0ylSkc6RS9jC3H7DKCsqqAsAVZ8xjKqOPLMZxOkMCtBfrelX
+r4oiyUHy4iZDUAWUeJixBaUPo4ZiUHb5U5dnkv2e3BpOLzYFB5T1fEwP0/B3MwnJR4PDS85pekRJ
+jJMwKx/Lf0RZeyQ1LK3Vrbs/SWhjg7pYLbReKXGSENmfc0GtcGcyxIhd9xzzsgavKarGAd3Q56yX
+fY/cD2V0v0VVVJeK3/nDTMZAhI51in5C/VLgoiP5of/Zhhtq2TDjJ+2mis+umMGHGF301UASkAjj
+UrCPaSgmO9Tt5eOC7EkO/oqZkwmLzmX41H21gsySiDnhuwQwdFD4y306xU6x2gcb++/ueaWKnxgT
+kQCDn6ln66qY4mt64XF3X/QNmg7Eblo+3kkzlC9ymyiA844cbUcoDjuVw6gcSZ4xUG5KsxidfBsA
+zWoukZeRwQrXOjd84VCjsw/01oQvui3IcZbKzkiSthoNWNyDE1O5u3QOpLbaKr6KOIh8o45sXVye
+ZuMraiJWhC/E/peEtHb2hIUY+NksT9jjQVv0Vhs6WRjKUJOhw7owe71xtiq94TKrXDkhBHW3NUN5
+FgOlr0ptL59HD0ECjgDJD/ni0unb9glanTb4H3aho59O4BlvFq2NjmGsv8YA3XM/KbZXFkwEoFYo
+DQ6hw5UB675UKnhWlwhLrnnbJV7cKqS8cnJ8RNRK3mtDZam+4s/75o9bMdMgjNtnrEx6uyM9hTG3
+wbb2S+45uMtRLK2kYzEMIDHNhqoE3J+qbEAIIjKM95xCFgi8u4P2KJXYWAYUhIdUR6nS5FNv5Md2
+7ymT44HGYot3/sK8hnajI7eAJI9c9dTIKCXj+u9Zw59V79Fq9x4SSuAP1icQtsh9ONOpn5kuYLSL
+wLs/8I699ftOaVXMkMJccpquiZ6XJteOyE346nylKEmxBu37OqkXqVrYMRpZNpIdr8bHX5CHUtzQ
+kPr4pvC0pjYnY7WCunoMWwBW0pSoPzy5IePWZobTOatbn04MkvzodZrLK/RovVEgr7V4CNihhDVg
+FOyTo5/BseDeDnIjREbMZF9bO7F3yxKt6EctGa+D13gjblPFhuX81vmPOxqlhmOBj6ZUTIzcR/O+
+S4qOvAK//WXNJkNizYS7cvm2xP9jGDXB0o8cZDG2WbndcuOPVKxbGNDeSg6fvhdh7UMUDFV5yu6A
+mHhPgZMTru+EewdZf9lgMTM2YSBJ5md0e8axU2dL1dEBa0HF7mQRIKfaPQhMBZ+DG7hbTa6Ygu1N
+cY3LRF6apZgwkq5VQ370UENvTQgPmRDQjzeZL8AjAreqgYMQuKn6yCO24w4oS+zIC+9K0jS4cE5T
+y4cNSV5SXEBVMW4N3jlMVJkb7ZSi71QNL3ZpjiXljWhcyh8m5llHYF1NAHGvcUE3nLIAaOmdVmeA
+YxsoWXrMoaDW3af2OLadKFdYw5iQzEXiFhWiuMCSAFr2eoigA4bIFkISlCLpmXabeShvgAYrXe3r
+4l/vQcRdS0CV0sU/fano+kN7NkfrgVYBTpy4FgBeFpUr
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/d3ordermanager_pdfhandlerTest.php b/src/tests/unit/Application/Model/d3ordermanager_pdfhandlerTest.php
index 29dd30b5..343aa7c5 100644
--- a/src/tests/unit/Application/Model/d3ordermanager_pdfhandlerTest.php
+++ b/src/tests/unit/Application/Model/d3ordermanager_pdfhandlerTest.php
@@ -1,258 +1,377 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/d3ordermanager_remarkTest.php b/src/tests/unit/Application/Model/d3ordermanager_remarkTest.php
index ecad5ef1..9cfe693a 100644
--- a/src/tests/unit/Application/Model/d3ordermanager_remarkTest.php
+++ b/src/tests/unit/Application/Model/d3ordermanager_remarkTest.php
@@ -1,277 +1,335 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-qUNzS1L1elhql92TaGa=
\ No newline at end of file
+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
+J2VH80LFRNQO5XvtEgk+4RZf+0==
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/d3ordermanager_renderererrorhandlerTest.php b/src/tests/unit/Application/Model/d3ordermanager_renderererrorhandlerTest.php
new file mode 100644
index 00000000..fae3ddac
--- /dev/null
+++ b/src/tests/unit/Application/Model/d3ordermanager_renderererrorhandlerTest.php
@@ -0,0 +1,52 @@
+1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
+?>
+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
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/d3ordermanager_toorderassignmentTest.php b/src/tests/unit/Application/Model/d3ordermanager_toorderassignmentTest.php
index 3a94877d..2eb24782 100644
--- a/src/tests/unit/Application/Model/d3ordermanager_toorderassignmentTest.php
+++ b/src/tests/unit/Application/Model/d3ordermanager_toorderassignmentTest.php
@@ -1,144 +1,161 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
-CX2zuaOuSau4RP+ZfISwqqIvFoK7U0==
\ No newline at end of file
+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
+3zDcmnxda21vQi9I41oZxRIuQK6J8xBZjv//vm==
\ No newline at end of file
diff --git a/src/tests/unit/Application/Model/d3ordermanagerlistTest.php b/src/tests/unit/Application/Model/d3ordermanagerlistTest.php
index dae5ad38..ba9616d9 100644
--- a/src/tests/unit/Application/Model/d3ordermanagerlistTest.php
+++ b/src/tests/unit/Application/Model/d3ordermanagerlistTest.php
@@ -1,312 +1,312 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
\ No newline at end of file
diff --git a/src/tests/unit/Modules/Application/Model/d3_oxbasketitem_ordermanagerTest.php b/src/tests/unit/Modules/Application/Model/d3_oxbasketitem_ordermanagerTest.php
index 0bacb895..d0929b07 100644
--- a/src/tests/unit/Modules/Application/Model/d3_oxbasketitem_ordermanagerTest.php
+++ b/src/tests/unit/Modules/Application/Model/d3_oxbasketitem_ordermanagerTest.php
@@ -105,7 +105,7 @@ class d3_oxbasketitem_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oOrderArticle = d3GetModCfgDIC()->get('d3ox.ordermanager.'.OrderArticle::class);
$oOrderArticle->assign(
array(
- 'oxartid' => 'foobar',
+ 'oxartid' => __METHOD__,
)
);
diff --git a/src/tests/unit/Modules/Application/Model/d3_oxemail_ordermanagerTest.php b/src/tests/unit/Modules/Application/Model/d3_oxemail_ordermanagerTest.php
index 5b9ba348..cdae28e9 100644
--- a/src/tests/unit/Modules/Application/Model/d3_oxemail_ordermanagerTest.php
+++ b/src/tests/unit/Modules/Application/Model/d3_oxemail_ordermanagerTest.php
@@ -20,12 +20,15 @@ use D3\ModCfg\Application\Model\Configuration\d3_cfg_mod;
use D3\ModCfg\Application\Model\d3str;
use D3\ModCfg\Application\Model\Log\d3log;
use D3\ModCfg\Application\Model\Shopcompatibility\d3ShopCompatibilityAdapterHandler;
+use D3\Ordermanager\Application\Model\Actions\d3ordermanager_action_getpdfdocuments;
use D3\Ordermanager\Application\Model\d3ordermanager;
use D3\Ordermanager\Application\Model\d3ordermanager_conf;
use D3\Ordermanager\Application\Model\d3ordermanager_pdfhandler;
use D3\Ordermanager\Application\Model\d3ordermanagerlist;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_templaterendererExceptionInterface;
use D3\Ordermanager\Modules\Application\Model\d3_oxemail_ordermanager;
use D3\Ordermanager\tests\unit\d3OrdermanagerUnitTestCase;
+use D3\PdfDocuments\Application\Model\Documents\invoicePdf;
use Doctrine\DBAL\DBALException;
use Exception;
use Html2Text\Html2Text;
@@ -43,7 +46,8 @@ use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Field;
use OxidEsales\Eshop\Core\Language;
use OxidEsales\Eshop\Core\Module\Module;
-use PHPUnit_Framework_MockObject_MockObject;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
+use Psr\Container\ContainerInterface;
use ReflectionException;
use Smarty;
use stdClass;
@@ -80,13 +84,13 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canSendOrderManagerEmail()
{
- /** @var Shop|PHPUnit_Framework_MockObject_MockObject $oFieldMock */
+ /** @var Shop|MockObject $oFieldMock */
$oFieldMock = $this->getMock(Shop::class, array(
'getRawValue',
));
$oFieldMock->method('getRawValue')->willReturn('value');
- /** @var Shop|PHPUnit_Framework_MockObject_MockObject $oShopMock */
+ /** @var Shop|MockObject $oShopMock */
$oShopMock = $this->getMock(Shop::class, array(
'__get',
'getFieldData',
@@ -94,36 +98,36 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oShopMock->method('__get')->willReturn($oFieldMock);
$oShopMock->method('getFieldData')->willReturn('value');
- /** @var d3log|PHPUnit_Framework_MockObject_MockObject $oD3LogMock */
+ /** @var d3log|MockObject $oD3LogMock */
$oD3LogMock = $this->getMock(d3log::class, array(
'log',
));
$oD3LogMock->method('log')->willReturn(true);
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oModCfgMock */
+ /** @var stdClass|MockObject $oModCfgMock */
$oModCfgMock = $this->getMock(stdClass::class, array(
'd3getLog',
));
$oModCfgMock->method('d3getLog')->willReturn($oD3LogMock);
- /** @var Smarty|PHPUnit_Framework_MockObject_MockObject $oSmartyMock */
+ /** @var Smarty|MockObject $oSmartyMock */
$oSmartyMock = $this->getMock(Smarty::class, array(
'fetch',
));
$oSmartyMock->method('fetch')->willReturn('smartyContent');
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'_getShop',
'_getSmarty',
'_setMailParams',
'setViewData',
'_processViewArray',
- 'setBody',
- 'setAltBody',
+ 'd3OMsetBody',
+ 'd3OMsetAltBody',
'getBody',
'd3GetSet',
- 'setSubject',
+ 'd3OMsetSubject',
'setRecipient',
'setReplyTo',
'send',
@@ -133,11 +137,11 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oModelMock->method('_setMailParams')->willReturn(true);
$oModelMock->method('setViewData')->willReturn(true);
$oModelMock->method('_processViewArray')->willReturn(true);
- $oModelMock->expects($this->once())->method('setBody')->willReturn(true);
- $oModelMock->method('setAltBody')->willReturn(true);
+ $oModelMock->expects($this->once())->method('d3OMsetBody')->willReturn(true);
+ $oModelMock->method('d3OMsetAltBody')->willReturn(true);
$oModelMock->method('getBody')->willReturn('mailBody');
$oModelMock->method('d3GetSet')->willReturn($oModCfgMock);
- $oModelMock->method('setSubject')->willReturn(true);
+ $oModelMock->method('d3OMsetSubject')->willReturn(true);
$oModelMock->expects($this->once())->method('setRecipient')->willReturn(true);
$oModelMock->method('setReplyTo')->willReturn(true);
$oModelMock->expects($this->once())->method('send')->willReturn('sendSuccessStatus');
@@ -263,19 +267,19 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canStartSendingOrderManagerMail()
{
- /** @var Remark|PHPUnit_Framework_MockObject_MockObject $oRemarkMock */
+ /** @var Remark|MockObject $oRemarkMock */
$oRemarkMock = $this->getMock(Remark::class, array(
'save',
));
$oRemarkMock->expects($this->once())->method('save')->willReturn(true);
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'getOrderManagerMailContent',
'_getShop',
- 'setBody',
- 'setAltBody',
- 'setSubject',
+ 'd3OMsetBody',
+ 'd3OMsetAltBody',
+ 'd3OMsetSubject',
'_d3SetOrderManagerReplyAddress',
'_d3SetOrderManagerMailRecipients',
'_d3AddOrderManagerPdfAttachment',
@@ -287,9 +291,9 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
'subject' => 'testSubject'
));
$oModelMock->method('_getShop')->willReturn(d3GetModCfgDIC()->get('d3ox.ordermanager.'.Shop::class));
- $oModelMock->expects($this->once())->method('setBody')->willReturn(true);
- $oModelMock->method('setAltBody')->willReturn(true);
- $oModelMock->method('setSubject')->willReturn(true);
+ $oModelMock->expects($this->once())->method('d3OMsetBody')->willReturn(true);
+ $oModelMock->method('d3OMsetAltBody')->willReturn(true);
+ $oModelMock->method('d3OMsetSubject')->willReturn(true);
$oModelMock->method('_d3SetOrderManagerReplyAddress')->willReturn(true);
$oModelMock->method('_d3SetOrderManagerMailRecipients')->willReturn($oRemarkMock);
$oModelMock->method('_d3AddOrderManagerPdfAttachment')->willReturn(true);
@@ -308,13 +312,63 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
}
/**
+ * @covers \D3\Ordermanager\Modules\Application\Model\d3_oxemail_ordermanager::d3OMsetBody
+ * @covers \D3\Ordermanager\Modules\Application\Model\d3_oxemail_ordermanager::d3OMsetAltBody
+ * @covers \D3\Ordermanager\Modules\Application\Model\d3_oxemail_ordermanager::d3OMsetSubject
+ * @test
+ * @param $setMethod
+ * @param $getMethod
+ * @param $returnValue
+ * @param $expectException
+ *
+ * @throws ReflectionException
+ * @dataProvider canSetOrderManagerMailContentDataProvider
+ */
+ public function canSetOrderManagerMailContent($setMethod, $getMethod, $returnValue, $expectException)
+ {
+ /** @var Email|MockObject $mailMock */
+ $mailMock = $this->getMockBuilder(Email::class)
+ ->setMethods([$setMethod, $getMethod, 'throwUnequalContentException'])
+ ->getMock();
+ $mailMock->expects($this->atLeastOnce())->method($setMethod)->willReturn(true);
+ $mailMock->method($getMethod)->willReturn($returnValue);
+ $mailMock->expects($this->exactly((int) $expectException))->method('throwUnequalContentException')->willReturn($returnValue);
+
+ $this->_oModel = $mailMock;
+
+ $methodName = 'd3OM'.$setMethod;
+
+ $this->callMethod(
+ $this->_oModel,
+ $methodName,
+ ['content']
+ );
+ }
+
+ /**
+ * @return array[]
+ */
+ public function canSetOrderManagerMailContentDataProvider()
+ {
+ return [
+ 'body return passed' => ['setBody', 'getBody', 'content', false],
+ 'body return empty' => ['setBody', 'getBody', '', true],
+ 'altbody return passed' => ['setAltBody', 'getAltBody', 'content', false],
+ 'altbody return empty' => ['setAltBody', 'getAltBody', '', true],
+ 'subject return passed' => ['setSubject', 'getSubject', 'content', false],
+ 'subject return empty' => ['setSubject', 'getSubject', '', true],
+ ];
+ }
+
+ /**
+ * @covers \D3\Ordermanager\Modules\Application\Model\d3_oxemail_ordermanager::_d3SetOrderManagerMailRecipients
* @test
* @throws ReflectionException
* @throws Exception
*/
public function canSetOrderManagerMailRecipientsCustomer()
{
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'_d3hasOrderManagerCustomerRecipient',
'_d3sendOrderManagerMailToCustomer',
@@ -348,7 +402,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canSetOrderManagerMailRecipientsOwner()
{
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'_d3hasOrderManagerCustomerRecipient',
'_d3sendOrderManagerMailToCustomer',
@@ -382,7 +436,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canSetOrderManagerMailRecipientsCustom()
{
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'_d3hasOrderManagerCustomerRecipient',
'_d3sendOrderManagerMailToCustomer',
@@ -416,7 +470,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canGgetOrderManagerMailOptionEdited()
{
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getValue',
'getEditedValues',
@@ -443,7 +497,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canGgetOrderManagerMailOptionObject()
{
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getValue',
'getEditedValues',
@@ -470,7 +524,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canHasOrderManagerCustomerRecipient()
{
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'_d3getOrderManagerMailOption',
));
@@ -495,7 +549,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canHasOrderManagerOwnerRecipient()
{
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'_d3getOrderManagerMailOption',
));
@@ -520,7 +574,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canHasOrderManagerCustomRecipient()
{
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'_d3getOrderManagerMailOption',
));
@@ -545,7 +599,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canGetOrderManagerCustomRecipientList()
{
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'_d3getOrderManagerMailOption',
));
@@ -630,19 +684,19 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canGetOrderManagerMailContentAdminTpl()
{
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oModCfgMock */
+ /** @var stdClass|MockObject $oModCfgMock */
$oModCfgMock = $this->getMock(stdClass::class, array(
'getLicenseConfigData',
));
$oModCfgMock->method('getLicenseConfigData')->willReturn(false);
- /** @var Language|PHPUnit_Framework_MockObject_MockObject $oLanguageMock */
+ /** @var Language|MockObject $oLanguageMock */
$oLanguageMock = $this->getMock(Language::class, array(
'translateString',
));
$oLanguageMock->method('translateString')->willReturn(true);
- /** @var Config|PHPUnit_Framework_MockObject_MockObject $oConfigMock */
+ /** @var Config|MockObject $oConfigMock */
$oConfigMock = $this->getMock(Config::class, array(
'getTemplateDir',
'setAdminMode',
@@ -652,19 +706,19 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$this->isTrue()
)->willReturn(true);
- /** @var Payment|PHPUnit_Framework_MockObject_MockObject $oPaymentMock */
+ /** @var Payment|MockObject $oPaymentMock */
$oPaymentMock = $this->getMock(Payment::class, array(
'load',
));
$oPaymentMock->method('load')->willReturn(true);
- /** @var Basket|PHPUnit_Framework_MockObject_MockObject $oBasketMock */
+ /** @var Basket|MockObject $oBasketMock */
$oBasketMock = $this->getMock(Basket::class, array(
'getPaymentId',
));
$oBasketMock->method('getPaymentId')->willReturn(true);
- /** @var Order|PHPUnit_Framework_MockObject_MockObject $oOrderMock */
+ /** @var Order|MockObject $oOrderMock */
$oOrderMock = $this->getMock(Order::class, array(
'd3getOrderBasket4OrderManager',
'd3setBasket4OrderManager',
@@ -680,7 +734,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oOrderMock->method('getDelSet')->willReturn(true);
$oOrderMock->method('getOrderCurrency')->willReturn(true);
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getValue',
'getCurrentItem',
@@ -689,7 +743,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oManagerMock->method('getValue')->willReturnMap($getValueMap);
$oManagerMock->method('getCurrentItem')->willReturn($oOrderMock);
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'_getShop',
'_setMailParams',
@@ -718,6 +772,10 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oModelMock->method('d3GetSet')->willReturn($oModCfgMock);
$oModelMock->method('d3SendMailHook')->willReturn(d3GetModCfgDIC()->get('d3ox.ordermanager.'.Smarty::class));
$oModelMock->method('_d3GenerateOrderManagerMailContent')->willReturn('returnValue');
+ $oModelMock->method('getViewData')->willReturn([
+ 'no1' => 'value1',
+ 'no2' => 'value2'
+ ]);
$this->_oModel = $oModelMock;
@@ -737,19 +795,19 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canGetOrderManagerMailContentFrontendTpl()
{
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oModCfgMock */
+ /** @var stdClass|MockObject $oModCfgMock */
$oModCfgMock = $this->getMock(stdClass::class, array(
'getLicenseConfigData',
));
$oModCfgMock->method('getLicenseConfigData')->willReturn(false);
- /** @var Language|PHPUnit_Framework_MockObject_MockObject $oLanguageMock */
+ /** @var Language|MockObject $oLanguageMock */
$oLanguageMock = $this->getMock(Language::class, array(
'translateString',
));
$oLanguageMock->method('translateString')->willReturn(true);
- /** @var Config|PHPUnit_Framework_MockObject_MockObject $oConfigMock */
+ /** @var Config|MockObject $oConfigMock */
$oConfigMock = $this->getMock(Config::class, array(
'getTemplateDir',
'setAdminMode',
@@ -760,19 +818,19 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
[$this->isTrue()]
)->willReturn(true);
- /** @var Payment|PHPUnit_Framework_MockObject_MockObject $oPaymentMock */
+ /** @var Payment|MockObject $oPaymentMock */
$oPaymentMock = $this->getMock(Payment::class, array(
'load',
));
$oPaymentMock->method('load')->willReturn(true);
- /** @var Basket|PHPUnit_Framework_MockObject_MockObject $oBasketMock */
+ /** @var Basket|MockObject $oBasketMock */
$oBasketMock = $this->getMock(Basket::class, array(
'getPaymentId',
));
$oBasketMock->method('getPaymentId')->willReturn(true);
- /** @var Order|PHPUnit_Framework_MockObject_MockObject $oOrderMock */
+ /** @var Order|MockObject $oOrderMock */
$oOrderMock = $this->getMock(Order::class, array(
'd3getOrderBasket4OrderManager',
'd3setBasket4OrderManager',
@@ -788,7 +846,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oOrderMock->method('getDelSet')->willReturn(true);
$oOrderMock->method('getOrderCurrency')->willReturn(true);
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getValue',
'getCurrentItem',
@@ -797,7 +855,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oManagerMock->method('getValue')->willReturnMap($getValueMap);
$oManagerMock->method('getCurrentItem')->willReturn($oOrderMock);
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'_getShop',
'_setMailParams',
@@ -845,25 +903,25 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canGetTemplateDir4OrderManagerModule()
{
- /** @var Config|PHPUnit_Framework_MockObject_MockObject $oConfigMock */
+ /** @var Config|MockObject $oConfigMock */
$oConfigMock = $this->getMock(Config::class, array(
'getTemplateDir',
));
$oConfigMock->expects($this->never())->method('getTemplateDir')->willReturn('returnValue');
- /** @var d3str|PHPUnit_Framework_MockObject_MockObject $oD3StrMock */
+ /** @var d3str|MockObject $oD3StrMock */
$oD3StrMock = $this->getMock(d3str::class, array(
'untrailingslashit',
));
$oD3StrMock->method('untrailingslashit')->willReturn('returnValue');
- /** @var d3ShopCompatibilityAdapterHandler|PHPUnit_Framework_MockObject_MockObject $oShopCompatHandlerMock */
+ /** @var d3ShopCompatibilityAdapterHandler|MockObject $oShopCompatHandlerMock */
$oShopCompatHandlerMock = $this->getMock(d3ShopCompatibilityAdapterHandler::class, array(
'call',
));
$oShopCompatHandlerMock->expects($this->once())->method('call')->willReturn('fullPath');
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getValue',
));
@@ -873,7 +931,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
];
$oManagerMock->method('getValue')->willReturnMap($getValueMap);
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'd3GetShopCompatibilityAdapterHandler',
'd3GetModule',
@@ -903,7 +961,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canGetTemplateDir4OrderManagerAdmin()
{
- /** @var Config|PHPUnit_Framework_MockObject_MockObject $oConfigMock */
+ /** @var Config|MockObject $oConfigMock */
$oConfigMock = $this->getMock(Config::class, array(
'getTemplateDir',
));
@@ -911,19 +969,19 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$this->isTrue()
)->willReturn('returnValue');
- /** @var d3str|PHPUnit_Framework_MockObject_MockObject $oD3StrMock */
+ /** @var d3str|MockObject $oD3StrMock */
$oD3StrMock = $this->getMock(d3str::class, array(
'untrailingslashit',
));
$oD3StrMock->method('untrailingslashit')->willReturn('returnValue');
- /** @var d3ShopCompatibilityAdapterHandler|PHPUnit_Framework_MockObject_MockObject $oShopCompatHandlerMock */
+ /** @var d3ShopCompatibilityAdapterHandler|MockObject $oShopCompatHandlerMock */
$oShopCompatHandlerMock = $this->getMock(d3ShopCompatibilityAdapterHandler::class, array(
'call',
));
$oShopCompatHandlerMock->expects($this->never())->method('call')->willReturn('fullPath');
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getValue',
));
@@ -933,7 +991,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
];
$oManagerMock->method('getValue')->willReturnMap($getValueMap);
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'd3GetShopCompatibilityAdapterHandler',
'd3GetModule',
@@ -963,7 +1021,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canGetTemplateDir4OrderManagerFrontend()
{
- /** @var Config|PHPUnit_Framework_MockObject_MockObject $oConfigMock */
+ /** @var Config|MockObject $oConfigMock */
$oConfigMock = $this->getMock(Config::class, array(
'getTemplateDir',
));
@@ -971,19 +1029,19 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$this->isFalse()
)->willReturn('returnValue');
- /** @var d3str|PHPUnit_Framework_MockObject_MockObject $oD3StrMock */
+ /** @var d3str|MockObject $oD3StrMock */
$oD3StrMock = $this->getMock(d3str::class, array(
'untrailingslashit',
));
$oD3StrMock->method('untrailingslashit')->willReturn('returnValue');
- /** @var d3ShopCompatibilityAdapterHandler|PHPUnit_Framework_MockObject_MockObject $oShopCompatHandlerMock */
+ /** @var d3ShopCompatibilityAdapterHandler|MockObject $oShopCompatHandlerMock */
$oShopCompatHandlerMock = $this->getMock(d3ShopCompatibilityAdapterHandler::class, array(
'call',
));
$oShopCompatHandlerMock->expects($this->never())->method('call')->willReturn('fullPath');
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getValue',
));
@@ -993,7 +1051,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
];
$oManagerMock->method('getValue')->willReturnMap($getValueMap);
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'd3GetShopCompatibilityAdapterHandler',
'd3GetModule',
@@ -1121,7 +1179,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$currLangId = 2;
$orderLangId = 3;
- /** @var Order|PHPUnit_Framework_MockObject_MockObject $oOrderMock */
+ /** @var Order|MockObject $oOrderMock */
$oOrderMock = $this->getMock(Order::class, array(
'getFieldData',
));
@@ -1130,7 +1188,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
];
$oOrderMock->method('getFieldData')->willReturnMap($getFieldDataMap);
- /** @var Language|PHPUnit_Framework_MockObject_MockObject $oLangMock */
+ /** @var Language|MockObject $oLangMock */
$oLangMock = $this->getMock(Language::class, array(
'getTplLanguage',
'setTplLanguage',
@@ -1140,13 +1198,13 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
->withConsecutive([$orderLangId], [$currLangId])->willReturn(true);
// can't use a mock of UtilsView, because extension issue
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oUtilsViewMock */
+ /** @var stdClass|MockObject $oUtilsViewMock */
$oUtilsViewMock = $this->getMock(stdClass::class, array(
'parseThroughSmarty',
));
$oUtilsViewMock->expects($this->never())->method('parseThroughSmarty')->willReturn(true);
- /** @var Content|PHPUnit_Framework_MockObject_MockObject $oContentMock */
+ /** @var Content|MockObject $oContentMock */
$oContentMock = $this->getMock(Content::class, array(
'setLanguage',
'load',
@@ -1158,13 +1216,13 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oContentMock->method('getFieldData')->willReturn(true);
$oContentMock->method('getId')->willReturn(true);
- /** @var Smarty|PHPUnit_Framework_MockObject_MockObject $oSmartyMock */
+ /** @var Smarty|MockObject $oSmartyMock */
$oSmartyMock = $this->getMock(Smarty::class, array(
'fetch',
));
$oSmartyMock->expects($this->never())->method('fetch')->willReturn('smartyContent');
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getEditedValues',
'getValue',
@@ -1184,7 +1242,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oManagerMock->method('getValue')->willReturnMap($getValueMap);
$oManagerMock->method('getCurrentItem')->willReturn($oOrderMock);
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'd3HasOrderManagerEditorMailContent',
'd3GetLang',
@@ -1232,7 +1290,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$currLangId = 2;
$orderLangId = 3;
- /** @var Order|PHPUnit_Framework_MockObject_MockObject $oOrderMock */
+ /** @var Order|MockObject $oOrderMock */
$oOrderMock = $this->getMock(Order::class, array(
'getFieldData',
));
@@ -1241,7 +1299,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
];
$oOrderMock->method('getFieldData')->willReturnMap($getFieldDataMap);
- /** @var Language|PHPUnit_Framework_MockObject_MockObject $oLangMock */
+ /** @var Language|MockObject $oLangMock */
$oLangMock = $this->getMock(Language::class, array(
'getTplLanguage',
'setTplLanguage',
@@ -1251,13 +1309,13 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
->withConsecutive([$orderLangId], [$currLangId])->willReturn(true);
// can't use a mock of UtilsView, because extension issue
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oUtilsViewMock */
+ /** @var stdClass|MockObject $oUtilsViewMock */
$oUtilsViewMock = $this->getMock(stdClass::class, array(
'parseThroughSmarty',
));
$oUtilsViewMock->expects($this->never())->method('parseThroughSmarty')->willReturn(true);
- /** @var Content|PHPUnit_Framework_MockObject_MockObject $oContentMock */
+ /** @var Content|MockObject $oContentMock */
$oContentMock = $this->getMock(Content::class, array(
'setLanguage',
'load',
@@ -1269,13 +1327,13 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oContentMock->method('getFieldData')->willReturn(true);
$oContentMock->method('getId')->willReturn(true);
- /** @var Smarty|PHPUnit_Framework_MockObject_MockObject $oSmartyMock */
+ /** @var Smarty|MockObject $oSmartyMock */
$oSmartyMock = $this->getMock(Smarty::class, array(
'fetch',
));
$oSmartyMock->expects($this->never())->method('fetch')->willReturn('smartyContent');
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getEditedValues',
'getValue',
@@ -1296,7 +1354,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oManagerMock->method('getValue')->willReturnMap($getValueMap);
$oManagerMock->method('getCurrentItem')->willReturn($oOrderMock);
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'd3HasOrderManagerEditorMailContent',
'd3GetLang',
@@ -1344,7 +1402,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$currLangId = 2;
$orderLangId = 3;
- /** @var Order|PHPUnit_Framework_MockObject_MockObject $oOrderMock */
+ /** @var Order|MockObject $oOrderMock */
$oOrderMock = $this->getMock(Order::class, array(
'getFieldData',
));
@@ -1353,7 +1411,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
];
$oOrderMock->method('getFieldData')->willReturnMap($getFieldDataMap);
- /** @var Language|PHPUnit_Framework_MockObject_MockObject $oLangMock */
+ /** @var Language|MockObject $oLangMock */
$oLangMock = $this->getMock(Language::class, array(
'getTplLanguage',
'setTplLanguage',
@@ -1363,13 +1421,13 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
->withConsecutive([$orderLangId], [$currLangId])->willReturn(true);
// can't use a mock of UtilsView, because extension issue
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oUtilsViewMock */
+ /** @var stdClass|MockObject $oUtilsViewMock */
$oUtilsViewMock = $this->getMock(stdClass::class, array(
'parseThroughSmarty',
));
$oUtilsViewMock->expects($this->exactly(2))->method('parseThroughSmarty')->willReturn('smartyContent');
- /** @var Content|PHPUnit_Framework_MockObject_MockObject $oContentMock */
+ /** @var Content|MockObject $oContentMock */
$oContentMock = $this->getMock(Content::class, array(
'setLanguage',
'load',
@@ -1381,13 +1439,13 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oContentMock->method('getFieldData')->willReturn('fieldData');
$oContentMock->method('getId')->willReturn(true);
- /** @var Smarty|PHPUnit_Framework_MockObject_MockObject $oSmartyMock */
+ /** @var Smarty|MockObject $oSmartyMock */
$oSmartyMock = $this->getMock(Smarty::class, array(
'fetch',
));
$oSmartyMock->expects($this->never())->method('fetch')->willReturn('smartyContent');
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getEditedValues',
'getValue',
@@ -1407,7 +1465,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oManagerMock->method('getValue')->willReturnMap($getValueMap);
$oManagerMock->method('getCurrentItem')->willReturn($oOrderMock);
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'd3HasOrderManagerEditorMailContent',
'd3GetLang',
@@ -1453,7 +1511,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$currLangId = 2;
$orderLangId = 3;
- /** @var Order|PHPUnit_Framework_MockObject_MockObject $oOrderMock */
+ /** @var Order|MockObject $oOrderMock */
$oOrderMock = $this->getMock(Order::class, array(
'getFieldData',
));
@@ -1462,7 +1520,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
];
$oOrderMock->method('getFieldData')->willReturnMap($getFieldDataMap);
- /** @var Language|PHPUnit_Framework_MockObject_MockObject $oLangMock */
+ /** @var Language|MockObject $oLangMock */
$oLangMock = $this->getMock(Language::class, array(
'getTplLanguage',
'setTplLanguage',
@@ -1472,13 +1530,13 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
->withConsecutive([$orderLangId], [$currLangId])->willReturn(true);
// can't use a mock of UtilsView, because extension issue
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oUtilsViewMock */
+ /** @var stdClass|MockObject $oUtilsViewMock */
$oUtilsViewMock = $this->getMock(stdClass::class, array(
'parseThroughSmarty',
));
$oUtilsViewMock->expects($this->never())->method('parseThroughSmarty')->willReturn('smartyContent');
- /** @var Content|PHPUnit_Framework_MockObject_MockObject $oContentMock */
+ /** @var Content|MockObject $oContentMock */
$oContentMock = $this->getMock(Content::class, array(
'setLanguage',
'load',
@@ -1490,13 +1548,13 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oContentMock->method('getFieldData')->willReturn('fieldData');
$oContentMock->method('getId')->willReturn(true);
- /** @var Smarty|PHPUnit_Framework_MockObject_MockObject $oSmartyMock */
+ /** @var Smarty|MockObject $oSmartyMock */
$oSmartyMock = $this->getMock(Smarty::class, array(
'fetch',
));
$oSmartyMock->expects($this->exactly(3))->method('fetch')->willReturn('smartyFetchContent');
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getEditedValues',
'getValue',
@@ -1516,7 +1574,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oManagerMock->method('getValue')->willReturnMap($getValueMap);
$oManagerMock->method('getCurrentItem')->willReturn($oOrderMock);
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'd3HasOrderManagerEditorMailContent',
'd3GetLang',
@@ -1559,7 +1617,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function d3HasOrderManagerEditorMailContentPass()
{
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'isArrayEditorMailContent',
));
@@ -1590,7 +1648,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function d3HasOrderManagerEditorMailContentIsNoArray()
{
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'isArrayEditorMailContent',
));
@@ -1621,7 +1679,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function d3HasOrderManagerEditorMailContentIsNoSubject()
{
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'isArrayEditorMailContent',
));
@@ -1652,7 +1710,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function d3HasOrderManagerEditorMailContentIsNoHtml()
{
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'isArrayEditorMailContent',
));
@@ -1683,7 +1741,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function d3HasOrderManagerEditorMailContentIsNoPlain()
{
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'isArrayEditorMailContent',
));
@@ -1767,7 +1825,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canGeneratePlainContent()
{
- /** @var Html2Text|PHPUnit_Framework_MockObject_MockObject $oHtml2TextMock */
+ /** @var Html2Text|MockObject $oHtml2TextMock */
$oHtml2TextMock = $this->getMock(Html2Text::class, array(
'getText',
));
@@ -1793,13 +1851,13 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canSendOrderManagerMailToOwner()
{
- /** @var Shop|PHPUnit_Framework_MockObject_MockObject $oFieldMock */
+ /** @var Shop|MockObject $oFieldMock */
$oFieldMock = $this->getMock(Shop::class, array(
'getRawValue',
));
$oFieldMock->method('getRawValue')->willReturn('shopName');
- /** @var Shop|PHPUnit_Framework_MockObject_MockObject $oShopMock */
+ /** @var Shop|MockObject $oShopMock */
$oShopMock = $this->getMock(Shop::class, array(
'__get',
'getFieldData',
@@ -1807,7 +1865,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oShopMock->method('__get')->willReturn($oFieldMock);
$oShopMock->method('getFieldData')->willReturn('info@mail.com');
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'setRecipient',
'_d3HasOrderManagerCustomMailAddresses',
@@ -1845,7 +1903,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canSendOrderManagerMailToCustom()
{
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'_d3hasOrderManagerCustomMailAddresses',
'_d3getOrderManagerCustomMailAddressList',
@@ -1880,7 +1938,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canExtractCustomMailAddressList()
{
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'_d3getOrderManagerCustomRecipientList',
));
@@ -1908,7 +1966,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function hasOrderManagerCustomMailAddressesPass()
{
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'_d3hasOrderManagerCustomRecipient',
'_d3getOrderManagerCustomRecipientList',
@@ -1932,7 +1990,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function hasOrderManagerCustomMailAddressesNoCustRecipient()
{
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'_d3hasOrderManagerCustomRecipient',
'_d3getOrderManagerCustomRecipientList',
@@ -1956,7 +2014,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function hasOrderManagerCustomMailAddressesNoCustRecipientList()
{
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'_d3hasOrderManagerCustomRecipient',
'_d3getOrderManagerCustomRecipientList',
@@ -1995,13 +2053,13 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canD3sendOrderManagerMailToCustomerOrderUserHasId()
{
- /** @var Field|PHPUnit_Framework_MockObject_MockObject $oFieldMock */
+ /** @var Field|MockObject $oFieldMock */
$oFieldMock = $this->getMock(Field::class, array(
'getRawValue',
));
$oFieldMock->method('getRawValue')->willReturn('rawValue');
- /** @var Shop|PHPUnit_Framework_MockObject_MockObject $oShopMock */
+ /** @var Shop|MockObject $oShopMock */
$oShopMock = $this->getMock(Shop::class, array(
'getFieldData',
'__get',
@@ -2009,7 +2067,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oShopMock->method('getFieldData')->willReturn('fieldData');
$oShopMock->method('__get')->willReturn($oFieldMock);
- /** @var User|PHPUnit_Framework_MockObject_MockObject $oOrderUserMock */
+ /** @var User|MockObject $oOrderUserMock */
$oOrderUserMock = $this->getMock(User::class, array(
'getId',
'__get',
@@ -2019,7 +2077,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oOrderUserMock->expects($this->exactly(2))->method('__get')->willReturn($oFieldMock);
$oOrderUserMock->method('getFieldData')->willReturn('fieldData');
- /** @var Order|PHPUnit_Framework_MockObject_MockObject $oOrderMock */
+ /** @var Order|MockObject $oOrderMock */
$oOrderMock = $this->getMock(Order::class, array(
'getOrderUser',
'__get',
@@ -2029,19 +2087,19 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oOrderMock->expects($this->never())->method('__get')->willReturn($oFieldMock);
$oOrderMock->method('getFieldData')->willReturn('fieldData');
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getCurrentItem',
));
$oManagerMock->method('getCurrentItem')->willReturn($oOrderMock);
- /** @var Remark|PHPUnit_Framework_MockObject_MockObject $oRemarkMock */
+ /** @var Remark|MockObject $oRemarkMock */
$oRemarkMock = $this->getMock(Remark::class, array(
'assign',
));
$oRemarkMock->expects($this->once())->method('assign')->willReturn(true);
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'setRecipient',
'_d3hasOrderManagerOwnerRecipient',
@@ -2081,13 +2139,13 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canD3sendOrderManagerMailToCustomerNoOrderUser()
{
- /** @var Field|PHPUnit_Framework_MockObject_MockObject $oFieldMock */
+ /** @var Field|MockObject $oFieldMock */
$oFieldMock = $this->getMock(Field::class, array(
'getRawValue',
));
$oFieldMock->method('getRawValue')->willReturn('rawValue');
- /** @var Shop|PHPUnit_Framework_MockObject_MockObject $oShopMock */
+ /** @var Shop|MockObject $oShopMock */
$oShopMock = $this->getMock(Shop::class, array(
'getFieldData',
'__get',
@@ -2095,7 +2153,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oShopMock->method('getFieldData')->willReturn('fieldData');
$oShopMock->method('__get')->willReturn($oFieldMock);
- /** @var User|PHPUnit_Framework_MockObject_MockObject $oOrderUserMock */
+ /** @var User|MockObject $oOrderUserMock */
$oOrderUserMock = $this->getMock(User::class, array(
'getId',
'__get',
@@ -2105,7 +2163,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oOrderUserMock->expects($this->never())->method('__get')->willReturn($oFieldMock);
$oOrderUserMock->method('getFieldData')->willReturn('fieldData');
- /** @var Order|PHPUnit_Framework_MockObject_MockObject $oOrderMock */
+ /** @var Order|MockObject $oOrderMock */
$oOrderMock = $this->getMock(Order::class, array(
'getOrderUser',
'__get',
@@ -2115,19 +2173,19 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oOrderMock->expects($this->exactly(2))->method('__get')->willReturn($oFieldMock);
$oOrderMock->method('getFieldData')->willReturn('fieldData');
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getCurrentItem',
));
$oManagerMock->method('getCurrentItem')->willReturn($oOrderMock);
- /** @var Remark|PHPUnit_Framework_MockObject_MockObject $oRemarkMock */
+ /** @var Remark|MockObject $oRemarkMock */
$oRemarkMock = $this->getMock(Remark::class, array(
'assign',
));
$oRemarkMock->expects($this->once())->method('assign')->willReturn(true);
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'setRecipient',
'_d3hasOrderManagerOwnerRecipient',
@@ -2167,7 +2225,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function d3GetPdfHandlerReturnsRightInstance()
{
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getCurrentItem',
));
@@ -2187,11 +2245,47 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
* @test
* @throws ReflectionException
*/
- public function canAddOrderManagerPdfAttachmentInvoice()
+ public function _d3AddOrderManagerPdfAttachmentPass()
{
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
+ $oManagerMock = $this->getMock(d3ordermanager::class, [], [], '', false);
+
+ /** @var d3ordermanager_pdfhandler|MockObject $oPdfHandlerMock */
+ $oPdfHandlerMock = $this->getMock(d3ordermanager_pdfhandler::class, [],
+ array($oManagerMock, d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class)));
+
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
+ $oModelMock = $this->getMock(Email::class, array(
+ 'd3GetPdfHandler',
+ 'addOXIDPdfAttachment',
+ 'addPdfDocumentsAttachment',
+ ));
+ $oModelMock->expects($this->once())->method('d3GetPdfHandler')->willReturn($oPdfHandlerMock);
+ $oModelMock->expects($this->once())->method('addOXIDPdfAttachment')->willReturn(true);
+ $oModelMock->expects($this->once())->method('addPdfDocumentsAttachment')->willReturn(true);
+
+ $this->_oModel = $oModelMock;
+
+ $this->callMethod(
+ $this->_oModel,
+ '_d3AddOrderManagerPdfAttachment',
+ [$oManagerMock]
+ );
+ }
+
+ /**
+ * @test
+ * @throws ReflectionException
+ */
+ public function canAddOrderManagerOxidPdfAttachmentInvoice()
+ {
+ /** @var Order|MockObject $oOrderMock */
+ $oOrderMock = $this->getMock(Order::class, [], [], '', false);
+
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getValue',
+ 'getCurrentItem',
));
$getValueMap = [
['blActionOrderGeneratePdf_status', true],
@@ -2200,36 +2294,35 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
['blActionOrderPdfTypeDelnote', false],
];
$oManagerMock->method('getValue')->willReturnMap($getValueMap);
+ $oManagerMock->method('getCurrentItem')->willReturn($oOrderMock);
- /** @var d3ordermanager_pdfhandler|PHPUnit_Framework_MockObject_MockObject $oPdfHandlerMock */
+ /** @var d3ordermanager_pdfhandler|MockObject $oPdfHandlerMock */
$oPdfHandlerMock = $this->getMock(d3ordermanager_pdfhandler::class, array(
- 'canGeneratePdf',
- 'createPdf',
- 'getPdfFileName',
- 'getPdfSaveDir',
+ 'canGenerateOxidPdf',
+ 'createOxidPdf',
+ 'getOxidPdfFileName',
+ 'getOxidPdfSaveDir',
), array($oManagerMock, d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class)));
- $oPdfHandlerMock->method('canGeneratePdf')->willReturn(true);
- $oPdfHandlerMock->expects($this->once())->method('createPdf')->with(
+ $oPdfHandlerMock->method('canGenerateOxidPdf')->willReturn(true);
+ $oPdfHandlerMock->expects($this->once())->method('createOxidPdf')->with(
$this->stringContains(d3ordermanager_conf::D3_ORDERMANAGER_PDFTYPE_INVOICE),
$this->anything()
)->willReturn(true);
- $oPdfHandlerMock->method('getPdfFileName')->willReturn(true);
- $oPdfHandlerMock->method('getPdfSaveDir')->willReturn(true);
+ $oPdfHandlerMock->method('getOxidPdfFileName')->willReturn(true);
+ $oPdfHandlerMock->method('getOxidPdfSaveDir')->willReturn(true);
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
- 'd3GetPdfHandler',
'addAttachment',
));
- $oModelMock->method('d3GetPdfHandler')->willReturn($oPdfHandlerMock);
$oModelMock->expects($this->once())->method('addAttachment')->willReturn(true);
$this->_oModel = $oModelMock;
$this->callMethod(
$this->_oModel,
- '_d3AddOrderManagerPdfAttachment',
- array($oManagerMock)
+ 'addOXIDPdfAttachment',
+ array($oManagerMock, $oPdfHandlerMock)
);
}
@@ -2237,11 +2330,15 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
* @test
* @throws ReflectionException
*/
- public function canAddOrderManagerPdfAttachmentDNote()
+ public function canAddOrderManagerOxidPdfAttachmentDNote()
{
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var Order|MockObject $oOrderMock */
+ $oOrderMock = $this->getMock(Order::class, [], [], '', false);
+
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getValue',
+ 'getCurrentItem',
));
$getValueMap = [
['blActionOrderGeneratePdf_status', true],
@@ -2250,36 +2347,114 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
['blActionOrderPdfTypeDelnote', true],
];
$oManagerMock->method('getValue')->willReturnMap($getValueMap);
+ $oManagerMock->method('getCurrentItem')->willReturn($oOrderMock);
- /** @var d3ordermanager_pdfhandler|PHPUnit_Framework_MockObject_MockObject $oPdfHandlerMock */
+ /** @var d3ordermanager_pdfhandler|MockObject $oPdfHandlerMock */
$oPdfHandlerMock = $this->getMock(d3ordermanager_pdfhandler::class, array(
- 'canGeneratePdf',
- 'createPdf',
- 'getPdfFileName',
- 'getPdfSaveDir',
+ 'canGenerateOxidPdf',
+ 'createOxidPdf',
+ 'getOxidPdfFileName',
+ 'getOxidPdfSaveDir',
), array($oManagerMock, d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class)));
- $oPdfHandlerMock->method('canGeneratePdf')->willReturn(true);
- $oPdfHandlerMock->expects($this->once())->method('createPdf')->with(
+ $oPdfHandlerMock->method('canGenerateOxidPdf')->willReturn(true);
+ $oPdfHandlerMock->expects($this->once())->method('createOxidPdf')->with(
$this->stringContains(d3ordermanager_conf::D3_ORDERMANAGER_PDFTYPE_DELIVERYNOTE),
$this->anything()
)->willReturn(true);
- $oPdfHandlerMock->method('getPdfFileName')->willReturn(true);
- $oPdfHandlerMock->method('getPdfSaveDir')->willReturn(true);
+ $oPdfHandlerMock->method('getOxidPdfFileName')->willReturn(true);
+ $oPdfHandlerMock->method('getOxidPdfSaveDir')->willReturn(true);
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
- 'd3GetPdfHandler',
'addAttachment',
));
- $oModelMock->method('d3GetPdfHandler')->willReturn($oPdfHandlerMock);
$oModelMock->expects($this->once())->method('addAttachment')->willReturn(true);
$this->_oModel = $oModelMock;
$this->callMethod(
$this->_oModel,
- '_d3AddOrderManagerPdfAttachment',
- array($oManagerMock)
+ 'addOXIDPdfAttachment',
+ array($oManagerMock, $oPdfHandlerMock)
+ );
+ }
+
+ /**
+ * @covers \D3\Ordermanager\Modules\Application\Model\d3_oxemail_ordermanager::_d3AddOrderManagerPdfAttachment
+ * @covers \D3\Ordermanager\Modules\Application\Model\d3_oxemail_ordermanager::addPdfDocumentsAttachment
+ * @test
+ * @throws ReflectionException
+ */
+ public function canAddOrderManagerPdfDocumentAttachment()
+ {
+ d3GetModCfgDIC()->set(d3ordermanager_pdfhandler::class.'.args.ordermanager', d3GetModCfgDIC()->get(d3ordermanager::class));
+ d3GetModCfgDIC()->set(d3ordermanager_pdfhandler::class.'.args.order', d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class));
+
+ /** @var d3ordermanager_pdfhandler $oPdfHandler */
+ $oPdfHandler = d3GetModCfgDIC()->get(d3ordermanager_pdfhandler::class);
+
+ if (false === $oPdfHandler->canGeneratePdfDocuments()) {
+ $this->markTestSkipped('no PDF documents module available');
+ return;
+ }
+
+ /** @var Order|MockObject $oOrderMock */
+ $oOrderMock = $this->getMock(Order::class, [], [], '', false);
+
+ /** @var invoicePdf|MockObject $oDocumentMock */
+ $oDocumentMock = $this->getMock(invoicePdf::class,
+ ['getFilename']
+ );
+ $oDocumentMock->method('getFilename')->willReturn('testFileName');
+
+ /** @var d3ordermanager_action_getpdfdocuments|MockObject $oActionMock */
+ $oActionMock = $this->getMock(d3ordermanager_action_getpdfdocuments::class,
+ ['getDocumentList', 'getOrder'],
+ [], '', false
+ );
+ $oActionMock->method('getDocumentList')->willReturn([$oDocumentMock]);
+ $oActionMock->method('getOrder')->willReturn(oxNew(Order::class));
+ d3GetModCfgDIC()->set(d3ordermanager_action_getpdfdocuments::class, $oActionMock);
+
+ /** @var d3ordermanager|MockObject $oManagerMock */
+ $oManagerMock = $this->getMock(d3ordermanager::class, array(
+ 'getValue',
+ 'getCurrentItem',
+ ));
+ $getValueMap = [
+ ['blActionOrderGetPdfDocument_status', true],
+ ['blActionOrderPdfDocumentSendAttach', true],
+ ['blActionOrderPdfDocumentType_invoice', true],
+ ['blActionOrderPdfDocumentType_delnote', false],
+ ];
+ $oManagerMock->method('getValue')->willReturnMap($getValueMap);
+ $oManagerMock->method('getCurrentItem')->willReturn($oOrderMock);
+
+ /** @var d3ordermanager_pdfhandler|MockObject $oPdfHandlerMock */
+ $oPdfHandlerMock = $this->getMock(d3ordermanager_pdfhandler::class, array(
+ 'canGeneratePdfDocuments',
+ 'createPdfDocument',
+ 'getOxidPdfSaveDir',
+ ), array($oManagerMock, d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class)));
+ $oPdfHandlerMock->method('canGeneratePdfDocuments')->willReturn(true);
+ $oPdfHandlerMock->expects($this->once())->method('createPdfDocument')->with(
+ $this->isInstanceOf(invoicePdf::class),
+ $this->anything()
+ )->willReturn(true);
+ $oPdfHandlerMock->method('getOxidPdfSaveDir')->willReturn(true);
+
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
+ $oModelMock = $this->getMock(Email::class, array(
+ 'addAttachment',
+ ));
+ $oModelMock->expects($this->once())->method('addAttachment')->willReturn(true);
+
+ $this->_oModel = $oModelMock;
+
+ $this->callMethod(
+ $this->_oModel,
+ 'addPdfDocumentsAttachment',
+ array($oManagerMock, $oPdfHandlerMock)
);
}
@@ -2289,13 +2464,13 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canSetOrderManagerReplyAddressWithReply()
{
- /** @var Field|PHPUnit_Framework_MockObject_MockObject $oFieldMock */
+ /** @var Field|MockObject $oFieldMock */
$oFieldMock = $this->getMock(Field::class, array(
'getRawValue',
));
$oFieldMock->method('getRawValue')->willReturn('rawValue');
- /** @var Shop|PHPUnit_Framework_MockObject_MockObject $oShopMock */
+ /** @var Shop|MockObject $oShopMock */
$oShopMock = $this->getMock(Shop::class, array(
'__get',
'getFieldData',
@@ -2303,7 +2478,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oShopMock->method('__get')->willReturn($oFieldMock);
$oShopMock->method('getFieldData')->willReturn('fieldData');
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getValue',
));
@@ -2312,7 +2487,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
];
$oManagerMock->method('getValue')->willReturnMap($getValueMap);
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'setFrom',
'setReplyTo',
@@ -2335,13 +2510,13 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canSetOrderManagerReplyAddressWithoutReply()
{
- /** @var Field|PHPUnit_Framework_MockObject_MockObject $oFieldMock */
+ /** @var Field|MockObject $oFieldMock */
$oFieldMock = $this->getMock(Field::class, array(
'getRawValue',
));
$oFieldMock->method('getRawValue')->willReturn('rawValue');
- /** @var Shop|PHPUnit_Framework_MockObject_MockObject $oShopMock */
+ /** @var Shop|MockObject $oShopMock */
$oShopMock = $this->getMock(Shop::class, array(
'__get',
'getFieldData',
@@ -2349,7 +2524,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oShopMock->method('__get')->willReturn($oFieldMock);
$oShopMock->method('getFieldData')->willReturn('fieldData');
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getValue',
));
@@ -2358,7 +2533,7 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
];
$oManagerMock->method('getValue')->willReturnMap($getValueMap);
- /** @var d3_oxemail_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxemail_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Email::class, array(
'setFrom',
'setReplyTo',
@@ -2384,4 +2559,35 @@ class d3_oxemail_ordermanagerTest extends d3OrdermanagerUnitTestCase
{
return null;
}
-}
\ No newline at end of file
+
+ /**
+ * @covers \D3\Ordermanager\Modules\Application\Model\d3_oxemail_ordermanager::d3getOrderManagerDIContainer
+ * @test
+ * @throws ReflectionException
+ */
+ public function getDIContainerHasRightInstance()
+ {
+ $this->assertInstanceOf(
+ ContainerInterface::class,
+ $this->callMethod(
+ $this->_oModel,
+ 'd3getOrderManagerDIContainer'
+ )
+ );
+ }
+
+ /**
+ * @covers \D3\Ordermanager\Modules\Application\Model\d3_oxemail_ordermanager::throwUnequalContentException
+ * @test
+ * @throws ReflectionException
+ */
+ public function throwUnequalContentExceptionHasRightInstance()
+ {
+ $this->setExpectedException(d3ordermanager_templaterendererExceptionInterface::class);
+
+ $this->callMethod(
+ $this->_oModel,
+ 'throwUnequalContentException'
+ );
+ }
+}
diff --git a/src/tests/unit/Modules/Application/Model/d3_oxorder_ordermanagerTest.php b/src/tests/unit/Modules/Application/Model/d3_oxorder_ordermanagerTest.php
index 1972f504..e4168692 100644
--- a/src/tests/unit/Modules/Application/Model/d3_oxorder_ordermanagerTest.php
+++ b/src/tests/unit/Modules/Application/Model/d3_oxorder_ordermanagerTest.php
@@ -16,11 +16,16 @@
namespace D3\Ordermanager\Tests\unit\Modules\Application\Model;
+use D3\Ordermanager\Application\Model\Actions\d3ordermanager_action_moveordertofolder;
use D3\Ordermanager\Application\Model\d3ordermanager;
use D3\Ordermanager\Application\Model\d3ordermanager_conf;
+use D3\Ordermanager\Application\Model\d3ordermanager_configurationcheck;
use D3\Ordermanager\Application\Model\d3ordermanager_execute;
use D3\Ordermanager\Application\Model\d3ordermanager_pdfhandler;
use D3\Ordermanager\Application\Model\d3ordermanagerlist;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_actionException;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
+use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_smartyException;
use D3\Ordermanager\Modules\Application\Model\d3_oxorder_ordermanager;
use D3\Ordermanager\tests\unit\d3OrdermanagerUnitTestCase;
use Doctrine\DBAL\DBALException;
@@ -37,7 +42,9 @@ use OxidEsales\Eshop\Core\Model\BaseModel;
use OxidEsales\Eshop\Core\Model\ListModel;
use OxidEsales\Eshop\Core\Module\Module;
use OxidEsales\Eshop\Core\Module\ModuleInstaller;
-use PHPUnit_Framework_MockObject_MockObject;
+use OxidEsales\Eshop\Core\Registry;
+use OxidEsales\Eshop\Core\UtilsView;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
use ReflectionException;
use stdClass;
@@ -142,13 +149,13 @@ class d3_oxorder_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canGetOrderBasket4OrderManagerWithStornoArticlesNotEmptyList()
{
- /** @var Voucher|PHPUnit_Framework_MockObject_MockObject $oVoucherMock */
+ /** @var Voucher|MockObject $oVoucherMock */
$oVoucherMock = $this->getMock(Voucher::class, array(
'load',
));
$oVoucherMock->expects($this->exactly(2))->method('load')->willReturn(true);
- /** @var ListModel|PHPUnit_Framework_MockObject_MockObject $oOrderArticleMock */
+ /** @var ListModel|MockObject $oOrderArticleMock */
$oOrderArticleMock = $this->getMock(ListModel::class, array(
'count',
));
@@ -161,7 +168,7 @@ class d3_oxorder_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oOrderArticleMock->offsetSet('itemNo4', $oBaseModel);
$oOrderArticleMock->offsetSet('itemNo5', $oBaseModel);
- /** @var Basket|PHPUnit_Framework_MockObject_MockObject $oBasketMock */
+ /** @var Basket|MockObject $oBasketMock */
$oBasketMock = $this->getMock(Basket::class, array(
'addOrderArticleToBasket4OrderManager',
'calculateBasket4OrderManager',
@@ -174,14 +181,14 @@ class d3_oxorder_ordermanagerTest extends d3OrdermanagerUnitTestCase
'voucherNo2' => 'voucherNo2'
));
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getValue',
));
$getValueMap = [['blGetStornoArticles', true]];
$oManagerMock->method('getValue')->willReturnMap($getValueMap);
- /** @var d3_oxorder_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxorder_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Order::class, array(
'reloadDelivery',
'reloadDiscount',
@@ -215,13 +222,13 @@ class d3_oxorder_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canGetOrderBasket4OrderManagerWithoutStornoArticlesNotEmptyList()
{
- /** @var Voucher|PHPUnit_Framework_MockObject_MockObject $oVoucherMock */
+ /** @var Voucher|MockObject $oVoucherMock */
$oVoucherMock = $this->getMock(Voucher::class, array(
'load',
));
$oVoucherMock->expects($this->exactly(2))->method('load')->willReturn(true);
- /** @var ListModel|PHPUnit_Framework_MockObject_MockObject $oOrderArticleMock */
+ /** @var ListModel|MockObject $oOrderArticleMock */
$oOrderArticleMock = $this->getMock(ListModel::class, array(
'count',
));
@@ -234,7 +241,7 @@ class d3_oxorder_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oOrderArticleMock->offsetSet('itemNo4', $oBaseModel);
$oOrderArticleMock->offsetSet('itemNo5', $oBaseModel);
- /** @var Basket|PHPUnit_Framework_MockObject_MockObject $oBasketMock */
+ /** @var Basket|MockObject $oBasketMock */
$oBasketMock = $this->getMock(Basket::class, array(
'addOrderArticleToBasket4OrderManager',
'calculateBasket4OrderManager',
@@ -247,14 +254,14 @@ class d3_oxorder_ordermanagerTest extends d3OrdermanagerUnitTestCase
'voucherNo2' => 'voucherNo2'
));
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getValue',
));
$getValueMap = [['blGetStornoArticles', false]];
$oManagerMock->method('getValue')->willReturnMap($getValueMap);
- /** @var d3_oxorder_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxorder_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Order::class, array(
'reloadDelivery',
'reloadDiscount',
@@ -288,19 +295,19 @@ class d3_oxorder_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canGetOrderBasket4OrderManagerEmptyList()
{
- /** @var Voucher|PHPUnit_Framework_MockObject_MockObject $oVoucherMock */
+ /** @var Voucher|MockObject $oVoucherMock */
$oVoucherMock = $this->getMock(Voucher::class, array(
'load',
));
$oVoucherMock->expects($this->exactly(2))->method('load')->willReturn(true);
- /** @var ListModel|PHPUnit_Framework_MockObject_MockObject $oOrderArticleMock */
+ /** @var ListModel|MockObject $oOrderArticleMock */
$oOrderArticleMock = $this->getMock(ListModel::class, array(
'count',
));
$oOrderArticleMock->method('count')->willReturn(0);
- /** @var Basket|PHPUnit_Framework_MockObject_MockObject $oBasketMock */
+ /** @var Basket|MockObject $oBasketMock */
$oBasketMock = $this->getMock(Basket::class, array(
'addOrderArticleToBasket4OrderManager',
'calculateBasket4OrderManager',
@@ -313,14 +320,14 @@ class d3_oxorder_ordermanagerTest extends d3OrdermanagerUnitTestCase
'voucherNo2' => 'voucherNo2'
));
- /** @var d3ordermanager|PHPUnit_Framework_MockObject_MockObject $oManagerMock */
+ /** @var d3ordermanager|MockObject $oManagerMock */
$oManagerMock = $this->getMock(d3ordermanager::class, array(
'getValue',
));
$getValueMap = [['blGetStornoArticles', false]];
$oManagerMock->method('getValue')->willReturnMap($getValueMap);
- /** @var d3_oxorder_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxorder_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Order::class, array(
'reloadDelivery',
'reloadDiscount',
@@ -413,23 +420,26 @@ class d3_oxorder_ordermanagerTest extends d3OrdermanagerUnitTestCase
$this->markTestSkipped('unavailable invoicePdf class');
}
- /** @var invoicepdfPDF|PHPUnit_Framework_MockObject_MockObject $oInvoicePdfMock */
- $oInvoicePdfMock = $this->getMock(invoicepdfPDF::class, array(
- 'setPrintHeader',
- 'open',
- 'output',
- ));
+ /** @var InvoicepdfPDF|MockObject $oInvoicePdfMock */
+ $oInvoicePdfMock = $this->getMockBuilder(InvoicepdfPDF::class)
+ ->setMethods([
+ 'setPrintHeader',
+ 'open',
+ 'output'
+ ])
+ ->disableOriginalConstructor()
+ ->getMock();
$oInvoicePdfMock->method('setPrintHeader')->willReturn(true);
$oInvoicePdfMock->method('open')->willReturn(true);
$oInvoicePdfMock->expects($this->once())->method('output')->willReturn($expected);
- /** @var d3ordermanager_pdfhandler|PHPUnit_Framework_MockObject_MockObject $oPdfHandlerMock */
+ /** @var d3ordermanager_pdfhandler|MockObject $oPdfHandlerMock */
$oPdfHandlerMock = $this->getMock(d3ordermanager_pdfhandler::class, array(
- 'canGeneratePdf',
+ 'canGenerateOxidPdf',
), array(d3GetModCfgDIC()->get(d3ordermanager::class), d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class)));
- $oPdfHandlerMock->method('canGeneratePdf')->willReturn(true);
+ $oPdfHandlerMock->method('canGenerateOxidPdf')->willReturn(true);
- /** @var d3_oxorder_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxorder_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Order::class, array(
'getFieldData',
'_setFieldData',
@@ -475,23 +485,26 @@ class d3_oxorder_ordermanagerTest extends d3OrdermanagerUnitTestCase
$this->markTestSkipped('unavailable invoicePdf class');
}
- /** @var invoicepdfPDF|PHPUnit_Framework_MockObject_MockObject $oInvoicePdfMock */
- $oInvoicePdfMock = $this->getMock(invoicepdfPDF::class, array(
- 'setPrintHeader',
- 'open',
- 'output',
- ));
+ /** @var InvoicepdfPDF|MockObject $oInvoicePdfMock */
+ $oInvoicePdfMock = $this->getMockBuilder(InvoicepdfPDF::class)
+ ->setMethods([
+ 'setPrintHeader',
+ 'open',
+ 'output'
+ ])
+ ->disableOriginalConstructor()
+ ->getMock();
$oInvoicePdfMock->method('setPrintHeader')->willReturn(true);
$oInvoicePdfMock->method('open')->willReturn(true);
$oInvoicePdfMock->expects($this->once())->method('output')->willReturn($expected);
- /** @var d3ordermanager_pdfhandler|PHPUnit_Framework_MockObject_MockObject $oPdfHandlerMock */
+ /** @var d3ordermanager_pdfhandler|MockObject $oPdfHandlerMock */
$oPdfHandlerMock = $this->getMock(d3ordermanager_pdfhandler::class, array(
- 'canGeneratePdf',
+ 'canGenerateOxidPdf',
), array(d3GetModCfgDIC()->get(d3ordermanager::class), d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class)));
- $oPdfHandlerMock->method('canGeneratePdf')->willReturn(true);
+ $oPdfHandlerMock->method('canGenerateOxidPdf')->willReturn(true);
- /** @var d3_oxorder_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxorder_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Order::class, array(
'getFieldData',
'_setFieldData',
@@ -534,7 +547,7 @@ class d3_oxorder_ordermanagerTest extends d3OrdermanagerUnitTestCase
$expected = 'returnValue';
// use stdClass instead of InvoicepdfPDF, because of possible inactive pdf module
- /** @var stdClass|PHPUnit_Framework_MockObject_MockObject $oInvoicePdfMock */
+ /** @var stdClass|MockObject $oInvoicePdfMock */
$oInvoicePdfMock = $this->getMock(stdClass::class, array(
'setPrintHeader',
'open',
@@ -544,13 +557,13 @@ class d3_oxorder_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oInvoicePdfMock->method('open')->willReturn(true);
$oInvoicePdfMock->expects($this->never())->method('output')->willReturn($expected);
- /** @var d3ordermanager_pdfhandler|PHPUnit_Framework_MockObject_MockObject $oPdfHandlerMock */
+ /** @var d3ordermanager_pdfhandler|MockObject $oPdfHandlerMock */
$oPdfHandlerMock = $this->getMock(d3ordermanager_pdfhandler::class, array(
- 'canGeneratePdf',
+ 'canGenerateOxidPdf',
), array(d3GetModCfgDIC()->get(d3ordermanager::class), d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class)));
- $oPdfHandlerMock->method('canGeneratePdf')->willReturn(false);
+ $oPdfHandlerMock->method('canGenerateOxidPdf')->willReturn(false);
- /** @var d3_oxorder_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxorder_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Order::class, array(
'getFieldData',
'_setFieldData',
@@ -612,11 +625,145 @@ class d3_oxorder_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oManagerExecuteMock->expects($this->exactly(2))->method('orderMeetsConditions')->willReturn(true);
$oManagerExecuteMock->expects($this->exactly(2))->method('exec4order')->willReturn(true);
- /** @var d3_oxorder_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
- $oModelMock = $this->getMock(Order::class, array(
- 'getManagerExecute'
- ));
- $oModelMock->method('getManagerExecute')->willReturn($oManagerExecuteMock);
+ /** @var d3_oxorder_ordermanager|MockObject $oModelMock */
+ $oModelMock = $this->getMockBuilder(Order::class)
+ ->setMethods(['d3OrdermanagerGetManagerExecute'])
+ ->getMock();
+ $oModelMock->method('d3OrdermanagerGetManagerExecute')->willReturn($oManagerExecuteMock);
+
+ $this->_oModel = $oModelMock;
+
+ $this->callMethod(
+ $this->_oModel,
+ 'finalizeOrder',
+ array(
+ oxNew(Basket::class),
+ oxNew(User::class)
+ )
+ );
+ }
+
+ /**
+ * @covers \D3\Ordermanager\Modules\Application\Model\d3_oxorder_ordermanager::finalizeOrder
+ * @test
+ * @throws ReflectionException
+ * @dataProvider cannotSaveDataProvider
+ */
+ public function finalizeOrderCantExecuteUnvalidConfiguration($isAdmin)
+ {
+ /** @var d3ordermanagerlist|MockObject $oOrderManagerListMock */
+ $oOrderManagerListMock = $this->getMockBuilder(d3ordermanagerlist::class)
+ ->setMethods(['d3GetOrderFinishTriggeredManagerTasks'])
+ ->getMock();
+ $oOrderManagerListMock->method('d3GetOrderFinishTriggeredManagerTasks')->willReturn(
+ [
+ oxNew(d3ordermanager::class),
+ oxNew(d3ordermanager::class)
+ ]
+ );
+
+ d3GetModCfgDIC()->set(d3ordermanagerlist::class, $oOrderManagerListMock);
+
+ /** @var d3ordermanager_requirementException|MockObject $exception */
+ $exception = $this->getMockBuilder(d3ordermanager_requirementException::class)
+ ->disableOriginalConstructor()
+ ->setMethods(['debugOut'])
+ ->getMock();
+ $exception->expects($this->exactly(2))->method('debugOut')->willReturn(true);
+
+ /** @var d3ordermanager_execute|MockObject $oManagerExecuteMock */
+ $oManagerExecuteMock = $this->getMockBuilder(d3ordermanager_execute::class)
+ ->setMethods([
+ 'orderMeetsConditions',
+ 'exec4order'
+ ])
+ ->setConstructorArgs([oxNew(d3ordermanager::class)])
+ ->getMock();
+ $oManagerExecuteMock->expects($this->exactly(2))->method('orderMeetsConditions')->willThrowException($exception);
+ $oManagerExecuteMock->expects($this->never())->method('exec4order')->willReturn(true);
+
+ /** @var UtilsView|MockObject $utilsViewMock */
+ $utilsViewMock = $this->getMockBuilder(UtilsView::class)
+ ->setMethods(['addErrorToDisplay'])
+ ->getMock();
+ $utilsViewMock->expects($isAdmin ? $this->exactly(2) : $this->never())
+ ->method('addErrorToDisplay')->willReturn(true);
+
+ d3GetModCfgDIC()->set('d3ox.ordermanager.'.UtilsView::class, $utilsViewMock);
+
+ /** @var d3_oxorder_ordermanager|MockObject $oModelMock */
+ $oModelMock = $this->getMockBuilder(Order::class)
+ ->setMethods(['d3OrdermanagerGetManagerExecute', 'isAdmin'])
+ ->getMock();
+ $oModelMock->method('d3OrdermanagerGetManagerExecute')->willReturn($oManagerExecuteMock);
+ $oModelMock->method('isAdmin')->willReturn($isAdmin);
+
+ $this->_oModel = $oModelMock;
+
+ $this->callMethod(
+ $this->_oModel,
+ 'finalizeOrder',
+ array(
+ oxNew(Basket::class),
+ oxNew(User::class)
+ )
+ );
+ }
+
+ /**
+ * @covers \D3\Ordermanager\Modules\Application\Model\d3_oxorder_ordermanager::finalizeOrder
+ * @test
+ * @throws ReflectionException
+ * @dataProvider cannotSaveDataProvider
+ */
+ public function finalizeOrderCantExecuteFetchingError($isAdmin)
+ {
+ /** @var d3ordermanagerlist|MockObject $oOrderManagerListMock */
+ $oOrderManagerListMock = $this->getMockBuilder(d3ordermanagerlist::class)
+ ->setMethods(['d3GetOrderFinishTriggeredManagerTasks'])
+ ->getMock();
+ $oOrderManagerListMock->method('d3GetOrderFinishTriggeredManagerTasks')->willReturn(
+ [
+ oxNew(d3ordermanager::class),
+ oxNew(d3ordermanager::class)
+ ]
+ );
+
+ d3GetModCfgDIC()->set(d3ordermanagerlist::class, $oOrderManagerListMock);
+
+ /** @var d3ordermanager_smartyException|MockObject $exception */
+ $exception = $this->getMockBuilder(d3ordermanager_smartyException::class)
+ ->disableOriginalConstructor()
+ ->setMethods(['debugOut'])
+ ->getMock();
+ $exception->expects($this->exactly(2))->method('debugOut')->willReturn(true);
+
+ /** @var d3ordermanager_execute|MockObject $oManagerExecuteMock */
+ $oManagerExecuteMock = $this->getMockBuilder(d3ordermanager_execute::class)
+ ->setMethods([
+ 'orderMeetsConditions',
+ 'exec4order'
+ ])
+ ->setConstructorArgs([oxNew(d3ordermanager::class)])
+ ->getMock();
+ $oManagerExecuteMock->expects($this->exactly(2))->method('orderMeetsConditions')->willThrowException($exception);
+ $oManagerExecuteMock->expects($this->never())->method('exec4order')->willReturn(true);
+
+ /** @var UtilsView|MockObject $utilsViewMock */
+ $utilsViewMock = $this->getMockBuilder(UtilsView::class)
+ ->setMethods(['addErrorToDisplay'])
+ ->getMock();
+ $utilsViewMock->expects($isAdmin ? $this->exactly(2) : $this->never())
+ ->method('addErrorToDisplay')->willReturn(true);
+
+ d3GetModCfgDIC()->set('d3ox.ordermanager.'.UtilsView::class, $utilsViewMock);
+
+ /** @var d3_oxorder_ordermanager|MockObject $oModelMock */
+ $oModelMock = $this->getMockBuilder(Order::class)
+ ->setMethods(['d3OrdermanagerGetManagerExecute', 'isAdmin'])
+ ->getMock();
+ $oModelMock->method('d3OrdermanagerGetManagerExecute')->willReturn($oManagerExecuteMock);
+ $oModelMock->method('isAdmin')->willReturn($isAdmin);
$this->_oModel = $oModelMock;
@@ -659,11 +806,157 @@ class d3_oxorder_ordermanagerTest extends d3OrdermanagerUnitTestCase
$oManagerExecuteMock->expects($this->exactly(2))->method('orderMeetsConditions')->willReturn(true);
$oManagerExecuteMock->expects($this->exactly(2))->method('exec4order')->willReturn(true);
- /** @var d3_oxorder_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
- $oModelMock = $this->getMock(Order::class, array(
- 'getManagerExecute'
- ));
- $oModelMock->method('getManagerExecute')->willReturn($oManagerExecuteMock);
+ /** @var d3_oxorder_ordermanager|MockObject $oModelMock */
+ $oModelMock = $this->getMockBuilder(Order::class)
+ ->setMethods(['d3OrdermanagerGetManagerExecute'])
+ ->getMock();
+ $oModelMock->method('d3OrdermanagerGetManagerExecute')->willReturn($oManagerExecuteMock);
+ $orderId = Registry::getUtilsObject()->generateUId();
+ $oModelMock->setId($orderId);
+ $oModelMock->assign([
+ 'oxbillcompany' => __METHOD__
+ ]);
+
+ $this->_oModel = $oModelMock;
+
+ $this->callMethod(
+ $this->_oModel,
+ 'save'
+ );
+
+ $oModelMock->delete($orderId);
+ }
+
+ /**
+ * @covers \D3\Ordermanager\Modules\Application\Model\d3_oxorder_ordermanager::save
+ * @test
+ * @param $isAdmin
+ * @throws ReflectionException
+ * @dataProvider cannotSaveDataProvider
+ */
+ public function cannotSaveBecauseUnvalidConfiguration($isAdmin)
+ {
+ /** @var d3ordermanagerlist|MockObject $oOrderManagerListMock */
+ $oOrderManagerListMock = $this->getMockBuilder(d3ordermanagerlist::class)
+ ->setMethods(['d3GetOrderSaveTriggeredManagerTasks'])
+ ->getMock();
+ $oOrderManagerListMock->method('d3GetOrderSaveTriggeredManagerTasks')->willReturn(
+ [
+ oxNew(d3ordermanager::class),
+ oxNew(d3ordermanager::class)
+ ]
+ );
+
+ d3GetModCfgDIC()->set(d3ordermanagerlist::class, $oOrderManagerListMock);
+
+ /** @var d3ordermanager_requirementException|MockObject $exception */
+ $exception = $this->getMockBuilder(d3ordermanager_requirementException::class)
+ ->disableOriginalConstructor()
+ ->setMethods(['debugOut'])
+ ->getMock();
+ $exception->expects($this->exactly(2))->method('debugOut')->willReturn(true);
+
+ /** @var d3ordermanager_execute|MockObject $oManagerExecuteMock */
+ $oManagerExecuteMock = $this->getMockBuilder(d3ordermanager_execute::class)
+ ->setMethods([
+ 'orderMeetsConditions',
+ 'exec4order'
+ ])
+ ->setConstructorArgs([oxNew(d3ordermanager::class)])
+ ->getMock();
+ $oManagerExecuteMock->expects($this->exactly(2))->method('orderMeetsConditions')->willThrowException($exception);
+ $oManagerExecuteMock->expects($this->never())->method('exec4order')->willReturn(true);
+
+ /** @var UtilsView|MockObject $utilsViewMock */
+ $utilsViewMock = $this->getMockBuilder(UtilsView::class)
+ ->setMethods(['addErrorToDisplay'])
+ ->getMock();
+ $utilsViewMock->expects($isAdmin ? $this->exactly(2) : $this->never())
+ ->method('addErrorToDisplay')->willReturn(true);
+
+ d3GetModCfgDIC()->set('d3ox.ordermanager.'.UtilsView::class, $utilsViewMock);
+
+ /** @var d3_oxorder_ordermanager|MockObject $oModelMock */
+ $oModelMock = $this->getMockBuilder(Order::class)
+ ->setMethods(['d3OrdermanagerGetManagerExecute', 'isAdmin'])
+ ->getMock();
+ $oModelMock->method('d3OrdermanagerGetManagerExecute')->willReturn($oManagerExecuteMock);
+ $oModelMock->method('isAdmin')->willReturn($isAdmin);
+ $orderId = Registry::getUtilsObject()->generateUId();
+ $oModelMock->setId($orderId);
+ $oModelMock->assign([
+ 'oxbillcompany' => __METHOD__
+ ]);
+
+ $this->_oModel = $oModelMock;
+
+ $this->callMethod(
+ $this->_oModel,
+ 'save'
+ );
+
+ $oModelMock->delete($orderId);
+ }
+
+ /**
+ * @covers \D3\Ordermanager\Modules\Application\Model\d3_oxorder_ordermanager::save
+ * @test
+ * @throws ReflectionException
+ * @dataProvider cannotSaveDataProvider
+ */
+ public function cannotSaveBecauseFetchingError($isAdmin)
+ {
+ /** @var d3ordermanagerlist|MockObject $oOrderManagerListMock */
+ $oOrderManagerListMock = $this->getMockBuilder(d3ordermanagerlist::class)
+ ->setMethods(['d3GetOrderSaveTriggeredManagerTasks'])
+ ->getMock();
+ $oOrderManagerListMock->method('d3GetOrderSaveTriggeredManagerTasks')->willReturn(
+ [
+ oxNew(d3ordermanager::class),
+ oxNew(d3ordermanager::class)
+ ]
+ );
+
+ d3GetModCfgDIC()->set(d3ordermanagerlist::class, $oOrderManagerListMock);
+
+ /** @var d3ordermanager_smartyException|MockObject $exception */
+ $exception = $this->getMockBuilder(d3ordermanager_smartyException::class)
+ ->disableOriginalConstructor()
+ ->setMethods(['debugOut'])
+ ->getMock();
+ $exception->expects($this->exactly(2))->method('debugOut')->willReturn(true);
+
+ /** @var d3ordermanager_execute|MockObject $oManagerExecuteMock */
+ $oManagerExecuteMock = $this->getMockBuilder(d3ordermanager_execute::class)
+ ->setMethods([
+ 'orderMeetsConditions',
+ 'exec4order'
+ ])
+ ->setConstructorArgs([oxNew(d3ordermanager::class)])
+ ->getMock();
+ $oManagerExecuteMock->expects($this->exactly(2))->method('orderMeetsConditions')->willReturn(true);
+ $oManagerExecuteMock->expects($this->exactly(2))->method('exec4order')->willThrowException($exception);
+
+ /** @var UtilsView|MockObject $utilsViewMock */
+ $utilsViewMock = $this->getMockBuilder(UtilsView::class)
+ ->setMethods(['addErrorToDisplay'])
+ ->getMock();
+ $utilsViewMock->expects($isAdmin ? $this->exactly(2) : $this->never())
+ ->method('addErrorToDisplay')->willReturn(true);
+
+ d3GetModCfgDIC()->set('d3ox.ordermanager.'.UtilsView::class, $utilsViewMock);
+
+ /** @var d3_oxorder_ordermanager|MockObject $oModelMock */
+ $oModelMock = $this->getMockBuilder(Order::class)
+ ->setMethods(['d3OrdermanagerGetManagerExecute', 'isAdmin'])
+ ->getMock();
+ $oModelMock->method('d3OrdermanagerGetManagerExecute')->willReturn($oManagerExecuteMock);
+ $oModelMock->method('isAdmin')->willReturn($isAdmin);
+ $orderId = Registry::getUtilsObject()->generateUId();
+ $oModelMock->setId($orderId);
+ $oModelMock->assign([
+ 'oxbillcompany' => __METHOD__
+ ]);
$this->_oModel = $oModelMock;
@@ -673,11 +966,22 @@ class d3_oxorder_ordermanagerTest extends d3OrdermanagerUnitTestCase
);
}
+ /**
+ * @return array
+ */
+ public function cannotSaveDataProvider()
+ {
+ return [
+ 'is admin' => [true],
+ 'is frontend' => [false],
+ ];
+ }
+
/**
* @test
* @throws ReflectionException
*/
- public function canGetManagerExecute()
+ public function cand3OrdermanagerGetManagerExecute()
{
$oManager = d3GetModCfgDIC()->get(d3ordermanager::class);
@@ -685,7 +989,7 @@ class d3_oxorder_ordermanagerTest extends d3OrdermanagerUnitTestCase
d3ordermanager_execute::class,
$this->callMethod(
$this->_oModel,
- 'getManagerExecute',
+ 'd3OrdermanagerGetManagerExecute',
array(
$oManager
)
@@ -699,13 +1003,13 @@ class d3_oxorder_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canGeneratePdfBodyInvoice()
{
- if (false == class_exists('invoicepdfPDF')) {
+ if (false == class_exists('InvoicepdfPDF')) {
$this->markTestSkipped('unavailable invoicePdf class');
}
$oPDF = oxNew('invoicepdfPDF');
- /** @var d3_oxorder_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxorder_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Order::class, array(
'exportDeliveryNote',
'exportStandart',
@@ -731,13 +1035,13 @@ class d3_oxorder_ordermanagerTest extends d3OrdermanagerUnitTestCase
*/
public function canGeneratePdfBodyDNote()
{
- if (false == class_exists('invoicepdfPDF')) {
+ if (false == class_exists('InvoicepdfPDF')) {
$this->markTestSkipped('unavailable invoicePdf class');
}
$oPDF = oxNew('invoicepdfPDF');
- /** @var d3_oxorder_ordermanager|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var d3_oxorder_ordermanager|MockObject $oModelMock */
$oModelMock = $this->getMock(Order::class, array(
'exportDeliveryNote',
'exportStandart',
@@ -757,6 +1061,73 @@ class d3_oxorder_ordermanagerTest extends d3OrdermanagerUnitTestCase
);
}
+ /**
+ * @covers \D3\Ordermanager\Modules\Application\Model\d3_oxorder_ordermanager::d3OrderManagerCheckForConfigurationException
+ * @test
+ * @param $manuallyCondition
+ * @param $expectedCheck
+ * @param $throwExc
+ * @throws ReflectionException
+ * @dataProvider d3OrderManagerCheckForConfigurationExceptionDataProvider
+ */
+ public function d3OrderManagerCheckForConfigurationExceptionPass($manuallyCondition, $expectedCheck, $throwExc)
+ {
+ /** @var d3ordermanager|MockObject $oManagerMock */
+ $oManagerMock = $this->getMockBuilder(d3ordermanager::class)
+ ->setMethods(['getValue'])
+ ->getMock();
+ $getValueMap = [
+ ['blGetStornoArticles', false],
+ ['sManuallyExecMeetCondition', $manuallyCondition]
+ ];
+ $oManagerMock->method('getValue')->willReturnMap($getValueMap);
+
+ /** @var d3ordermanager_actionException $expectedExc */
+ d3GetModCfgDIC()->set(d3ordermanager_action_moveordertofolder::class.'.args.ordermanager', $oManagerMock);
+ d3GetModCfgDIC()->set(d3ordermanager_action_moveordertofolder::class.'.args.order', d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class));
+ d3GetModCfgDIC()->set(d3ordermanager_actionException::class.'.args.actionobject', d3GetModCfgDIC()->get(d3ordermanager_action_moveordertofolder::class));
+ $expectedExc = d3GetModCfgDIC()->get(d3ordermanager_actionException::class);
+
+ /** @var d3ordermanager_configurationcheck|MockObject $confCheckMock */
+ $confCheckMock = $this->getMockBuilder(d3ordermanager_configurationcheck::class)
+ ->disableOriginalConstructor()
+ ->setMethods(['checkThrowingExceptions'])
+ ->getMock();
+ $throwExc ?
+ $confCheckMock->expects($this->once())->method('checkThrowingExceptions')->willThrowException($expectedExc) :
+ $confCheckMock->expects($this->once())->method('checkThrowingExceptions')->willReturn(true);
+
+ d3GetModCfgDIC()->set(d3ordermanager_configurationcheck::class, $confCheckMock);
+
+ if ($throwExc) {
+ $this->setExpectedException(get_class($expectedExc));
+ }
+
+ $this->callMethod(
+ $this->_oModel,
+ 'd3OrderManagerCheckForConfigurationException',
+ [$oManagerMock]
+ );
+
+ $this->assertSame(
+ $expectedCheck,
+ d3GetModCfgDIC()->getParameter(d3ordermanager_configurationcheck::class.'.args.checktypes')
+ );
+ }
+
+ /**
+ * @return array[]
+ */
+ public function d3OrderManagerCheckForConfigurationExceptionDataProvider()
+ {
+ return [
+ 'requirements and actions throw exception' => [true, d3ordermanager_configurationcheck::REQUIREMENTS_AND_ACTIONS, true],
+ 'requirements and actions don\'t throw exception' => [true, d3ordermanager_configurationcheck::REQUIREMENTS_AND_ACTIONS, false],
+ 'actions only throw exception' => [false, d3ordermanager_configurationcheck::ACTIONS_ONLY, true],
+ 'actions only don\'t throw exception' => [false, d3ordermanager_configurationcheck::ACTIONS_ONLY, false],
+ ];
+ }
+
/**
* @param $sLicenseKey
* @param d3ordermanager $oManager
@@ -766,4 +1137,4 @@ class d3_oxorder_ordermanagerTest extends d3OrdermanagerUnitTestCase
{
return null;
}
-}
\ No newline at end of file
+}
diff --git a/src/tests/unit/Setup/d3ordermanager_updateTest.php b/src/tests/unit/Setup/d3ordermanager_updateTest.php
index 94199cee..ca29d650 100644
--- a/src/tests/unit/Setup/d3ordermanager_updateTest.php
+++ b/src/tests/unit/Setup/d3ordermanager_updateTest.php
@@ -16,8 +16,12 @@
namespace D3\Ordermanager\Tests\unit\Setup;
+use D3\ModCfg\Application\Model\Configuration\d3_cfg_mod;
use D3\ModCfg\Application\Model\d3bitmask;
use D3\ModCfg\Application\Model\d3database;
+use D3\ModCfg\Application\Model\d3str;
+use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
+use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\ModCfg\Application\Model\Installwizzard\d3installdbrecord;
use D3\Ordermanager\Application\Model\d3ordermanager;
use D3\Ordermanager\Setup\d3ordermanager_update;
@@ -29,6 +33,7 @@ use OxidEsales\Eshop\Core\Config;
use OxidEsales\Eshop\Core\Database\Adapter\DatabaseInterface;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
+use OxidEsales\Eshop\Core\Exception\StandardException;
use PHPUnit_Framework_MockObject_MockObject;
use ReflectionException;
use stdClass;
@@ -307,13 +312,18 @@ class d3ordermanager_updateTest extends d3OrdermanagerUnitTestCase
public function dbInterfaceExecuteThrowException()
{
- $oPDOException = oxNew(\PDOException::class);
- $oPDOException->errorInfo = array(
+ $pdoExceptionMock = $this->getMockBuilder(PDOException::class)
+ ->disableOriginalConstructor()
+ ->getMock();
+ $pdoExceptionMock->errorInfo = array(
1 => 'errorInfoNo1',
2 => 'errorInfoNo1',
);
- throw oxNew(PDOException::class, $oPDOException);
+ /** @var PDOException $pdoExc */
+ $pdoExc = oxNew(PDOException::class, $pdoExceptionMock);
+
+ throw $pdoExc;
}
/**
@@ -862,6 +872,163 @@ class d3ordermanager_updateTest extends d3OrdermanagerUnitTestCase
);
}
+ /**
+ * @covers \D3\Ordermanager\Setup\d3ordermanager_update::checkCronPasswordSet
+ * @test
+ * @param $testPW
+ * @param $expected
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws ReflectionException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ * @throws StandardException
+ * @dataProvider passwordTestDataProvider
+ */
+ public function canCheckCronPasswordSet($testPW, $expected)
+ {
+ /** @var d3_cfg_mod $set */
+ $set = d3GetModCfgDIC()->get('d3.ordermanager.modcfg');
+ $currPassword = $set->getValue('sCronPassword');
+ $set->setValue('sCronPassword', $testPW);
+ $set->saveNoLicenseRefresh();
+
+ $this->assertSame(
+ $expected,
+ $this->callMethod(
+ $this->_oModel,
+ 'checkCronPasswordSet'
+ )
+ );
+
+ $set->setValue('sCronPassword', $currPassword);
+ $set->saveNoLicenseRefresh();
+ }
+
+ /**
+ * @return array[]
+ */
+ public function passwordTestDataProvider()
+ {
+ return [
+ [false, true],
+ [null, true],
+ ['', true],
+ ['abc', false],
+ ['123', false],
+ ['%_(', false],
+ ];
+ }
+
+ /**
+ * @covers \D3\Ordermanager\Setup\d3ordermanager_update::createCronPassword
+ * @test
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws ReflectionException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ */
+ public function canCreateCronPasswordExecute()
+ {
+ $expectedPW = 'testRandom';
+
+ /** @var d3_cfg_mod $set */
+ $set = d3GetModCfgDIC()->get('d3.ordermanager.modcfg');
+ $currPassword = $set->getValue('sCronPassword');
+ $set->setValue('sCronPassword', 'otherContent');
+ $set->saveNoLicenseRefresh();
+
+ $oStrMock = $this->getMockBuilder(d3str::class)
+ ->setMethods(['random_str'])
+ ->getMock();
+ $oStrMock->expects($this->atLeastOnce())->method('random_str')->willReturn($expectedPW);
+ d3GetModCfgDIC()->set(d3str::class, $oStrMock);
+
+ /** @var d3ordermanager_update|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ $oModelMock = $this->getMockBuilder(d3ordermanager_update::class)
+ ->setMethods([
+ 'hasExecute',
+ 'setActionLog'
+ ])
+ ->getMock();
+ $oModelMock->method('hasExecute')->willReturn(true);
+ $oModelMock->expects($this->exactly(1))->method('setActionLog')->willReturn(true);
+
+ $this->_oModel = $oModelMock;
+
+ $this->callMethod(
+ $this->_oModel,
+ 'createCronPassword'
+ );
+
+ /** @var d3_cfg_mod $set */
+ $fixtureSet = d3GetModCfgDIC()->get('d3.ordermanager.modcfg');
+ $fixturePw = $fixtureSet->getValue('sCronPassword');
+
+ $this->assertSame($expectedPW, $fixturePw);
+
+ $set->setValue('sCronPassword', $currPassword);
+ $set->saveNoLicenseRefresh();
+ }
+
+ /**
+ * @covers \D3\Ordermanager\Setup\d3ordermanager_update::createCronPassword
+ * @test
+ * @throws DBALException
+ * @throws DatabaseConnectionException
+ * @throws DatabaseErrorException
+ * @throws ReflectionException
+ * @throws StandardException
+ * @throws d3ShopCompatibilityAdapterException
+ * @throws d3_cfg_mod_exception
+ */
+ public function canCreateCronPasswordNoExecute()
+ {
+ $expectedPW = 'testRandom';
+
+ /** @var d3_cfg_mod $set */
+ $set = d3GetModCfgDIC()->get('d3.ordermanager.modcfg');
+ $currPassword = $set->getValue('sCronPassword');
+ $set->setValue('sCronPassword', 'otherContent');
+ $set->saveNoLicenseRefresh();
+
+ $oStrMock = $this->getMockBuilder(d3str::class)
+ ->setMethods(['random_str'])
+ ->getMock();
+ $oStrMock->expects($this->never())->method('random_str')->willReturn($expectedPW);
+ d3GetModCfgDIC()->set(d3str::class, $oStrMock);
+
+ /** @var d3ordermanager_update|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ $oModelMock = $this->getMockBuilder(d3ordermanager_update::class)
+ ->setMethods([
+ 'hasExecute',
+ 'setActionLog'
+ ])
+ ->getMock();
+ $oModelMock->method('hasExecute')->willReturn(false);
+ $oModelMock->expects($this->exactly(1))->method('setActionLog')->willReturn(true);
+
+ $this->_oModel = $oModelMock;
+
+ $this->callMethod(
+ $this->_oModel,
+ 'createCronPassword'
+ );
+
+ /** @var d3_cfg_mod $set */
+ $fixtureSet = d3GetModCfgDIC()->get('d3.ordermanager.modcfg');
+ $fixturePw = $fixtureSet->getValue('sCronPassword');
+
+ $this->assertSame('otherContent', $fixturePw);
+
+ $set->setValue('sCronPassword', $currPassword);
+ $set->saveNoLicenseRefresh();
+ }
+
/**
* @test
* @throws ReflectionException
@@ -1468,7 +1635,11 @@ class d3ordermanager_updateTest extends d3OrdermanagerUnitTestCase
'_updateTableItem2',
'getStepByStepMode',
));
- $oModelMock->method('getShopList')->willReturn(array(1, 2));
+ $oModelMock->method('getShopList')->willReturn(
+ array(
+ 1 => d3GetModCfgDIC()->get('d3ox.ordermanager.'.Shop::class),
+ 2 => d3GetModCfgDIC()->get('d3ox.ordermanager.'.Shop::class),
+ ));
$oModelMock->method('jobFieldMethodName')->willReturn(true);
$oModelMock->method('_convertExampleJobItems')->willReturn(true);
$oModelMock->method('setInitialExecMethod')->willReturn(true);
@@ -1517,7 +1688,11 @@ class d3ordermanager_updateTest extends d3OrdermanagerUnitTestCase
'_updateTableItem2',
'getStepByStepMode',
));
- $oModelMock->method('getShopList')->willReturn(array(1, 2));
+ $oModelMock->method('getShopList')->willReturn(
+ array(
+ 1 => d3GetModCfgDIC()->get('d3ox.ordermanager.'.Shop::class),
+ 2 => d3GetModCfgDIC()->get('d3ox.ordermanager.'.Shop::class),
+ ));
$oModelMock->method('jobFieldMethodName')->willReturn(true);
$oModelMock->method('_convertExampleJobItems')->willReturn(true);
$oModelMock->method('setInitialExecMethod')->willReturn(true);
@@ -1539,51 +1714,113 @@ class d3ordermanager_updateTest extends d3OrdermanagerUnitTestCase
/**
* @test
* @throws ReflectionException
+ * @dataProvider hasNotOrderArticlesParentIdDataProvider
*/
- public function canConvertExampleJobItems()
+ public function checkHasNotOrderArticlesParentId($blCheckStatus, $blExpected, $iArticleCount)
{
- $aFieldList = $this->callMethod(
- $this->_oModel,
- '_convertExampleJobItems',
- array(
- array(
- 'fieldKey1' => array(
- 'field1' => 'content1',
- 'field2' => 'content1äüöß',
- )
- )
+ /** @var DatabaseInterface|PHPUnit_Framework_MockObject_MockObject $oDBInterfaceMock */
+ $oDBInterfaceMock = $this->getMock(stdClass::class, array(
+ 'getOne',
+ ));
+ $oDBInterfaceMock->expects($this->exactly((int) $blCheckStatus))->method('getOne')->willReturn($iArticleCount);
+
+ /** @var d3ordermanager_update|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ $oModelMock = $this->getMock(d3ordermanager_update::class, array(
+ 'getDb',
+ 'mustCheckOrderArticlesParentId',
+ 'setDontCheckOrderArticlesParentId'
+ ));
+ $oModelMock->method('getDb')->willReturn($oDBInterfaceMock);
+ $oModelMock->method('mustCheckOrderArticlesParentId')->willReturn($blCheckStatus);
+ $oModelMock->expects($this->exactly(((int)!(bool) $iArticleCount)))->method('setDontCheckOrderArticlesParentId');
+
+ $this->_oModel = $oModelMock;
+
+ $this->assertSame(
+ $blExpected,
+ $this->callMethod(
+ $this->_oModel,
+ 'hasNotOrderArticlesParentId'
)
);
+ }
- $this->assertInternalType('array', $aFieldList);
- $this->assertCount(1, $aFieldList);
+ /**
+ * @return array
+ */
+ public function hasNotOrderArticlesParentIdDataProvider()
+ {
+ return [
+ [true, true, 2], // first execution, must check
+ [true, false, 0], // first execution, must check
+ [false, false, 2] // later executions, mustn't check again
+ ];
+ }
+
+ /**
+ * @test
+ * @throws ReflectionException
+ * @dataProvider mustCheckOrderArticlesParentIdPassDataProvider
+ */
+ public function mustCheckOrderArticlesParentIdPass($blConfig, $blExpected)
+ {
+ /** @var Config|PHPUnit_Framework_MockObject_MockObject $oConfigMock */
+ $oConfigMock = $this->getMock(Config::class, array(
+ 'getShopConfVar',
+ ));
+ $oConfigMock->expects($this->once())->method('getShopConfVar')->willReturn($blConfig);
+
+ /** @var d3ordermanager_update|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ $oModelMock = $this->getMock(d3ordermanager_update::class, array(
+ 'd3GetConfig'
+ ));
+ $oModelMock->method('d3GetConfig')->willReturn($oConfigMock);
+
+ $this->_oModel = $oModelMock;
+
+ $this->assertSame(
+ $blExpected,
+ $this->callMethod(
+ $this->_oModel,
+ 'mustCheckOrderArticlesParentId'
+ )
+ );
+ }
+
+ /**
+ * @return array
+ */
+ public function mustCheckOrderArticlesParentIdPassDataProvider()
+ {
+ return [
+ [true, false],
+ [false, true]
+ ];
}
/**
* @test
* @throws ReflectionException
*/
- public function checkHasNotOrderArticlesParentId()
+ public function setDontCheckOrderArticlesParentIdPass()
{
- /** @var DatabaseInterface|PHPUnit_Framework_MockObject_MockObject $oDBInterfaceMock */
- $oDBInterfaceMock = $this->getMock(stdClass::class, array(
- 'getOne',
+ /** @var Config|PHPUnit_Framework_MockObject_MockObject $oConfigMock */
+ $oConfigMock = $this->getMock(Config::class, array(
+ 'saveShopConfVar',
));
- $oDBInterfaceMock->expects($this->once())->method('getOne')->willReturn(2);
+ $oConfigMock->expects($this->once())->method('saveShopConfVar')->willReturn(true);
/** @var d3ordermanager_update|PHPUnit_Framework_MockObject_MockObject $oModelMock */
$oModelMock = $this->getMock(d3ordermanager_update::class, array(
- 'getDb',
+ 'd3GetConfig'
));
- $oModelMock->method('getDb')->willReturn($oDBInterfaceMock);
+ $oModelMock->method('d3GetConfig')->willReturn($oConfigMock);
$this->_oModel = $oModelMock;
- $this->assertTrue(
- $this->callMethod(
- $this->_oModel,
- 'hasNotOrderArticlesParentId'
- )
+ $this->callMethod(
+ $this->_oModel,
+ 'setDontCheckOrderArticlesParentId'
);
}
@@ -1596,8 +1833,10 @@ class d3ordermanager_updateTest extends d3OrdermanagerUnitTestCase
/** @var d3ordermanager_update|PHPUnit_Framework_MockObject_MockObject $oModelMock */
$oModelMock = $this->getMock(d3ordermanager_update::class, array(
'_tableSqlExecute',
+ 'setDontCheckOrderArticlesParentId'
));
$oModelMock->expects($this->once())->method('_tableSqlExecute')->willReturn(true);
+ $oModelMock->expects($this->once())->method('setDontCheckOrderArticlesParentId')->willReturn(true);
$this->_oModel = $oModelMock;
@@ -1656,4 +1895,4 @@ class d3ordermanager_updateTest extends d3OrdermanagerUnitTestCase
{
return null;
}
-}
\ No newline at end of file
+}
diff --git a/src/tests/unit/d3OrdermanagerUnitTestCase.php b/src/tests/unit/d3OrdermanagerUnitTestCase.php
index 01cab5b8..5c5a46fc 100644
--- a/src/tests/unit/d3OrdermanagerUnitTestCase.php
+++ b/src/tests/unit/d3OrdermanagerUnitTestCase.php
@@ -1,116 +1,126 @@
1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'ionCube ')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'get-loader.ioncube.com ')." for install assistance.\n\n");exit(199);
?>
-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
\ No newline at end of file
+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
+U0d6aGHORl5rryQas0rkKW==
\ No newline at end of file
diff --git a/src/tests/unit/public/d3_ordermanager_cronTest.php b/src/tests/unit/public/d3_ordermanager_cronTest.php
index 15aaad2c..876c4434 100644
--- a/src/tests/unit/public/d3_ordermanager_cronTest.php
+++ b/src/tests/unit/public/d3_ordermanager_cronTest.php
@@ -14,14 +14,21 @@
* @link http://www.oxidmodule.com
*/
+namespace D3\Ordermanager\tests\unit\publicDir;
+
+use D3\ModCfg\Application\Model\Exception\d3PreventExitException;
use D3\Ordermanager\Application\Controller\d3ordermanager_response;
use D3\Ordermanager\Application\Model\d3ordermanager;
+use D3\Ordermanager\publicDir\d3_ordermanager_cron;
use D3\Ordermanager\tests\unit\d3OrdermanagerUnitTestCase;
use Doctrine\DBAL\DBALException;
+use OxidEsales\Eshop\Core\Config;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Session;
+use ReflectionException;
use splitbrain\phpcli\Exception as Exception;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
use splitbrain\phpcli\Options;
class d3_ordermanager_cronTest extends d3OrdermanagerUnitTestCase
@@ -39,21 +46,7 @@ class d3_ordermanager_cronTest extends d3OrdermanagerUnitTestCase
{
parent::setUp();
- $count = 0;
- $filePath = '../../../source/modules/d3/ordermanager/public/d3_ordermanager_cron.php';
- $currentDirectory = __DIR__ . '/';
- while ($count < 5) {
- $count++;
- if (file_exists($currentDirectory . $filePath)) {
- $filePath = $currentDirectory . $filePath;
- break;
- }
- $filePath = '../' . $filePath;
- }
-
- require_once($filePath);
-
- $this->_oController = oxNew(d3_ordermanager_cron::class);
+ $this->_oController = oxNew( d3_ordermanager_cron::class);
}
public function tearDown()
@@ -64,12 +57,81 @@ class d3_ordermanager_cronTest extends d3OrdermanagerUnitTestCase
}
/**
+ * @covers \D3\Ordermanager\publicDir\d3_ordermanager_cron::__construct
+ * @test
+ * @throws ReflectionException
+ */
+ public function constructorCLIPass()
+ {
+ $controllerMock = $this->getMockBuilder(d3_ordermanager_cron::class)
+ ->setMethods(['isCLI'])
+ ->disableOriginalConstructor()
+ ->getMock();
+ $controllerMock->method('isCLI')->willReturn(true);
+
+ $this->callMethod(
+ $controllerMock,
+ '__construct'
+ );
+
+ $this->assertInstanceOf(
+ Options::class,
+ $this->getValue(
+ $controllerMock,
+ 'options'
+ )
+ );
+ }
+
+ /**
+ * @covers \D3\Ordermanager\publicDir\d3_ordermanager_cron::__construct
+ * @test
+ * @throws ReflectionException
+ */
+ public function constructorNonCLIPass()
+ {
+ $controllerMock = $this->getMockBuilder(d3_ordermanager_cron::class)
+ ->setMethods(['isCLI'])
+ ->disableOriginalConstructor()
+ ->getMock();
+ $controllerMock->method('isCLI')->willReturn(false);
+
+ $this->callMethod(
+ $controllerMock,
+ '__construct'
+ );
+
+ $this->assertNull(
+ $this->getValue(
+ $controllerMock,
+ 'options'
+ )
+ );
+ }
+
+ /**
+ * @covers \D3\Ordermanager\publicDir\d3_ordermanager_cron::isCLI
+ * @test
+ * @throws ReflectionException
+ */
+ public function isCLIPass()
+ {
+ $this->assertTrue(
+ $this->callMethod(
+ $this->_oController,
+ 'isClI'
+ )
+ );
+ }
+
+ /**
+ * @covers \D3\Ordermanager\publicDir\d3_ordermanager_cron::setup
* @test
* @throws ReflectionException
*/
public function canSetup()
{
- /** @var Options|PHPUnit_Framework_MockObject_MockObject $oModelMock */
+ /** @var Options|MockObject $oModelMock */
$oOptionsMock = $this->getMock(Options::class, array(
'registerOption',
'registerCommand',
@@ -89,12 +151,13 @@ class d3_ordermanager_cronTest extends d3OrdermanagerUnitTestCase
}
/**
+ * @covers \D3\Ordermanager\publicDir\d3_ordermanager_cron::parseOptions
* @test
* @throws ReflectionException
*/
public function canParseOptions()
{
- /** @var Options|PHPUnit_Framework_MockObject_MockObject $oOptionsMock */
+ /** @var Options|MockObject $oOptionsMock */
$oOptionsMock = $this->getMock(Options::class, array(
'registerOption'
),
@@ -118,12 +181,13 @@ class d3_ordermanager_cronTest extends d3OrdermanagerUnitTestCase
}
/**
+ * @covers \D3\Ordermanager\publicDir\d3_ordermanager_cron::main
* @test
* @throws ReflectionException
*/
public function mainShowVersion()
{
- /** @var Options|PHPUnit_Framework_MockObject_MockObject $oOptionsMock */
+ /** @var Options|MockObject $oOptionsMock */
$oOptionsMock = $this->getMock(Options::class, array(
'getOpt',
'getCmd'
@@ -144,7 +208,7 @@ class d3_ordermanager_cronTest extends d3OrdermanagerUnitTestCase
);
$oOptionsMock->parseOptions();
- /** @var d3_ordermanager_cron|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_ordermanager_cron|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_ordermanager_cron::class, array(
'info',
));
@@ -160,12 +224,15 @@ class d3_ordermanager_cronTest extends d3OrdermanagerUnitTestCase
}
/**
+ * @covers \D3\Ordermanager\publicDir\d3_ordermanager_cron::main
* @test
* @throws ReflectionException
*/
- public function mainUseQuietCmdDefault()
+ public function mainUseQuietCmdDefaultNoCJID()
{
- /** @var Options|PHPUnit_Framework_MockObject_MockObject $oOptionsMock */
+ $defintions = d3GetModCfgDIC()->getDefinitions();
+
+ /** @var Options|MockObject $oOptionsMock */
$oOptionsMock = $this->getMock(Options::class, array(
'getOpt',
'getCmd'
@@ -186,18 +253,10 @@ class d3_ordermanager_cronTest extends d3OrdermanagerUnitTestCase
);
$oOptionsMock->parseOptions();
- /** @var Session|PHPUnit_Framework_MockObject_MockObject $oSessionMock */
- $oSessionMock = $this->getMock(Session::class, array(
- 'setVariable'
- ));
- $oSessionMock->expects($this->once())->method('setVariable')
- ->with($this->equalTo('d3ordermanager_quiet'))->willReturn(true);
- d3GetModCfgDIC()->set('d3ox.ordermanager.'.Session::class, $oSessionMock);
-
- /** @var d3_ordermanager_cron|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
- $oControllerMock = $this->getMock(d3_ordermanager_cron::class, array(
- 'translateFixedStrings',
- ));
+ /** @var d3_ordermanager_cron|MockObject $oControllerMock */
+ $oControllerMock = $this->getMockBuilder(d3_ordermanager_cron::class)
+ ->setMethods(['translateFixedStrings'])
+ ->getMock();
$oControllerMock->expects($this->once())->method('translateFixedStrings')->willReturn(false);
$this->_oController = $oControllerMock;
@@ -207,15 +266,223 @@ class d3_ordermanager_cronTest extends d3OrdermanagerUnitTestCase
'main',
array($oOptionsMock)
);
+
+ d3GetModCfgDIC()->reset();
+ d3GetModCfgDIC()->setDefinitions($defintions);
+ }
+
+ public function getOptCallback()
+ {
+ $aArgs = func_get_args();
+
+ switch ($aArgs[0]) {
+ case 'quiet':
+ return true;
+ default:
+ return false;
+ }
+ }
+
+ /**
+ * @covers \D3\Ordermanager\publicDir\d3_ordermanager_cron::main
+ * @test
+ * @throws ReflectionException
+ */
+ public function mainUseQuietCmdDefaultUnvalidCJID()
+ {
+ /** @var Options|MockObject $oOptionsMock */
+ $oOptionsMock = $this->getMockBuilder(Options::class)
+ ->setMethods([
+ 'getOpt',
+ 'getCmd',
+ 'getArgs'
+ ])
+ ->setConstructorArgs(
+ [$this->getValue($this->_oController, 'colors')]
+ )
+ ->getMock();
+ $oOptionsMock->method('getOpt')->willReturn(false);
+ $oOptionsMock->method('getCmd')->willReturn(false);
+ $oOptionsMock->method('getArgs')->willReturn(['1', '1234561', 'key']);
+
+ $this->setValue(
+ $oOptionsMock,
+ 'args',
+ ['1', '1234561', 'key']
+ );
+ $oOptionsMock->parseOptions();
+
+ /** @var d3ordermanager_response|MockObject $oResponseMock */
+ $oResponseMock = $this->getMockBuilder(d3ordermanager_response::class)
+ ->setMethods(['initCli'])
+ ->getMock();
+ $oResponseMock->expects($this->never())->method('initCli')->willReturn(true);
+ d3GetModCfgDIC()->set( d3ordermanager_response::class, $oResponseMock);
+
+ /** @var d3_ordermanager_cron|MockObject $oControllerMock */
+ $oControllerMock = $this->getMockBuilder(d3_ordermanager_cron::class)
+ ->setMethods([
+ 'translateFixedStrings',
+ 'success',
+ 'error'
+ ])
+ ->getMock();
+ $oControllerMock->expects($this->never())->method('translateFixedStrings')->willReturn(false);
+ $oControllerMock->expects($this->never())->method('success')->willReturn(true);
+ $oControllerMock->expects($this->once())->method('error')->willReturn(true);
+
+ $this->_oController = $oControllerMock;
+
+ $this->callMethod(
+ $this->_oController,
+ 'main',
+ array($oOptionsMock)
+ );
}
/**
+ * @covers \D3\Ordermanager\publicDir\d3_ordermanager_cron::main
+ * @test
+ * @throws ReflectionException
+ */
+ public function mainUseQuietCmdDefaultUnvalidShopId()
+ {
+ /** @var Options|MockObject $oOptionsMock */
+ $oOptionsMock = $this->getMockBuilder(Options::class)
+ ->setMethods([
+ 'getOpt',
+ 'getCmd',
+ 'getArgs'
+ ])
+ ->setConstructorArgs(
+ [$this->getValue($this->_oController, 'colors')]
+ )
+ ->getMock();
+ $oOptionsMock->method('getOpt')->willReturn(false);
+ $oOptionsMock->method('getCmd')->willReturn(false);
+ $oOptionsMock->method('getArgs')->willReturn(['5', '1234561', 'key']);
+
+ $this->setValue(
+ $oOptionsMock,
+ 'args',
+ ['5', '1234561', 'key']
+ );
+ $oOptionsMock->parseOptions();
+
+ /** @var Session|MockObject $oSessionMock */
+ $oSessionMock = $this->getMockBuilder(Session::class)
+ ->setMethods(['setVariable'])
+ ->getMock();
+ $oSessionMock->expects($this->never())->method('setVariable')
+ ->with($this->equalTo('d3ordermanager_quiet'))->willReturn(false);
+ d3GetModCfgDIC()->set('d3ox.ordermanager.'.Session::class, $oSessionMock);
+
+ /** @var d3ordermanager_response|MockObject $oResponseMock */
+ $oResponseMock = $this->getMockBuilder(d3ordermanager_response::class)
+ ->setMethods(['initCli'])
+ ->getMock();
+ $oResponseMock->expects($this->never())->method('initCli')->willReturn(true);
+ d3GetModCfgDIC()->set( d3ordermanager_response::class, $oResponseMock);
+
+ /** @var Config|MockObject $oConfigMock */
+ $oConfigMock = $this->getMockBuilder(Config::class)
+ ->setMethods(['getShopIds'])
+ ->getMock();
+ $oConfigMock->method('getShopIds')->willReturn([0, 1, 2]);
+ d3GetModCfgDIC()->set( 'd3ox.ordermanager.' . Config::class , $oConfigMock);
+
+ /** @var d3_ordermanager_cron|MockObject $oControllerMock */
+ $oControllerMock = $this->getMockBuilder(d3_ordermanager_cron::class)
+ ->setMethods([
+ 'translateFixedStrings',
+ 'success',
+ 'error'
+ ])
+ ->getMock();
+ $oControllerMock->expects($this->never())->method('translateFixedStrings')->willReturn(false);
+ $oControllerMock->expects($this->never())->method('success')->willReturn(true);
+ $oControllerMock->expects($this->once())->method('error')->willReturn(true);
+
+ $this->_oController = $oControllerMock;
+
+ $this->callMethod(
+ $this->_oController,
+ 'main',
+ array($oOptionsMock)
+ );
+ }
+
+ /**
+ * @covers \D3\Ordermanager\publicDir\d3_ordermanager_cron::main
+ * @test
+ * @throws ReflectionException
+ */
+ public function mainUseQuietCmdDefaultValidCJID()
+ {
+ $aAvailableIds = d3GetModCfgDIC()->get(d3ordermanager::class)->getAvailableCronjobIds();
+
+ if (0 === count($aAvailableIds)) {
+ $this->fail('no available cronjob ids for running test');
+ }
+
+ /** @var Options|MockObject $oOptionsMock */
+ $oOptionsMock = $this->getMockBuilder(Options::class)
+ ->setMethods([
+ 'getOpt',
+ 'getCmd',
+ 'getArgs'
+ ])
+ ->setConstructorArgs(
+ [$this->getValue($this->_oController, 'colors')]
+ )
+ ->getMock();
+ $oOptionsMock->method('getOpt')->willReturn(false);
+ $oOptionsMock->method('getCmd')->willReturn(false);
+ $oOptionsMock->method('getArgs')->willReturn(['1', end($aAvailableIds)['id'], 'key']);
+
+ $this->setValue(
+ $oOptionsMock,
+ 'args',
+ ['1', end($aAvailableIds)['id'], 'key']
+ );
+ $oOptionsMock->parseOptions();
+
+ /** @var d3ordermanager_response|MockObject $oResponseMock */
+ $oResponseMock = $this->getMockBuilder(d3ordermanager_response::class)
+ ->setMethods(['initCli'])
+ ->getMock();
+ $oResponseMock->expects($this->once())->method('initCli')->willReturn(true);
+ d3GetModCfgDIC()->set( d3ordermanager_response::class, $oResponseMock);
+
+ /** @var d3_ordermanager_cron|MockObject $oControllerMock */
+ $oControllerMock = $this->getMockBuilder(d3_ordermanager_cron::class)
+ ->setMethods([
+ 'translateFixedStrings',
+ 'success',
+ 'error'
+ ])
+ ->getMock();
+ $oControllerMock->expects($this->never())->method('translateFixedStrings')->willReturn(false);
+ $oControllerMock->expects($this->once())->method('success')->willReturn(true);
+ $oControllerMock->expects($this->never())->method('error')->willReturn(true);
+
+ $this->_oController = $oControllerMock;
+
+ $this->callMethod(
+ $this->_oController,
+ 'main',
+ array($oOptionsMock)
+ );
+ }
+
+ /**
+ * @covers \D3\Ordermanager\publicDir\d3_ordermanager_cron::main
* @test
* @throws ReflectionException
*/
public function mainCmdRun()
{
- /** @var Options|PHPUnit_Framework_MockObject_MockObject $oOptionsMock */
+ /** @var Options|MockObject $oOptionsMock */
$oOptionsMock = $this->getMock(Options::class, array(
'getOpt',
'getCmd'
@@ -232,14 +499,14 @@ class d3_ordermanager_cronTest extends d3OrdermanagerUnitTestCase
);
$oOptionsMock->parseOptions();
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oResponseMock */
- $oResponseMock = $this->getMock(d3ordermanager_response::class, array(
- 'init'
- ));
- $oResponseMock->expects($this->once())->method('init')->willReturn(true);
+ /** @var d3ordermanager_response|MockObject $oResponseMock */
+ $oResponseMock = $this->getMockBuilder(d3ordermanager_response::class)
+ ->setMethods(['initCli'])
+ ->getMock();
+ $oResponseMock->expects($this->once())->method('initCli')->willReturn(true);
d3GetModCfgDIC()->set( d3ordermanager_response::class, $oResponseMock);
- /** @var d3_ordermanager_cron|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_ordermanager_cron|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_ordermanager_cron::class, array(
'success',
));
@@ -255,12 +522,13 @@ class d3_ordermanager_cronTest extends d3OrdermanagerUnitTestCase
}
/**
+ * @covers \D3\Ordermanager\publicDir\d3_ordermanager_cron::main
* @test
* @throws ReflectionException
*/
public function mainCmdStatus()
{
- /** @var Options|PHPUnit_Framework_MockObject_MockObject $oOptionsMock */
+ /** @var Options|MockObject $oOptionsMock */
$oOptionsMock = $this->getMock(Options::class, array(
'getOpt',
'getCmd'
@@ -277,7 +545,7 @@ class d3_ordermanager_cronTest extends d3OrdermanagerUnitTestCase
);
$oOptionsMock->parseOptions();
- /** @var d3_ordermanager_cron|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_ordermanager_cron|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_ordermanager_cron::class, array(
'info',
));
@@ -293,12 +561,13 @@ class d3_ordermanager_cronTest extends d3OrdermanagerUnitTestCase
}
/**
+ * @covers \D3\Ordermanager\publicDir\d3_ordermanager_cron::main
* @test
* @throws ReflectionException
*/
public function mainHandleException()
{
- /** @var Options|PHPUnit_Framework_MockObject_MockObject $oOptionsMock */
+ /** @var Options|MockObject $oOptionsMock */
$oOptionsMock = $this->getMock(Options::class, array(
'getOpt',
'getCmd'
@@ -315,14 +584,14 @@ class d3_ordermanager_cronTest extends d3OrdermanagerUnitTestCase
);
$oOptionsMock->parseOptions();
- /** @var d3ordermanager_response|PHPUnit_Framework_MockObject_MockObject $oResponseMock */
- $oResponseMock = $this->getMock(d3ordermanager_response::class, array(
- 'init'
- ));
- $oResponseMock->expects($this->once())->method('init')->willThrowException(new Exception('excMsg'));
+ /** @var d3ordermanager_response|MockObject $oResponseMock */
+ $oResponseMock = $this->getMockBuilder(d3ordermanager_response::class)
+ ->setMethods(['initCli'])
+ ->getMock();
+ $oResponseMock->expects($this->once())->method('initCli')->willThrowException(new Exception('excMsg'));
d3GetModCfgDIC()->set( d3ordermanager_response::class, $oResponseMock);
- /** @var d3_ordermanager_cron|PHPUnit_Framework_MockObject_MockObject $oControllerMock */
+ /** @var d3_ordermanager_cron|MockObject $oControllerMock */
$oControllerMock = $this->getMock(d3_ordermanager_cron::class, array(
'error',
));
@@ -338,6 +607,30 @@ class d3_ordermanager_cronTest extends d3OrdermanagerUnitTestCase
}
/**
+ * @covers \D3\Ordermanager\publicDir\d3_ordermanager_cron::execute
+ * @test
+ * @throws ReflectionException
+ */
+ public function executeThrowRightException()
+ {
+ /** @var d3_ordermanager_cron|MockObject $oControllerMock */
+ $oControllerMock = $this->getMockBuilder(d3_ordermanager_cron::class)
+ ->setMethods(['main'])
+ ->getMock();
+ $oControllerMock->method('main')->willReturn(true);
+
+ $this->_oController = $oControllerMock;
+
+ $this->setExpectedException(d3PreventExitException::class);
+
+ $this->callMethod(
+ $this->_oController,
+ 'execute'
+ );
+ }
+
+ /**
+ * @covers \D3\Ordermanager\publicDir\d3_ordermanager_cron::translateFixedStrings
* @test
* @throws ReflectionException
*/
@@ -356,6 +649,7 @@ class d3_ordermanager_cronTest extends d3OrdermanagerUnitTestCase
}
/**
+ * @covers \D3\Ordermanager\publicDir\d3_ordermanager_cron::translateFixedStrings
* @test
* @throws ReflectionException
*/
@@ -382,4 +676,4 @@ class d3_ordermanager_cronTest extends d3OrdermanagerUnitTestCase
{
return null;
}
-}
\ No newline at end of file
+}