Advertisement
Guest User

Untitled

a guest
Mar 8th, 2017
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 67.92 KB | None | 0 0
  1. /**
  2. * @author  Roland Nieznanski <roland.nieznanskii@accenture.com>
  3. * @date 30/12/2016
  4. * @description test class for ITA_IFM_Annulment class.
  5. **/
  6.  
  7. @isTest
  8. public class ITA_IFM_Annulment_Test_WM {
  9.  
  10.  
  11.    /**
  12.     * @author  Roland Nieznanski <roland.nieznanskii@accenture.com>
  13.     * @date 30/12/2016
  14.     * @description test method for prepareCancelationReasonList method.
  15.     **/
  16.     @isTest
  17.     private static void prepareCancelationReasonListTest() {
  18.         final String processNameTest = 'Test1';
  19.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  20.         annullment.processName = processNameTest;
  21.         annullment.emptyCancellationReason = false;
  22.         List<ITA_IFM_CaseAnnulmentReason__c> caseAnnulmentReasons = new List<ITA_IFM_CaseAnnulmentReason__c>();
  23.         caseAnnulmentReasons.add(new ITA_IFM_CaseAnnulmentReason__c(ITA_IFM_ProcessName__c = 'Test1', ITA_IFM_Action__c = 'DROP', ITA_IFM_Hidden_c__c = false, ITA_IFM_ReasonforAnnulment__c = 'Test2'));
  24.         caseAnnulmentReasons.add(new ITA_IFM_CaseAnnulmentReason__c(ITA_IFM_ProcessName__c = 'Test1', ITA_IFM_Hidden_c__c = false, ITA_IFM_ReasonforAnnulment__c = 'Test3'));
  25.         caseAnnulmentReasons.add(new ITA_IFM_CaseAnnulmentReason__c(ITA_IFM_ProcessName__c = 'Test1', ITA_IFM_Action__c = 'DROP', ITA_IFM_Hidden_c__c = false, ITA_IFM_ReasonforAnnulment__c = 'Test4'));
  26.         insert caseAnnulmentReasons;
  27.         annullment.prepareCancelationReasonList();
  28.         System.assertEquals(false, annullment.emptyCancellationReason);
  29.     }
  30.  
  31.     /**
  32.     * @author  Roland Nieznanski <roland.nieznanskii@accenture.com>
  33.     * @date 30/12/2016
  34.     * @description test method for prepareCancelationReasonList method.
  35.     **/
  36.     @isTest
  37.     private static void prepareCancelationReasonListIfTest() {
  38.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  39.         annullment.emptyCancellationReason = false;
  40.         annullment.prepareCancelationReasonList();
  41.         System.assertEquals(true, annullment.emptyCancellationReason);
  42.     }
  43.  
  44.     /**
  45.     * @author  Roland Nieznanski <roland.nieznanskii@accenture.com>
  46.     * @date 30/12/2016
  47.     * @description test method for cancellationReasonRelatedDataWrapper class.
  48.     **/
  49.     @isTest
  50.     private static void cancellationReasonRelatedDataWrapperTest() {
  51.         final String cancelationCodeTest = 'Test1';
  52.         ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper annullment = new ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper();
  53.         annullment.orderManagement = true;
  54.         annullment.cancelationCode = cancelationCodeTest;
  55.         System.assertEquals(cancelationCodeTest, annullment.cancelationCode);
  56.     }
  57.  
  58.     /**
  59.     * @author  Roland Nieznanski <roland.nieznanskii@accenture.com>
  60.     * @date 30/12/2016
  61.     * @description test method for prepareCancelationData method.
  62.     **/
  63.     @isTest
  64.     private static void prepareCancelationDataCaseTest() {
  65.         Case cCase = new Case();
  66.         insert cCase;
  67.         final String processNameTest = 'Test1';
  68.         final String cancelationCodeTest = '001';
  69.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  70.         ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper annullmentReason = new ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper();
  71.         annullmentReason.orderManagement = true;
  72.         annullmentReason.cancelationCode = cancelationCodeTest;
  73.         annullmentReason.cascade_delete = true;
  74.         annullment.processName = processNameTest;
  75.         Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper> reasonDataMap = new Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper>();
  76.         reasonDataMap.put('Test', annullmentReason);
  77.         annullment.reasonData = reasonDataMap;
  78.         annullment.objectId = cCase.Id;
  79.         annullment.selectedCancellationReason = 'Test';
  80.         List<ITA_IFM_Annulment_InputWrapper> result = annullment.prepareCancelationData();
  81.         System.debug('ITA_IFM_Annulment_InputWrapper result : ' + result[0].cancellationCode);
  82.         System.assertEquals(cancelationCodeTest, result[0].cancellationCode);
  83.     }
  84.  
  85.  
  86.     /**
  87.     * @author  Roland Nieznanski <roland.nieznanskii@accenture.com>
  88.     * @date 30/12/2016
  89.     * @description test method for prepareCancelationData method.
  90.     **/
  91.     @isTest
  92.     private static void prepareCancelationDataCaseItemsTest() {
  93.         Case cCase = new Case();
  94.         insert cCase;
  95.         List<ITA_IFM_Case_Items__c> caseItemss = new List<ITA_IFM_Case_Items__c>();
  96.         caseItemss.add(new ITA_IFM_Case_Items__c(ITA_IFM_Case__c = cCase.Id));
  97.         insert caseItemss;
  98.         final String processNameTest = 'Test1';
  99.         final String cancelationCodeTest = '001';
  100.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  101.         ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper annullmentReason = new ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper();
  102.         annullmentReason.orderManagement = true;
  103.         annullmentReason.cancelationCode = cancelationCodeTest;
  104.         annullmentReason.cascade_delete = true;
  105.         annullment.processName = processNameTest;
  106.         Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper> reasonDataMap = new Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper>();
  107.         reasonDataMap.put('Test', annullmentReason);
  108.         annullment.reasonData = reasonDataMap;
  109.         annullment.objectId = caseItemss[0].Id;
  110.         annullment.selectedCancellationReason = 'Test';
  111.         List<ITA_IFM_Annulment_InputWrapper> result = annullment.prepareCancelationData();
  112.         System.debug('ITA_IFM_Annulment_InputWrapper result : ' + result[0].cancellationCode);
  113.         System.assertEquals(cancelationCodeTest, result[0].cancellationCode);
  114.     }
  115.  
  116.  
  117.     /**
  118.     * @author  Roland Nieznanski <roland.nieznanskii@accenture.com>
  119.     * @date 30/12/2016
  120.     * @description test method for prepareCancelationData method.
  121.     **/
  122.     @isTest
  123.     private static void prepareCancelationDataOrderItemTest() {
  124.         NE__Order__c testConf = new NE__Order__c(); // required for relationship in NE__OrderItem__c
  125.         insert testConf;
  126.         List<NE__OrderItem__c> orderItemsList = new List<NE__OrderItem__c>();
  127.         orderItemsList.add(new NE__OrderItem__c(NE__OrderId__c = testConf.Id, NE__Qty__c = 1));
  128.         insert orderItemsList;
  129.         final String processNameTest = 'Test1';
  130.         final String cancelationCodeTest = '001';
  131.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  132.         ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper annullmentReason = new ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper();
  133.         annullmentReason.orderManagement = true;
  134.         annullmentReason.cancelationCode = cancelationCodeTest;
  135.         annullmentReason.cascade_delete = true;
  136.         annullment.processName = processNameTest;
  137.         Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper> reasonDataMap = new Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper>();
  138.         reasonDataMap.put('Test', annullmentReason);
  139.         annullment.reasonData = reasonDataMap;
  140.         annullment.objectId = orderItemsList[0].Id;
  141.         annullment.selectedCancellationReason = 'Test';
  142.         List<ITA_IFM_Annulment_InputWrapper> result = annullment.prepareCancelationData();
  143.         System.debug('ITA_IFM_Annulment_InputWrapper result : ' + result[0].cancellationCode);
  144.         System.assertEquals(cancelationCodeTest, result[0].cancellationCode);
  145.     }
  146.  
  147.  
  148.  
  149.     /**
  150.     * @author  Roland Nieznanski <roland.nieznanskii@accenture.com>
  151.     * @date 30/12/2016
  152.     * @description test method for prepareQuoteCascadeCancelationData method.
  153.     **/
  154.     @isTest
  155.     private static void prepareQuoteCascadeCancelationDataTest() {
  156.         Account acc = ITA_IFM_TestDataFactory.getSimpleAccount();
  157.         insert acc;
  158.         Case cCase = new Case();
  159.         insert cCase;
  160.         ITA_IFM_Case_Items__c caseItems = new ITA_IFM_Case_Items__c();
  161.         caseItems.ITA_IFM_Case__c = cCase.Id;
  162.         insert caseItems;
  163.         NE__Quote__c quote = ITA_IFM_TestDataFactory.getSimpleQuote(acc.Id);
  164.         quote.ITA_IFM_Case__c = cCase.Id;
  165.         insert quote;
  166.  
  167.         NE__Order_Header__c orderHeader = ITA_IFM_TestDataFactory.getSimpleOrderHeader(acc.Id, quote.Id);
  168.         insert orderHeader;
  169.  
  170.         NE__Order__c order = ITA_IFM_TestDataFactory.getSimpleOrder(acc.Id, quote.Id, orderHeader.Id);
  171.         insert order;
  172.         Schema.DescribeFieldResult fieldResultforOrderItem = NE__OrderItem__c.NE__Status__c.getDescribe();
  173.         List<Schema.PicklistEntry> statusPLV = fieldResultforOrderItem.getPicklistValues();
  174.         List<NE__OrderItem__c> orderItemsList = new List<NE__OrderItem__c>();
  175.         orderItemsList.add(new NE__OrderItem__c(NE__OrderId__c = order.Id, NE__Qty__c = 1, NE__Status__c = statusPLV[0].getValue()));
  176.         insert orderItemsList;
  177.         final String processNameTest = 'Test1';
  178.         final String cancelationCodeTest = '001';
  179.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  180.         ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper annullmentReason = new ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper();
  181.         annullmentReason.orderManagement = true;
  182.         annullmentReason.cancelationCode = cancelationCodeTest;
  183.         annullmentReason.cascade_delete = true;
  184.         annullment.processName = processNameTest;
  185.         Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper> reasonDataMap = new Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper>();
  186.         reasonDataMap.put('Test', annullmentReason);
  187.         annullment.reasonData = reasonDataMap;
  188.         annullment.objectId = orderItemsList[0].Id;
  189.         annullment.selectedCancellationReason = 'Test';
  190.         List<ITA_IFM_Annulment_InputWrapper> result = annullment.prepareQuoteCascadeCancelationData(quote.Id);
  191.         System.debug('ITA_IFM_Annulment_InputWrapper result : ' + result[0].cancellationCode);
  192.         System.assertEquals(cancelationCodeTest, result[0].cancellationCode);
  193.     }
  194.  
  195.     /**
  196.     * @author  Roland Nieznanski <roland.nieznanskii@accenture.com>
  197.     * @date 30/12/2016
  198.     * @description test method for executeRecordCancellation method.
  199.     **/
  200.     @isTest
  201.     private static void executeRecordCancellationQuoteTrueTest() {
  202.         wrts_prcgvr.InstallIntegration.install();
  203.  
  204.         //new ConfigurationIntegration instance
  205.         wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration configCls = (wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration)
  206.                 wrts_prcgvr.VersionManager.newClassInstance('ConfigurationIntegration');
  207.         //nuova configurazione del Phase Manager per uno specifico SObject e Field
  208.         configCls.addPhaseManagerSObject(new Map<String, String>{
  209.                 'name' => 'Offerta',
  210.                 'objectType' => 'NE__Quote__c',
  211.                 'phaseField' => 'ITA_IFM_Phase__c'
  212.         });
  213.  
  214.         Account acc = ITA_IFM_TestDataFactory.getSimpleAccount();
  215.         insert acc;
  216.         //String quoteRecordTypeId = ITA_IFM_UtilClass.retrieveRecordTypeIdByDeveloperName(ITA_IFM_LOYALTYMANAGEMENT_Constants.SOT_QUOTE, ITA_IFM_LOYALTYMANAGEMENT_Constants.RT_NE_QUOTE_LOYALTY_MANAGEMENT);
  217.         String quoteRecordTypeId = UTIL_System.getRecordTypeIdsByDeveloperName(ITA_IFM_LOYALTYMANAGEMENT_Constants.SOT_QUOTE).get(ITA_IFM_LOYALTYMANAGEMENT_Constants.RT_NE_QUOTE_LOYALTY_MANAGEMENT);
  218.         NE__Quote__c quote = ITA_IFM_TestDataFactory.getSimpleQuote(acc.Id);
  219.         quote.RecordTypeId = quoteRecordTypeId;
  220.         insert quote;
  221.         final String processNameTest = 'Test1';
  222.         final String cancelationCodeTest = ITA_IFM_Annulment_Constants.QUOTE_RECORD_CODE;
  223.         final String statusTest = 'Annullato';
  224.         final String resultCodeTest = 'OK';
  225.         final String resultDescriptionTest = 'Test';
  226.         final String resultCodeMindTest = '001';
  227.         final String resultDescriptionMindTest = 'AS1';
  228.         ITA_IFM_Annulment_OutputWrapper outputWrapper = new ITA_IFM_Annulment_OutputWrapper();
  229.         outputWrapper.status = statusTest;
  230.         outputWrapper.resultCode = resultCodeTest;
  231.         outputWrapper.resultDescription = resultDescriptionTest;
  232.         outputWrapper.resultCodeMind = resultCodeMindTest;
  233.         outputWrapper.resultDescriptionMind = resultDescriptionMindTest;
  234.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  235.         ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper annullmentReason = new ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper();
  236.         annullmentReason.orderManagement = true;
  237.         annullmentReason.cancelationCode = cancelationCodeTest;
  238.         annullmentReason.cascade_delete = true;
  239.         annullment.processName = processNameTest;
  240.         Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper> reasonDataMap = new Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper>();
  241.         reasonDataMap.put('Test', annullmentReason);
  242.         annullment.reasonData = reasonDataMap;
  243.         annullment.objectId = quote.Id;
  244.         annullment.selectedCancellationReason = 'Test';
  245.  
  246.         annullment.executeRecordCancellation();
  247.         System.assertEquals('ANN_999 - Annullamento non ammissibile', annullment.executionCompletedMessage);
  248.     }
  249.  
  250.     /**
  251.     * @author  Roland Nieznanski <roland.nieznanskii@accenture.com>
  252.     * @date 30/12/2016
  253.     * @description test method for executeRecordCancellation method.
  254.     **/
  255.     @isTest
  256.     private static void executeRecordCancellationCaseItemTrueTest() {
  257.         ////////////////////////////////////////////
  258.         wrts_prcgvr.InstallIntegration.install();
  259.  
  260.         //new ConfigurationIntegration instance
  261.         wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration configCls = (wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration)
  262.                 wrts_prcgvr.VersionManager.newClassInstance('ConfigurationIntegration');
  263.         //nuova configurazione del Phase Manager per uno specifico SObject e Field
  264.         configCls.addPhaseManagerSObject(new Map<String, String>{
  265.                 'name' => 'Case Item',
  266.                 'objectType' => 'ITA_IFM_Case_Items__c',
  267.                 'phaseField' => 'ITA_IFM_Phase__c'
  268.         });
  269.  
  270.         Case cCase = new Case();
  271.         insert cCase;
  272.         //String caseItemRecordTypeId = ITA_IFM_UtilClass.retrieveRecordTypeIdByDeveloperName(ITA_IFM_LOYALTYMANAGEMENT_Constants.SOT_CASEITEM, ITA_IFM_LOYALTYMANAGEMENT_Constants.RT_CASE_ITEM_LOYALTY_MANAGEMENT);
  273.         String caseItemRecordTypeId = UTIL_System.getRecordTypeIdsByDeveloperName(ITA_IFM_LOYALTYMANAGEMENT_Constants.SOT_CASEITEM).get(ITA_IFM_LOYALTYMANAGEMENT_Constants.RT_CASE_ITEM_LOYALTY_MANAGEMENT);
  274.         ITA_IFM_Case_Items__c caseItems = new ITA_IFM_Case_Items__c();
  275.         caseItems.ITA_IFM_Case__c = cCase.Id;
  276.         caseItems.RecordTypeId = caseItemRecordTypeId;
  277.         insert caseItems;
  278.         final String processNameTest = 'Test1';
  279.         final String cancelationCodeTest = ITA_IFM_Annulment_Constants.QUOTE_RECORD_CODE;
  280.         final String statusTest = 'Annullato';
  281.         final String resultCodeTest = 'OK';
  282.         final String resultDescriptionTest = 'Test';
  283.         final String resultCodeMindTest = '001';
  284.         final String resultDescriptionMindTest = 'AS1';
  285.         ITA_IFM_Annulment_OutputWrapper outputWrapper = new ITA_IFM_Annulment_OutputWrapper();
  286.         outputWrapper.status = statusTest;
  287.         outputWrapper.resultCode = resultCodeTest;
  288.         outputWrapper.resultDescription = resultDescriptionTest;
  289.         outputWrapper.resultCodeMind = resultCodeMindTest;
  290.         outputWrapper.resultDescriptionMind = resultDescriptionMindTest;
  291.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  292.         ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper annullmentReason = new ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper();
  293.         annullmentReason.orderManagement = true;
  294.         annullmentReason.cancelationCode = cancelationCodeTest;
  295.         annullmentReason.cascade_delete = true;
  296.         annullment.processName = processNameTest;
  297.         Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper> reasonDataMap = new Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper>();
  298.         reasonDataMap.put('Test', annullmentReason);
  299.         annullment.reasonData = reasonDataMap;
  300.         annullment.objectId = caseItems.Id;
  301.         annullment.selectedCancellationReason = 'Test';
  302.         annullment.executeRecordCancellation();
  303.         System.assertEquals('ANN_999 - Annullamento non ammissibile', annullment.executionCompletedMessage);
  304.     }
  305.  
  306.      /**
  307.     * @author  Wieslaw Mosakowski <w.mosakowski@accenture.com>
  308.     * @date 30/12/2016
  309.     * @description test method for executeRecordCancellation method.
  310.     **/
  311.     @isTest
  312.     private static void executeRecordCancellationCaseTest() {
  313.         ////////////////////////////////////////////
  314.         wrts_prcgvr.InstallIntegration.install();
  315.  
  316.         //new ConfigurationIntegration instance
  317.         wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration configCls = (wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration)
  318.                 wrts_prcgvr.VersionManager.newClassInstance('ConfigurationIntegration');
  319.         //nuova configurazione del Phase Manager per uno specifico SObject e Field
  320.         configCls.addPhaseManagerSObject(new Map<String, String>{
  321.                 'name' => 'Case',
  322.                 'objectType' => 'Case',
  323.                 'phaseField' => 'ITA_IFM_Phase__c'
  324.         });
  325.  
  326.         configCls.addPhaseManagerSObject(new Map<String, String>{
  327.                 'name' => 'Case Item',
  328.                 'objectType' => 'ITA_IFM_Case_Items__c',
  329.                 'phaseField' => 'ITA_IFM_Phase__c'
  330.         });
  331.  
  332.         Case cCase = new Case();
  333.         insert cCase;
  334.         //String caseItemRecordTypeId = ITA_IFM_UtilClass.retrieveRecordTypeIdByDeveloperName(ITA_IFM_LOYALTYMANAGEMENT_Constants.SOT_CASEITEM, ITA_IFM_LOYALTYMANAGEMENT_Constants.RT_CASE_ITEM_LOYALTY_MANAGEMENT);
  335.         String caseItemRecordTypeId = UTIL_System.getRecordTypeIdsByDeveloperName(ITA_IFM_LOYALTYMANAGEMENT_Constants.SOT_CASEITEM).get(ITA_IFM_LOYALTYMANAGEMENT_Constants.RT_CASE_ITEM_LOYALTY_MANAGEMENT);
  336.         ITA_IFM_Case_Items__c caseItems = new ITA_IFM_Case_Items__c();
  337.         caseItems.ITA_IFM_Case__c = cCase.Id;
  338.         caseItems.RecordTypeId = caseItemRecordTypeId;
  339.         insert caseItems;
  340.         final String processNameTest = 'Test1';
  341.         final String cancelationCodeTest = ITA_IFM_Annulment_Constants.QUOTE_RECORD_CODE;
  342.         final String statusTest = 'Annullato';
  343.         final String resultCodeTest = 'OK';
  344.         final String resultDescriptionTest = 'Test';
  345.         final String resultCodeMindTest = '001';
  346.         final String resultDescriptionMindTest = 'AS1';
  347.         ITA_IFM_Annulment_OutputWrapper outputWrapper = new ITA_IFM_Annulment_OutputWrapper();
  348.         outputWrapper.status = statusTest;
  349.         outputWrapper.resultCode = resultCodeTest;
  350.         outputWrapper.resultDescription = resultDescriptionTest;
  351.         outputWrapper.resultCodeMind = resultCodeMindTest;
  352.         outputWrapper.resultDescriptionMind = resultDescriptionMindTest;
  353.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  354.         ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper annullmentReason = new ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper();
  355.         annullmentReason.orderManagement = true;
  356.         annullmentReason.cancelationCode = cancelationCodeTest;
  357.         annullmentReason.cascade_delete = true;
  358.         annullment.processName = processNameTest;
  359.         Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper> reasonDataMap = new Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper>();
  360.         reasonDataMap.put('Test', annullmentReason);
  361.         annullment.reasonData = reasonDataMap;
  362.         annullment.objectId = cCase.Id;
  363.         annullment.selectedCancellationReason = 'Test';
  364.         annullment.executeRecordCancellation();
  365.         System.assertEquals('ANN_999 - Annullamento non ammissibile', annullment.executionCompletedMessage);
  366.     }
  367.  
  368.     /**
  369.     * @author  Roland Nieznanski <roland.nieznanskii@accenture.com>
  370.     * @date 30/12/2016
  371.     * @description test method for orderManagementLogic method.
  372.     **/
  373.     @isTest
  374.     private static void orderManagementLogicCaseTest() {
  375.         Case cCase = new Case();
  376.         insert cCase;
  377.         ITA_IFM_Case_Items__c caseItems = new ITA_IFM_Case_Items__c();
  378.         caseItems.ITA_IFM_Case__c = cCase.Id;
  379.         insert caseItems;
  380.         NE__Order_Header__c anOrderHeader = new NE__Order_Header__c();
  381.         insert anOrderHeader;
  382.         NE__Order__c testConf = new NE__Order__c(); // required for relationship in NE__OrderItem__c
  383.         testConf.NE__Order_Header__c = anOrderHeader.Id;
  384.         insert testConf;
  385.         List<NE__OrderItem__c> orderItemsList = new List<NE__OrderItem__c>();
  386.         orderItemsList.add(new NE__OrderItem__c(NE__OrderId__c = testConf.Id, NE__Qty__c = 1, ITA_IFM_Case__c = cCase.Id, ITA_IFM_Case_Item__c = caseItems.Id));
  387.         insert orderItemsList;
  388.         //String recordTypeId = ITA_IFM_UtilClass.retrieveRecordTypeIdByDeveloperName(ITA_IFM_VASPARTNER_Constants.SOT_ACCOUNT, ITA_IFM_VASPARTNER_Constants.RT_ACCOUNT_RESIDENTIAL);
  389.         String recordTypeId = UTIL_System.getRecordTypeIdsByDeveloperName(ITA_IFM_VASPARTNER_Constants.SOT_ACCOUNT).get(ITA_IFM_VASPARTNER_Constants.RT_ACCOUNT_RESIDENTIAL);
  390.         Id recordType = Id.valueOf(recordTypeId);
  391.         ITA_IFM_Annulment_InputWrapper annulment_inputWrapper = new ITA_IFM_Annulment_InputWrapper();
  392.         annulment_inputWrapper.processName = 'Drop';
  393.         annulment_inputWrapper.objectName = 'Case';
  394.         annulment_inputWrapper.objectId = cCase.Id;
  395.         annulment_inputWrapper.bpmId = String.valueOf(caseItems.Id).substring(0, 15);
  396.         annulment_inputWrapper.cancellationReason = 'Test';
  397.         annulment_inputWrapper.cancellationCode = '001';
  398.         annulment_inputWrapper.objectRecordTypeId = recordType;
  399.         annulment_inputWrapper.operationType = 'TestType';
  400.         annulment_inputWrapper.causalProcess = 'Test1';
  401.         annulment_inputWrapper.commodity = 'A23Sft69L';
  402.         annulment_inputWrapper.orderManagement = true;
  403.         annulment_inputWrapper.currentPhase = 'Start';
  404.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  405.         Boolean result = annullment.orderManagementLogic(annulment_inputWrapper);
  406.         System.debug('orderManagementLogic result : ' + result);
  407.         System.assertEquals(false, result);
  408.     }
  409.  
  410.     /**
  411.     * @author  Roland Nieznanski <roland.nieznanskii@accenture.com>
  412.     * @date 30/12/2016
  413.     * @description test method for orderManagementLogic method.
  414.     **/
  415.     @isTest
  416.     private static void orderManagementLogicCaseItemTest() {
  417.         Case cCase = new Case();
  418.         insert cCase;
  419.         ITA_IFM_Case_Items__c caseItems = new ITA_IFM_Case_Items__c();
  420.         caseItems.ITA_IFM_Case__c = cCase.Id;
  421.         insert caseItems;
  422.         NE__Order_Header__c anOrderHeader = new NE__Order_Header__c();
  423.         insert anOrderHeader;
  424.         NE__Order__c testConf = new NE__Order__c(); // required for relationship in NE__OrderItem__c
  425.         testConf.NE__Order_Header__c = anOrderHeader.Id;
  426.         insert testConf;
  427.         List<NE__OrderItem__c> orderItemsList = new List<NE__OrderItem__c>();
  428.         orderItemsList.add(new NE__OrderItem__c(NE__OrderId__c = testConf.Id, NE__Qty__c = 1, ITA_IFM_Case__c = cCase.Id, ITA_IFM_Case_Item__c = caseItems.Id));
  429.         insert orderItemsList;
  430.         //String recordTypeId = ITA_IFM_UtilClass.retrieveRecordTypeIdByDeveloperName(ITA_IFM_VASPARTNER_Constants.SOT_ACCOUNT, ITA_IFM_VASPARTNER_Constants.RT_ACCOUNT_RESIDENTIAL);
  431.         String recordTypeId = UTIL_System.getRecordTypeIdsByDeveloperName(ITA_IFM_VASPARTNER_Constants.SOT_ACCOUNT).get(ITA_IFM_VASPARTNER_Constants.RT_ACCOUNT_RESIDENTIAL);
  432.         Id recordType = Id.valueOf(recordTypeId);
  433.         ITA_IFM_Annulment_InputWrapper annulment_inputWrapper = new ITA_IFM_Annulment_InputWrapper();
  434.         annulment_inputWrapper.processName = 'Drop';
  435.         annulment_inputWrapper.objectName = 'ITA_IFM_Case_Items__c';
  436.         annulment_inputWrapper.objectId = caseItems.Id;
  437.         annulment_inputWrapper.bpmId = String.valueOf(caseItems.Id).substring(0, 15);
  438.         annulment_inputWrapper.cancellationReason = 'Test';
  439.         annulment_inputWrapper.cancellationCode = '001';
  440.         annulment_inputWrapper.objectRecordTypeId = recordType;
  441.         annulment_inputWrapper.operationType = 'TestType';
  442.         annulment_inputWrapper.causalProcess = 'Test1';
  443.         annulment_inputWrapper.commodity = 'A23Sft69L';
  444.         annulment_inputWrapper.orderManagement = true;
  445.         annulment_inputWrapper.currentPhase = 'Start';
  446.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  447.         Boolean result = annullment.orderManagementLogic(annulment_inputWrapper);
  448.         System.debug('orderManagementLogic result : ' + result);
  449.         System.assertEquals(false, result);
  450.     }
  451.  
  452.     /**
  453.     * @author  Roland Nieznanski <roland.nieznanskii@accenture.com>
  454.     * @date 30/12/2016
  455.     * @description test method for orderManagementLogic method.
  456.     **/
  457.     @isTest
  458.     private static void orderManagementLogicOrderItemsTest() {
  459.         Case cCase = new Case();
  460.         insert cCase;
  461.         ITA_IFM_Case_Items__c caseItems = new ITA_IFM_Case_Items__c();
  462.         caseItems.ITA_IFM_Case__c = cCase.Id;
  463.         insert caseItems;
  464.         NE__Order_Header__c anOrderHeader = new NE__Order_Header__c();
  465.         insert anOrderHeader;
  466.         NE__Order__c testConf = new NE__Order__c(); // required for relationship in NE__OrderItem__c
  467.         testConf.NE__Order_Header__c = anOrderHeader.Id;
  468.         insert testConf;
  469.         List<NE__OrderItem__c> orderItemsList = new List<NE__OrderItem__c>();
  470.         orderItemsList.add(new NE__OrderItem__c(NE__OrderId__c = testConf.Id, NE__Qty__c = 1, ITA_IFM_Case__c = cCase.Id, ITA_IFM_Case_Item__c = caseItems.Id));
  471.         insert orderItemsList;
  472.         //String recordTypeId = ITA_IFM_UtilClass.retrieveRecordTypeIdByDeveloperName(ITA_IFM_VASPARTNER_Constants.SOT_ACCOUNT, ITA_IFM_VASPARTNER_Constants.RT_ACCOUNT_RESIDENTIAL);
  473.         String recordTypeId = UTIL_System.getRecordTypeIdsByDeveloperName(ITA_IFM_VASPARTNER_Constants.SOT_ACCOUNT).get(ITA_IFM_VASPARTNER_Constants.RT_ACCOUNT_RESIDENTIAL);
  474.         Id recordType = Id.valueOf(recordTypeId);
  475.         ITA_IFM_Annulment_InputWrapper annulment_inputWrapper = new ITA_IFM_Annulment_InputWrapper();
  476.         annulment_inputWrapper.processName = 'Drop';
  477.         annulment_inputWrapper.objectName = 'NE__OrderItem__c';
  478.         annulment_inputWrapper.objectId = orderItemsList[0].Id;
  479.         annulment_inputWrapper.bpmId = String.valueOf(caseItems.Id).substring(0, 15);
  480.         annulment_inputWrapper.cancellationReason = 'Test';
  481.         annulment_inputWrapper.cancellationCode = '001';
  482.         annulment_inputWrapper.objectRecordTypeId = recordType;
  483.         annulment_inputWrapper.operationType = 'TestType';
  484.         annulment_inputWrapper.causalProcess = 'Test1';
  485.         annulment_inputWrapper.commodity = 'A23Sft69L';
  486.         annulment_inputWrapper.orderManagement = true;
  487.         annulment_inputWrapper.currentPhase = 'Start';
  488.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  489.         Boolean result = annullment.orderManagementLogic(annulment_inputWrapper);
  490.         System.debug('orderManagementLogic result : ' + result);
  491.         System.assertEquals(false, result);
  492.     }
  493.  
  494.     /**
  495.     * @author  Roland Nieznanski <roland.nieznanskii@accenture.com>
  496.     * @date 30/12/2016
  497.     * @description test method for executeMassiveAnnulment method.
  498.     **/
  499.     @isTest
  500.     private static void executeMassiveAnnulmentElseTest() {
  501.         Account acc = ITA_IFM_TestDataFactory.getSimpleAccount();
  502.         insert acc;
  503.         Schema.DescribeFieldResult fieldResult = Case.Type.getDescribe();
  504.         List<Schema.PicklistEntry> ple = fieldResult.getPicklistValues();
  505.         String caseType = ple[15].getValue();
  506.         //String caseRecordTypeId = ITA_IFM_UtilClass.retrieveRecordTypeIdByDeveloperName(ITA_IFM_LOYALTYMANAGEMENT_Constants.SOT_CASE, ITA_IFM_LOYALTYMANAGEMENT_Constants.RT_CASE.get(caseType));
  507.         String caseTypeConstants = ITA_IFM_LOYALTYMANAGEMENT_Constants.RT_CASE.get(caseType);
  508.         String caseRecordTypeId = UTIL_System.getRecordTypeIdsByDeveloperName(ITA_IFM_LOYALTYMANAGEMENT_Constants.SOT_CASE).get(caseTypeConstants);
  509.         Case cCase = new Case();
  510.         cCase.Type = caseType;
  511.         cCase.RecordTypeId = caseRecordTypeId;
  512.         insert cCase;
  513.         //String caseItemRecordTypeId = ITA_IFM_UtilClass.retrieveRecordTypeIdByDeveloperName(ITA_IFM_LOYALTYMANAGEMENT_Constants.SOT_CASEITEM, ITA_IFM_LOYALTYMANAGEMENT_Constants.RT_CASE_ITEM_LOYALTY_MANAGEMENT);
  514.         String caseItemRecordTypeId = UTIL_System.getRecordTypeIdsByDeveloperName(ITA_IFM_LOYALTYMANAGEMENT_Constants.SOT_CASEITEM).get(ITA_IFM_LOYALTYMANAGEMENT_Constants.RT_CASE_ITEM_LOYALTY_MANAGEMENT);
  515.         ITA_IFM_Case_Items__c caseItems = new ITA_IFM_Case_Items__c();
  516.         caseItems.ITA_IFM_Case__c = cCase.Id;
  517.         caseItems.RecordTypeId = caseItemRecordTypeId;
  518.         insert caseItems;
  519.         //String quoteRecordTypeId = ITA_IFM_UtilClass.retrieveRecordTypeIdByDeveloperName(ITA_IFM_LOYALTYMANAGEMENT_Constants.SOT_QUOTE, ITA_IFM_LOYALTYMANAGEMENT_Constants.RT_NE_QUOTE_LOYALTY_MANAGEMENT);
  520.         String quoteRecordTypeId = UTIL_System.getRecordTypeIdsByDeveloperName(ITA_IFM_LOYALTYMANAGEMENT_Constants.SOT_QUOTE).get(ITA_IFM_LOYALTYMANAGEMENT_Constants.RT_NE_QUOTE_LOYALTY_MANAGEMENT);
  521.         NE__Quote__c quote = ITA_IFM_TestDataFactory.getSimpleQuote(acc.Id);
  522.         quote.ITA_IFM_Case__c = cCase.Id;
  523.         quote.RecordTypeId = quoteRecordTypeId;
  524.         insert quote;
  525.  
  526.         NE__Order_Header__c orderHeader = ITA_IFM_TestDataFactory.getSimpleOrderHeader(acc.Id, quote.Id);
  527.         insert orderHeader;
  528.  
  529.         NE__Order__c order = ITA_IFM_TestDataFactory.getSimpleOrder(acc.Id, quote.Id, orderHeader.Id);
  530.         insert order;
  531.         //String orderItemRecordTypeId = ITA_IFM_UtilClass.retrieveRecordTypeIdByDeveloperName(ITA_IFM_LOYALTYMANAGEMENT_Constants.SOT_CONFIGURATION_ITEM, ITA_IFM_LOYALTYMANAGEMENT_Constants.ORDERITEM_RECORDTYPE_COMPONENTE);
  532.         String orderItemRecordTypeId = UTIL_System.getRecordTypeIdsByDeveloperName(ITA_IFM_LOYALTYMANAGEMENT_Constants.SOT_CONFIGURATION_ITEM).get(ITA_IFM_LOYALTYMANAGEMENT_Constants.ORDERITEM_RECORDTYPE_COMPONENTE);
  533.         List<NE__OrderItem__c> orderItemsList = new List<NE__OrderItem__c>();
  534.         orderItemsList.add(new NE__OrderItem__c(NE__OrderId__c = order.Id, NE__Qty__c = 1, RecordTypeId = orderItemRecordTypeId));
  535.         insert orderItemsList;
  536.         List<wrts_prcgvr__PhaseTransition__c> transitionPhases = new List<wrts_prcgvr__PhaseTransition__c>();
  537.         transitionPhases.add(new wrts_prcgvr__PhaseTransition__c(wrts_prcgvr__DestinationPhase__c = ITA_IFM_Annulment_Constants.VERTICALE_ANNULMENT));
  538.         transitionPhases.add(new wrts_prcgvr__PhaseTransition__c(wrts_prcgvr__DestinationPhase__c = ITA_IFM_Annulment_Constants.VERTICALE_ANNULMENT));
  539.         insert transitionPhases;
  540.         final String processNameTest = 'Test1';
  541.         final String cancelationCodeTest = '001';
  542.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  543.         ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper annullmentReason = new ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper();
  544.         annullmentReason.orderManagement = true;
  545.         annullmentReason.cancelationCode = cancelationCodeTest;
  546.         annullmentReason.cascade_delete = true;
  547.         annullment.processName = processNameTest;
  548.         Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper> reasonDataMap = new Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper>();
  549.         reasonDataMap.put('Test', annullmentReason);
  550.         annullment.reasonData = reasonDataMap;
  551.         annullment.objectId = orderItemsList[0].Id;
  552.         annullment.selectedCancellationReason = 'Test';
  553.         final Id bpmIdTest = Id.valueOf('0013000000f3aCF');
  554.         final String cancellationReasonTest = 'Cancel';
  555.         final String operationTypeTest = 'OType';
  556.         final String causalProcessTest = 'cProcess';
  557.         final String commodityTest = 'AS38EF12';
  558.         final Boolean orderManagementTest = true;
  559.         final String currentPhaseTest = 'START';
  560.         ITA_IFM_Annulment_InputWrapper inputWrapperCase = new ITA_IFM_Annulment_InputWrapper();
  561.         inputWrapperCase.processName = processNameTest;
  562.         inputWrapperCase.objectName = 'Case';
  563.         inputWrapperCase.objectId = cCase.Id;
  564.         inputWrapperCase.bpmId = bpmIdTest;
  565.         inputWrapperCase.cancellationReason = cancellationReasonTest;
  566.         inputWrapperCase.cancellationCode = ITA_IFM_Annulment_Constants.CASE_RECORD_CODE;
  567.         inputWrapperCase.objectRecordTypeId = caseRecordTypeId;
  568.         inputWrapperCase.operationType = operationTypeTest;
  569.         inputWrapperCase.causalProcess = causalProcessTest;
  570.         inputWrapperCase.commodity = commodityTest;
  571.         inputWrapperCase.orderManagement = orderManagementTest;
  572.         inputWrapperCase.currentPhase = currentPhaseTest;
  573.         ITA_IFM_Annulment_InputWrapper inputWrapperCaseIteam = new ITA_IFM_Annulment_InputWrapper();
  574.         inputWrapperCaseIteam.processName = processNameTest;
  575.         inputWrapperCaseIteam.objectName = 'ITA_IFM_Case_Items__c';
  576.         inputWrapperCaseIteam.objectId = caseItems.Id;
  577.         inputWrapperCaseIteam.bpmId = bpmIdTest;
  578.         inputWrapperCaseIteam.cancellationReason = cancellationReasonTest;
  579.         inputWrapperCaseIteam.cancellationCode = ITA_IFM_Annulment_Constants.CASE_ITEM_RECORD_CODE;
  580.         inputWrapperCaseIteam.objectRecordTypeId = caseItemRecordTypeId;
  581.         inputWrapperCaseIteam.operationType = operationTypeTest;
  582.         inputWrapperCaseIteam.causalProcess = causalProcessTest;
  583.         inputWrapperCaseIteam.commodity = commodityTest;
  584.         inputWrapperCaseIteam.orderManagement = orderManagementTest;
  585.         inputWrapperCaseIteam.currentPhase = currentPhaseTest;
  586.         ITA_IFM_Annulment_InputWrapper inputWrapperQuote = new ITA_IFM_Annulment_InputWrapper();
  587.         inputWrapperQuote.processName = processNameTest;
  588.         inputWrapperQuote.objectName = 'NE__Quote__c';
  589.         inputWrapperQuote.objectId = quote.Id;
  590.         inputWrapperQuote.bpmId = bpmIdTest;
  591.         inputWrapperQuote.cancellationReason = cancellationReasonTest;
  592.         inputWrapperQuote.cancellationCode = ITA_IFM_Annulment_Constants.QUOTE_RECORD_CODE;
  593.         inputWrapperQuote.objectRecordTypeId = quoteRecordTypeId;
  594.         inputWrapperQuote.operationType = operationTypeTest;
  595.         inputWrapperQuote.causalProcess = causalProcessTest;
  596.         inputWrapperQuote.commodity = commodityTest;
  597.         inputWrapperQuote.orderManagement = orderManagementTest;
  598.         inputWrapperQuote.currentPhase = currentPhaseTest;
  599.         ITA_IFM_Annulment_InputWrapper inputWrapperOrderItem = new ITA_IFM_Annulment_InputWrapper();
  600.         inputWrapperOrderItem.processName = processNameTest;
  601.         inputWrapperOrderItem.objectName = 'NE__OrderItem__c';
  602.         inputWrapperOrderItem.objectId = orderItemsList[0].Id;
  603.         inputWrapperOrderItem.bpmId = bpmIdTest;
  604.         inputWrapperOrderItem.cancellationReason = cancellationReasonTest;
  605.         inputWrapperOrderItem.cancellationCode = ITA_IFM_Annulment_Constants.ORDER_ITEM_RECORD_CODE;
  606.         inputWrapperOrderItem.objectRecordTypeId = orderItemRecordTypeId;
  607.         inputWrapperOrderItem.operationType = operationTypeTest;
  608.         inputWrapperOrderItem.causalProcess = causalProcessTest;
  609.         inputWrapperOrderItem.commodity = commodityTest;
  610.         inputWrapperOrderItem.orderManagement = orderManagementTest;
  611.         inputWrapperOrderItem.currentPhase = currentPhaseTest;
  612.         List<ITA_IFM_Annulment_InputWrapper> inputList = new List<ITA_IFM_Annulment_InputWrapper>();
  613.         inputList.add(inputWrapperCase);
  614.         inputList.add(inputWrapperCaseIteam);
  615.         inputList.add(inputWrapperQuote);
  616.         inputList.add(inputWrapperOrderItem);
  617.  
  618.     }
  619.  
  620.       /**
  621.     * @author  Wieslaw Mosakowski <w.mosakowski@accenture.com>
  622.     * @date 06/03/2017
  623.     * @description test method for executeMassiveAnnulment method.
  624.     **/
  625.     @isTest
  626.     private static void prepareCaseCascadeCancelationDataTest() {
  627.         wrts_prcgvr.InstallIntegration.install();
  628.  
  629.         //new ConfigurationIntegration instance
  630.         wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration configCls = (wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration)
  631.                 wrts_prcgvr.VersionManager.newClassInstance('ConfigurationIntegration');
  632.         //nuova configurazione del Phase Manager per uno specifico SObject e Field
  633.         configCls.addPhaseManagerSObject(new Map<String, String>{
  634.                 'name' => 'Case',
  635.                 'objectType' => 'Case',
  636.                 'phaseField' => 'ITA_IFM_Phase__c'
  637.         });
  638.  
  639.  
  640.         Account aAccount = ITA_IFM_TestDataFactory.getSimpleAccount();
  641.         insert aAccount;
  642.  
  643.         Case cCase = ITA_IFM_TestDataFactory.getSimpleCase(aAccount.ID);
  644.         cCase.ITA_IFM_Phase__c = 'test1';
  645.  
  646.  
  647.         // case.ITA_IFM_Phase__c = 'ANNULLAMENTOSALESFORCE';
  648.         insert cCase;
  649.  
  650. //        ITA_IFM_Case_Items__c caseItem = ITA_IFM_TestDataFactory.getSimpleCaseItem(cCase.ID);
  651. //        insert caseItem;
  652.  
  653.  
  654.         wrts_prcgvr__PhaseTransition__c transitions = new wrts_prcgvr__PhaseTransition__c();
  655.         transitions.wrts_prcgvr__OriginPhase__c = 'test1';
  656.         transitions.wrts_prcgvr__DestinationPhase__c = 'ANNULLAMENTOSALESFORCE';
  657.         transitions.wrts_prcgvr__RecordTypeId__c = cCase.RecordTypeId;
  658.         //  transitions.wrts_prcgvr__RecordTypeName__c = cCase.RecordTypeId.Name;
  659.         insert transitions;
  660.  
  661.         String processNameTest = 'Test1';
  662.         String cancelationCodeTest = '001';
  663.  
  664.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  665.  
  666.         ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper annullmentReason = new ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper();
  667.         annullmentReason.orderManagement = true;
  668.         annullmentReason.cancelationCode = cancelationCodeTest;
  669.         annullmentReason.cascade_delete = true;
  670.         annullment.processName = processNameTest;
  671.  
  672.         Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper> reasonDataMap = new Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper>();
  673.         reasonDataMap.put('Test', annullmentReason);
  674.         annullment.reasonData = reasonDataMap;
  675.         annullment.objectId = cCase.Id;
  676.         annullment.selectedCancellationReason = 'Test';
  677.         List<ITA_IFM_Annulment_InputWrapper> result = annullment.prepareCaseCascadeCancelationData(cCase.ID);
  678.         // System.debug('ITA_IFM_Annulment_InputWrapper result : '+result[0].cancellationCode);
  679.         //System.assertEquals(cancelationCodeTest,result[0].cancellationCode);
  680.  
  681.  
  682.     }
  683.  
  684.       /**
  685.     * @author  Wieslaw Mosakowski <w.mosakowski@accenture.com>
  686.     * @date 06/03/2017
  687.     * @description test method for executeMassiveAnnulment method.
  688.     **/
  689.  
  690.     @isTest
  691.     private static void updatedAfterOrderManagementOrderItemTest() {
  692.         wrts_prcgvr.InstallIntegration.install();
  693.  
  694.         //new ConfigurationIntegration instance
  695.         wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration configCls = (wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration)
  696.                 wrts_prcgvr.VersionManager.newClassInstance('ConfigurationIntegration');
  697.         //nuova configurazione del Phase Manager per uno specifico SObject e Field
  698.         configCls.addPhaseManagerSObject(new Map<String, String>{
  699.                 'name' => 'Configuration Item',
  700.                 'objectType' => 'NE__OrderItem__c',
  701.                 'phaseField' => 'ITA_IFM_Phase__c'
  702.         });
  703.  
  704.         Account aAccount = ITA_IFM_TestDataFactory.getSimpleResidentialAccount();
  705.         insert aAccount;
  706.  
  707.         NE__Quote__c qQuote = ITA_IFM_TestDataFactory.getSimpleQuote(aAccount.id);
  708.         insert qQuote;
  709.  
  710.         NE__Order_Header__c oOrderHeader = ITA_IFM_TestDataFactory.getSimpleOrderHeader(aAccount.id, qQuote.id);
  711.         insert oOrderHeader;
  712.  
  713.         NE__Order__c oOrder = ITA_IFM_TestDataFactory.getSimpleOrder(aAccount.id, qQuote.id, oOrderHeader.id);
  714.         insert oOrder;
  715.  
  716.         NE__Product__c pProduct = ITA_IFM_TestDataFactory.getSimpleProduct();
  717.         insert pProduct;
  718.  
  719.         NE__OrderItem__c oOrderItem = ITA_IFM_TestDataFactory.getSimpleOrderItem(aAccount.id, oOrder.id, pProduct.id);
  720.         List<NE__OrderItem__c> orderItemList = new List<NE__OrderItem__c>{
  721.                 oOrderItem
  722.         };
  723.         insert orderItemList;
  724.  
  725.         String processNameTest = 'Test1';
  726.         String cancelationCodeTest = '001';
  727.  
  728.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  729.  
  730.         ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper annullmentReason = new ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper();
  731.         annullmentReason.orderManagement = true;
  732.         annullmentReason.cancelationCode = cancelationCodeTest;
  733.         annullmentReason.cascade_delete = true;
  734.         annullment.processName = processNameTest;
  735.  
  736.         Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper> reasonDataMap = new Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper>();
  737.         reasonDataMap.put('Test', annullmentReason);
  738.         annullment.reasonData = reasonDataMap;
  739.         annullment.objectId = oOrderItem.Id;
  740.         annullment.selectedCancellationReason = 'Test';
  741.         boolean result = annullment.updatedAfterOrderManagement(new List<Id>(new Map<Id, NE__OrderItem__c>(orderItemList).keySet()));
  742.     }
  743.  
  744.     /**
  745.     * @author  Wieslaw Mosakowski <w.mosakowski@accenture.com>
  746.     * @date 06/03/2017
  747.     * @description test method for updatedAfterOrderManagement method.
  748.     **/
  749.  
  750.     // here
  751.  
  752.     @isTest
  753.     private static void updatedAfterOrderManagementCaseTest() {
  754.         wrts_prcgvr.InstallIntegration.install();
  755.  
  756.         //new ConfigurationIntegration instance
  757.         wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration configCls = (wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration)
  758.                 wrts_prcgvr.VersionManager.newClassInstance('ConfigurationIntegration');
  759.         //nuova configurazione del Phase Manager per uno specifico SObject e Field
  760.         configCls.addPhaseManagerSObject(new Map<String, String>{
  761.                 'name' => 'Case',
  762.                 'objectType' => 'Case',
  763.                 'phaseField' => 'ITA_IFM_Phase__c'
  764.         });
  765.  
  766.         Account aAccount = ITA_IFM_TestDataFactory.getSimpleResidentialAccount();
  767.         insert aAccount;
  768.  
  769.         Case cCase = ITA_IFM_TestDataFactory.getSimpleCase(aAccount.ID);
  770.         cCase.ITA_IFM_Phase__c = 'ANNULLAMENTOSALESFORCE';
  771.         // case.ITA_IFM_Phase__c = 'ANNULLAMENTOSALESFORCE';
  772.         insert cCase;
  773.  
  774.         String processNameTest = 'Test1';
  775.         String cancelationCodeTest = '001';
  776.  
  777.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  778.  
  779.         ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper annullmentReason = new ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper();
  780.         annullmentReason.orderManagement = true;
  781.         annullmentReason.cancelationCode = cancelationCodeTest;
  782.         annullmentReason.cascade_delete = true;
  783.         annullment.processName = processNameTest;
  784.  
  785.         Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper> reasonDataMap = new Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper>();
  786.         reasonDataMap.put('Test', annullmentReason);
  787.         annullment.reasonData = reasonDataMap;
  788.         annullment.objectId = cCase.Id;
  789.         annullment.selectedCancellationReason = 'Test';
  790.         boolean result = annullment.updatedAfterOrderManagement(new List<Id>(new Map<Id, Case>(cCase).keySet()));
  791.     }
  792.  
  793.      /**
  794.     * @author  Wieslaw Mosakowski <w.mosakowski@accenture.com>
  795.     * @date 06/03/2017
  796.     * @description test method for updatedAfterOrderManagement method. Case Item
  797.     **/
  798.  
  799.     // here
  800.  
  801.     @isTest
  802.     private static void updatedAfterOrderManagementCaseItemTest() {
  803.         wrts_prcgvr.InstallIntegration.install();
  804.  
  805.         //new ConfigurationIntegration instance
  806.         wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration configCls = (wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration)
  807.                 wrts_prcgvr.VersionManager.newClassInstance('ConfigurationIntegration');
  808.         //nuova configurazione del Phase Manager per uno specifico SObject e Field
  809.         configCls.addPhaseManagerSObject(new Map<String, String>{
  810.                 'name' => 'Case Item',
  811.                 'objectType' => 'ITA_IFM_Case_Items__c',
  812.                 'phaseField' => 'ITA_IFM_Phase__c'
  813.         });
  814.  
  815.         Account aAccount = ITA_IFM_TestDataFactory.getSimpleResidentialAccount();
  816.         insert aAccount;
  817.  
  818.         Case cCase = ITA_IFM_TestDataFactory.getSimpleCase(aAccount.ID);
  819.         cCase.ITA_IFM_Phase__c = 'ANNULLAMENTOSALESFORCE';
  820.         // case.ITA_IFM_Phase__c = 'ANNULLAMENTOSALESFORCE';
  821.         insert cCase;
  822.  
  823.         ITA_IFM_Case_Items__c caseItem = new ITA_IFM_Case_Items__c();
  824.         caseItem.ITA_IFM_Case__c = cCase.Id;
  825.         insert caseItem;
  826.  
  827.         String processNameTest = 'Test1';
  828.         String cancelationCodeTest = '001';
  829.  
  830.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  831.  
  832.         ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper annullmentReason = new ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper();
  833.         annullmentReason.orderManagement = true;
  834.         annullmentReason.cancelationCode = cancelationCodeTest;
  835.         annullmentReason.cascade_delete = true;
  836.         annullment.processName = processNameTest;
  837.  
  838.         Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper> reasonDataMap = new Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper>();
  839.         reasonDataMap.put('Test', annullmentReason);
  840.         annullment.reasonData = reasonDataMap;
  841.         annullment.objectId = cCase.Id;
  842.         annullment.selectedCancellationReason = 'Test';
  843.         boolean result = annullment.updatedAfterOrderManagement(new List<Id>(new Map<Id, ITA_IFM_Case_Items__c>(caseItem).keySet()));
  844.     }
  845.  
  846.       /**
  847.     * @author  Wieslaw Mosakowski <w.mosakowski@accenture.com>
  848.     * @date 06/03/2017
  849.     * @description test method for executeMassiveAnnulment method.
  850.     **/
  851.  
  852.     @isTest
  853.     private static void setCompatibleFlagTest() {
  854.         wrts_prcgvr.InstallIntegration.install();
  855.  
  856.         //new ConfigurationIntegration instance
  857.         wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration configCls = (wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration)
  858.                 wrts_prcgvr.VersionManager.newClassInstance('ConfigurationIntegration');
  859.         //nuova configurazione del Phase Manager per uno specifico SObject e Field
  860.         configCls.addPhaseManagerSObject(new Map<String, String>{
  861.                 'name' => 'Configuration Item',
  862.                 'objectType' => 'NE__OrderItem__c',
  863.                 'phaseField' => 'ITA_IFM_Phase__c'
  864.         });
  865.  
  866.         Account aAccount = ITA_IFM_TestDataFactory.getSimpleResidentialAccount();
  867.         insert aAccount;
  868.  
  869.         NE__Quote__c qQuote = ITA_IFM_TestDataFactory.getSimpleQuote(aAccount.id);
  870.         insert qQuote;
  871.  
  872.         NE__Order_Header__c oOrderHeader = ITA_IFM_TestDataFactory.getSimpleOrderHeader(aAccount.id, qQuote.id);
  873.         insert oOrderHeader;
  874.  
  875.         NE__Order__c oOrder = ITA_IFM_TestDataFactory.getSimpleOrder(aAccount.id, qQuote.id, oOrderHeader.id);
  876.         insert oOrder;
  877.  
  878.         NE__Product__c pProduct = ITA_IFM_TestDataFactory.getSimpleProduct();
  879.         insert pProduct;
  880.  
  881.         NE__OrderItem__c oOrderItem = ITA_IFM_TestDataFactory.getSimpleOrderItem(aAccount.id, oOrder.id, pProduct.id);
  882.         insert oOrderItem;
  883.  
  884.         String processNameTest = 'Test1';
  885.         String cancelationCodeTest = '001';
  886.  
  887.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  888.  
  889.         ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper annullmentReason = new ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper();
  890.         annullmentReason.orderManagement = true;
  891.         annullmentReason.cancelationCode = cancelationCodeTest;
  892.         annullmentReason.cascade_delete = true;
  893.         annullment.processName = processNameTest;
  894.  
  895.         Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper> reasonDataMap = new Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper>();
  896.         reasonDataMap.put('Test', annullmentReason);
  897.         annullment.reasonData = reasonDataMap;
  898.         annullment.objectId = oOrderItem.Id;
  899.         annullment.selectedCancellationReason = 'Test';
  900.         annullment.setCompatibleFlag(oOrderItem);
  901.     }
  902.  
  903.       /**
  904.     * @author  Wieslaw Mosakowski <w.mosakowski@accenture.com>
  905.     * @date 06/03/2017
  906.     * @description test method for executeMassiveAnnulment method.
  907.     **/
  908.  
  909.     @isTest
  910.     private static void preliminaryChecksApiNameEqualsToNEOrderItemTest() {
  911.         wrts_prcgvr.InstallIntegration.install();
  912.  
  913.         //new ConfigurationIntegration instance
  914.         wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration configCls = (wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration)
  915.                 wrts_prcgvr.VersionManager.newClassInstance('ConfigurationIntegration');
  916.         //nuova configurazione del Phase Manager per uno specifico SObject e Field
  917.         configCls.addPhaseManagerSObject(new Map<String, String>{
  918.                 'name' => 'Configuration Item',
  919.                 'objectType' => 'NE__OrderItem__c',
  920.                 'phaseField' => 'ITA_IFM_Phase__c'
  921.         });
  922.  
  923.         Account aAccount = ITA_IFM_TestDataFactory.getSimpleResidentialAccount();
  924.         insert aAccount;
  925.  
  926.         NE__Quote__c qQuote = ITA_IFM_TestDataFactory.getSimpleQuote(aAccount.id);
  927.         insert qQuote;
  928.  
  929.         NE__Order_Header__c oOrderHeader = ITA_IFM_TestDataFactory.getSimpleOrderHeader(aAccount.id, qQuote.id);
  930.         insert oOrderHeader;
  931.  
  932.         NE__Order__c oOrder = ITA_IFM_TestDataFactory.getSimpleOrder(aAccount.id, qQuote.id, oOrderHeader.id);
  933.         insert oOrder;
  934.  
  935.         NE__Product__c pProduct = ITA_IFM_TestDataFactory.getSimpleProduct();
  936.         insert pProduct;
  937.  
  938.         NE__OrderItem__c oOrderItem = ITA_IFM_TestDataFactory.getSimpleOrderItem(aAccount.id, oOrder.id, pProduct.id);
  939.         insert oOrderItem;
  940.  
  941.         String processNameTest = 'Test1';
  942.         String cancelationCodeTest = '001';
  943.  
  944.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  945.  
  946.         ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper annullmentReason = new ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper();
  947.         annullmentReason.orderManagement = true;
  948.         annullmentReason.cancelationCode = cancelationCodeTest;
  949.         annullmentReason.cascade_delete = true;
  950.         annullment.processName = processNameTest;
  951.  
  952.         Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper> reasonDataMap = new Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper>();
  953.         reasonDataMap.put('Test', annullmentReason);
  954.         annullment.reasonData = reasonDataMap;
  955.         annullment.objectId = oOrderItem.Id;
  956.         annullment.selectedCancellationReason = 'Test';
  957.         annullment.preliminaryChecks();
  958.     }
  959.  
  960.        /**
  961.     * @author  Wieslaw Mosakowski <w.mosakowski@accenture.com>
  962.     * @date 06/03/2017
  963.     * @description test method for executeMassiveAnnulment method.
  964.     **/
  965.  
  966.     @isTest
  967.     private static void preliminaryChecksApiNameEqualsToCaseTest() {
  968.         wrts_prcgvr.InstallIntegration.install();
  969.  
  970.         //new ConfigurationIntegration instance
  971.         wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration configCls = (wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration)
  972.                 wrts_prcgvr.VersionManager.newClassInstance('ConfigurationIntegration');
  973.         //nuova configurazione del Phase Manager per uno specifico SObject e Field
  974.         configCls.addPhaseManagerSObject(new Map<String, String>{
  975.                 'name' => 'Case',
  976.                 'objectType' => 'Case',
  977.                 'phaseField' => 'ITA_IFM_Phase__c'
  978.         });
  979.  
  980.         Account aAccount = ITA_IFM_TestDataFactory.getSimpleResidentialAccount();
  981.         insert aAccount;
  982.  
  983.         Case cCase = ITA_IFM_TestDataFactory.getSimpleCase(aAccount.ID);
  984.         cCase.ITA_IFM_Phase__c = 'ANNULLAMENTOSALESFORCE';
  985.         // case.ITA_IFM_Phase__c = 'ANNULLAMENTOSALESFORCE';
  986.         insert cCase;
  987.  
  988.         String processNameTest = 'Test1';
  989.         String cancelationCodeTest = '001';
  990.  
  991.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  992.  
  993.         ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper annullmentReason = new ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper();
  994.         annullmentReason.orderManagement = true;
  995.         annullmentReason.cancelationCode = cancelationCodeTest;
  996.         annullmentReason.cascade_delete = true;
  997.         annullment.processName = processNameTest;
  998.  
  999.         Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper> reasonDataMap = new Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper>();
  1000.         reasonDataMap.put('Test', annullmentReason);
  1001.         annullment.reasonData = reasonDataMap;
  1002.         annullment.objectId = cCase.Id;
  1003.         annullment.selectedCancellationReason = 'Test';
  1004.         annullment.preliminaryChecks();
  1005.     }
  1006.  
  1007.      /**
  1008.     * @author  Wieslaw Mosakowski <w.mosakowski@accenture.com>
  1009.     * @date 06/03/2017
  1010.     * @description test method for executeMassiveAnnulment method.
  1011.     **/
  1012.  
  1013.     @isTest
  1014.     private static void preliminaryChecksApiNameEqualsToQuoteTest() {
  1015.         wrts_prcgvr.InstallIntegration.install();
  1016.  
  1017.         //new ConfigurationIntegration instance
  1018.         wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration configCls = (wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration)
  1019.                 wrts_prcgvr.VersionManager.newClassInstance('ConfigurationIntegration');
  1020.         //nuova configurazione del Phase Manager per uno specifico SObject e Field
  1021.         configCls.addPhaseManagerSObject(new Map<String, String>{
  1022.                 'name' => 'Offerta',
  1023.                 'objectType' => 'NE__Quote__c',
  1024.                 'phaseField' => 'ITA_IFM_Phase__c'
  1025.         });
  1026.  
  1027.         Account aAccount = ITA_IFM_TestDataFactory.getSimpleResidentialAccount();
  1028.         insert aAccount;
  1029.  
  1030.         NE__Quote__c qQuote = ITA_IFM_TestDataFactory.getSimpleQuote(aAccount.id);
  1031.         insert qQuote;
  1032.  
  1033.         Case cCase = ITA_IFM_TestDataFactory.getSimpleCase(aAccount.ID);
  1034.         cCase.ITA_IFM_Phase__c = 'ANNULLAMENTOSALESFORCE';
  1035.         // case.ITA_IFM_Phase__c = 'ANNULLAMENTOSALESFORCE';
  1036.         insert cCase;
  1037.  
  1038.         String processNameTest = 'Test1';
  1039.         String cancelationCodeTest = '001';
  1040.  
  1041.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  1042.  
  1043.         ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper annullmentReason = new ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper();
  1044.         annullmentReason.orderManagement = true;
  1045.         annullmentReason.cancelationCode = cancelationCodeTest;
  1046.         annullmentReason.cascade_delete = true;
  1047.         annullment.processName = processNameTest;
  1048.  
  1049.         Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper> reasonDataMap = new Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper>();
  1050.         reasonDataMap.put('Test', annullmentReason);
  1051.         annullment.reasonData = reasonDataMap;
  1052.         annullment.objectId = qQuote.Id;
  1053.         annullment.selectedCancellationReason = 'Test';
  1054.         annullment.preliminaryChecks();
  1055.     }
  1056.  
  1057.       /**
  1058.     * @author  Wieslaw Mosakowski <w.mosakowski@accenture.com>
  1059.     * @date 06/03/2017
  1060.     * @description test method for executeMassiveAnnulment method.
  1061.     **/
  1062.  
  1063.      // HERE
  1064.  
  1065.     @isTest
  1066.     private static void preliminaryChecksApiNameEqualsToCaseItemTest() {
  1067.         wrts_prcgvr.InstallIntegration.install();
  1068.  
  1069.         //new ConfigurationIntegration instance
  1070.         wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration configCls = (wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration)
  1071.                 wrts_prcgvr.VersionManager.newClassInstance('ConfigurationIntegration');
  1072.         //nuova configurazione del Phase Manager per uno specifico SObject e Field
  1073.         configCls.addPhaseManagerSObject(new Map<String, String>{
  1074.                 'name' => 'Case Item',
  1075.                 'objectType' => 'ITA_IFM_Case_Items__c',
  1076.                 'phaseField' => 'ITA_IFM_Phase__c'
  1077.         });
  1078.  
  1079.         Account aAccount = ITA_IFM_TestDataFactory.getSimpleResidentialAccount();
  1080.         insert aAccount;
  1081.  
  1082.         NE__Quote__c qQuote = ITA_IFM_TestDataFactory.getSimpleQuote(aAccount.id);
  1083.         insert qQuote;
  1084.  
  1085.         Case cCase = ITA_IFM_TestDataFactory.getSimpleCase(aAccount.ID);
  1086.         cCase.ITA_IFM_Phase__c = 'ANNULLAMENTOSALESFORCE';
  1087.         // case.ITA_IFM_Phase__c = 'ANNULLAMENTOSALESFORCE';
  1088.         insert cCase;
  1089.  
  1090.         ITA_IFM_Case_Items__c caseItems = new ITA_IFM_Case_Items__c();
  1091.         caseItems.ITA_IFM_Case__c = cCase.Id;
  1092.         insert caseItems;
  1093.  
  1094.         String processNameTest = 'Test1';
  1095.         String cancelationCodeTest = '001';
  1096.  
  1097.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  1098.  
  1099.         ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper annullmentReason = new ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper();
  1100.         annullmentReason.orderManagement = true;
  1101.         annullmentReason.cancelationCode = cancelationCodeTest;
  1102.         annullmentReason.cascade_delete = true;
  1103.         annullment.processName = processNameTest;
  1104.  
  1105.         Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper> reasonDataMap = new Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper>();
  1106.         reasonDataMap.put('Test', annullmentReason);
  1107.         annullment.reasonData = reasonDataMap;
  1108.         annullment.objectId = caseItems.Id;
  1109.         annullment.selectedCancellationReason = 'Test';
  1110.         annullment.preliminaryChecks();
  1111.     }
  1112.  
  1113.     /**
  1114.     * @author  Wieslaw Mosakowski <w.mosakowski@accenture.com>
  1115.     * @date 06/03/2017
  1116.     * @description test method for preliminaryChecks method. Account is not compatible with Annulment
  1117.     **/
  1118.  
  1119.     @isTest
  1120.     private static void preliminaryChecksApiNameNotCompatibleTest() {
  1121.  
  1122.         Account aAccount = ITA_IFM_TestDataFactory.getSimpleResidentialAccount();
  1123.         insert aAccount;
  1124.  
  1125.         String processNameTest = 'Test1';
  1126.         String cancelationCodeTest = '001';
  1127.  
  1128.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  1129.  
  1130.         ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper annullmentReason = new ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper();
  1131.         annullmentReason.orderManagement = true;
  1132.         annullmentReason.cancelationCode = cancelationCodeTest;
  1133.         annullmentReason.cascade_delete = true;
  1134.         annullment.processName = processNameTest;
  1135.  
  1136.         Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper> reasonDataMap = new Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper>();
  1137.         reasonDataMap.put('Test', annullmentReason);
  1138.         annullment.reasonData = reasonDataMap;
  1139.         annullment.objectId = aAccount.Id;
  1140.         annullment.selectedCancellationReason = 'Test';
  1141.         annullment.preliminaryChecks();
  1142.     }
  1143.  
  1144.      /**
  1145.     * @author  Wieslaw.Mosakowski <w.mosakowski@accenture.com>
  1146.     * @date 08/03/2017
  1147.     * @description test method for prepareCancelationReasonList method.
  1148.     **/
  1149.     @isTest
  1150.     private static void executeMassiveAnnulmentTest() {
  1151.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  1152.         annullment.emptyCancellationReason = false;
  1153.         PageReference result = annullment.executeMassiveAnnulment();
  1154.         System.assertEquals(null, result);
  1155.     }
  1156.  
  1157.       /**
  1158.     * @author  Roland Nieznanski <roland.nieznanskii@accenture.com>
  1159.     * @date 30/12/2016
  1160.     * @description test method for prepareCancelationReasonList method.
  1161.     **/
  1162.     @isTest
  1163.     private static void doNullTest() {
  1164.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  1165.         annullment.emptyCancellationReason = false;
  1166.         annullment.doNull();
  1167.     }
  1168.  
  1169.     /**
  1170.     * @author  Wieslaw.Mosakowski <w.mosakowski@accenture.com>
  1171.     * @date 08/03/2017
  1172.     * @description test method for prepareCancelationReasonList method.
  1173.     **/
  1174.     @isTest
  1175.     private static void redirectToTargetTest() {
  1176.         Case cCase = new Case();
  1177.         insert cCase;
  1178.  
  1179.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  1180.         annullment.objectId = cCase.ID;
  1181.         annullment.emptyCancellationReason = false;
  1182.         PageReference result = annullment.redirectToTarget();
  1183.         PageReference expected = new PageReference('/' + cCase.ID);
  1184.         System.assertEquals(result.getUrl(), expected.getUrl());
  1185.     }
  1186.  
  1187.         /**
  1188.     * @author  Wieslaw.Mosakowski <w.mosakowski@accenture.com>
  1189.     * @date 08/03/2017
  1190.     * @description Test Helper method. ITA_IFM_CaseAnnulmentReason__c.ITA_IFM_Close_Modal__c = true / false
  1191.     **/
  1192.  
  1193.     private static void executiveMassiveAnnulmentCloseModalHelper(boolean modalValue)
  1194.     {
  1195.         wrts_prcgvr.InstallIntegration.install();
  1196.  
  1197.         //new ConfigurationIntegration instance
  1198.         wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration configCls = (wrts_prcgvr.Interfaces_1_0.IConfigurationIntegration)
  1199.                 wrts_prcgvr.VersionManager.newClassInstance('ConfigurationIntegration');
  1200.         //nuova configurazione del Phase Manager per uno specifico SObject e Field
  1201.         configCls.addPhaseManagerSObject(new Map<String, String>{
  1202.                 'name' => 'Case Item',
  1203.                 'objectType' => 'ITA_IFM_Case_Items__c',
  1204.                 'phaseField' => 'ITA_IFM_Phase__c'
  1205.         });
  1206.  
  1207.         configCls.addPhaseManagerSObject(new Map<String, String>{
  1208.                 'name' => 'Case',
  1209.                 'objectType' => 'Case',
  1210.                 'phaseField' => 'ITA_IFM_Phase__c'
  1211.         });
  1212.  
  1213.         Account acc = ITA_IFM_TestDataFactory.getSimpleAccount();
  1214.         insert acc;
  1215.         Case cCase = new Case();
  1216.         insert cCase;
  1217.         ITA_IFM_Case_Items__c caseItems = new ITA_IFM_Case_Items__c();
  1218.         caseItems.ITA_IFM_Case__c = cCase.Id;
  1219.         insert caseItems;
  1220.         NE__Quote__c quote = ITA_IFM_TestDataFactory.getSimpleQuote(acc.Id);
  1221.         quote.ITA_IFM_Case__c = cCase.Id;
  1222.         insert quote;
  1223.  
  1224.         NE__Order_Header__c orderHeader = ITA_IFM_TestDataFactory.getSimpleOrderHeader(acc.Id, quote.Id);
  1225.         insert orderHeader;
  1226.  
  1227.         NE__Order__c order = ITA_IFM_TestDataFactory.getSimpleOrder(acc.Id, quote.Id, orderHeader.Id);
  1228.         insert order;
  1229.         List<NE__OrderItem__c> orderItemsList = new List<NE__OrderItem__c>();
  1230.         orderItemsList.add(new NE__OrderItem__c(NE__OrderId__c = order.Id, NE__Qty__c = 1));
  1231.         insert orderItemsList;
  1232.  
  1233.         ITA_IFM_Annulment_InputWrapper annulment_inputWrapper = new ITA_IFM_Annulment_InputWrapper();
  1234.         annulment_inputWrapper.processName = 'Drop';
  1235.         annulment_inputWrapper.objectName = 'Case';
  1236.         annulment_inputWrapper.objectId = cCase.Id;
  1237.         annulment_inputWrapper.bpmId = String.valueOf(caseItems.Id).substring(0, 15);
  1238.         annulment_inputWrapper.cancellationReason = 'Test';
  1239.         annulment_inputWrapper.cancellationCode = '001';
  1240.         annulment_inputWrapper.objectRecordTypeId = cCase.recordTypeId;
  1241.         annulment_inputWrapper.operationType = 'TestType';
  1242.         annulment_inputWrapper.causalProcess = 'Test1';
  1243.         annulment_inputWrapper.commodity = 'A23Sft69L';
  1244.         annulment_inputWrapper.orderManagement = true;
  1245.         annulment_inputWrapper.currentPhase = 'Start';
  1246.  
  1247.         String cancelationCodeTest = 'Test1';
  1248.         String processNameTest = 'Test1';
  1249.  
  1250.         ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  1251.  
  1252.         ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper annullmentReason = new ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper();
  1253.         annullmentReason.orderManagement = true;
  1254.         annullmentReason.cancelationCode = cancelationCodeTest;
  1255.         annullmentReason.cascade_delete = true;
  1256.         annullment.processName = processNameTest;
  1257.         Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper> reasonDataMap = new Map<String, ITA_IFM_Annulment.cancellationReasonRelatedDataWrapper>();
  1258.         reasonDataMap.put('Test', annullmentReason);
  1259.         annullment.reasonData = reasonDataMap;
  1260.  
  1261.         annullment.objectId = cCase.ID;
  1262.         annullment.selectedCancellationReason = 'Test';
  1263.         annullment.emptyCancellationReason = false;
  1264.         List<ITA_IFM_CaseAnnulmentReason__c> caseAnnulmentReasons = new List<ITA_IFM_CaseAnnulmentReason__c>();
  1265.         caseAnnulmentReasons.add(new ITA_IFM_CaseAnnulmentReason__c(ITA_IFM_ProcessName__c = 'Test1', ITA_IFM_Action__c = 'DROP', ITA_IFM_Hidden_c__c = false, ITA_IFM_ReasonforAnnulment__c = 'Test2', ITA_IFM_Close_Modal__c = modalValue));
  1266.         insert caseAnnulmentReasons;
  1267.         //  annullment.cancellationReasons = caseAnnulmentReasons;
  1268.         annullment.isQuickAction = false;
  1269.         annullment.prepareCancelationReasonList();
  1270.         annullment.executeRecordCancellation();
  1271.     }
  1272.  
  1273.     /**
  1274.     * @author  Wieslaw.Mosakowski <w.mosakowski@accenture.com>
  1275.     * @date 08/03/2017
  1276.     * @description test method for prepareCancelationReasonList method.
  1277.     **/
  1278.     @isTest
  1279.     private static void executeMassiveAnnulmentCaseListIsNotEmptyCloseModalTrueTest() {
  1280.         executiveMassiveAnnulmentCloseModalHelper(true);
  1281.     }
  1282.  
  1283.         /**
  1284.     * @author  Wieslaw.Mosakowski <w.mosakowski@accenture.com>
  1285.     * @date 08/03/2017
  1286.     * @description test method for prepareCancelationReasonList method.
  1287.     **/
  1288.     @isTest
  1289.     private static void executeMassiveAnnulmentCaseListIsNotEmptyCloseModalFalseTest() {
  1290.         executiveMassiveAnnulmentCloseModalHelper(false);
  1291.     }
  1292.  
  1293. //    /**
  1294. //    * @author  Wieslaw.Mosakowski <w.mosakowski@accenture.com>
  1295. //    * @date 30/12/2016
  1296. //    * @description test method for prepareCancelationReasonList method.
  1297. //    **/
  1298. //    @isTest
  1299. //    private static void prepareCancelationReasonListCloseModalTrueTest() {
  1300. //        final String processNameTest = 'Test1';
  1301. //        ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  1302. //        annullment.processName = processNameTest;
  1303. //        annullment.emptyCancellationReason = false;
  1304. //        List<ITA_IFM_CaseAnnulmentReason__c> caseAnnulmentReasons = new List<ITA_IFM_CaseAnnulmentReason__c>();
  1305. //        caseAnnulmentReasons.add(new ITA_IFM_CaseAnnulmentReason__c(ITA_IFM_ProcessName__c = 'Test1', ITA_IFM_Action__c = 'DROP', ITA_IFM_Hidden_c__c = false, ITA_IFM_ReasonforAnnulment__c = 'Test2', ITA_IFM_Close_Modal__c = true));
  1306. //        insert caseAnnulmentReasons;
  1307. //        annullment.prepareCancelationReasonList();
  1308. //        System.assertEquals(false, annullment.emptyCancellationReason);
  1309. //    }
  1310. //
  1311. //
  1312. //    /**
  1313. //    * @author  Wieslaw.Mosakowski <w.mosakowski@accenture.com>
  1314. //    * @date 30/12/2016
  1315. //    * @description test method for prepareCancelationReasonList method.
  1316. //    **/
  1317. //    @isTest
  1318. //    private static void prepareCancelationReasonListCloseModalFalseTest() {
  1319. //        final String processNameTest = 'Test1';
  1320. //        ITA_IFM_Annulment annullment = new ITA_IFM_Annulment();
  1321. //        annullment.processName = processNameTest;
  1322. //        annullment.emptyCancellationReason = false;
  1323. //        List<ITA_IFM_CaseAnnulmentReason__c> caseAnnulmentReasons = new List<ITA_IFM_CaseAnnulmentReason__c>();
  1324. //        caseAnnulmentReasons.add(new ITA_IFM_CaseAnnulmentReason__c(ITA_IFM_ProcessName__c = 'Test1', ITA_IFM_Action__c = 'DROP', ITA_IFM_Hidden_c__c = false, ITA_IFM_ReasonforAnnulment__c = 'Test2', ITA_IFM_Close_Modal__c = false));
  1325. //        insert caseAnnulmentReasons;
  1326. //        annullment.prepareCancelationReasonList();
  1327. //        System.assertEquals(false, annullment.emptyCancellationReason);
  1328. //    }
  1329.  
  1330. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement