@isTest private class LastbuyProductHandlerTest { @isTest static void TestMethod1() { Product2 pro = new Product2(); pro.Name = 'Testname0215'; pro.LastbuyProductFLG__c = false; insert pro; Product2 pro1 = new Product2(); pro1.Name = 'Testname0216'; pro1.LastbuyProductFLG__c = false; insert pro1; Address_Level__c al = new Address_Level__c(); al.Name = '北京'; al.Level1_Code__c = 'CN-99'; al.Level1_Sys_No__c = '999999'; insert al; // 市 Address_Level2__c al2 = new Address_Level2__c(); al2.Level1_Code__c = 'CN-99'; al2.Level1_Sys_No__c = '999999'; al2.Level1_Name__c = '北京'; al2.Name = '海淀区'; al2.Level2_Code__c = 'CN-9999'; al2.Level2_Sys_No__c = '9999999'; al2.Address_Level__c = al.id; insert al2; Account company = new Account(); company.Name = 'aiueo病院'; company.RecordTypeId = Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('HP').getRecordTypeId(); company.State_Master__c = al.Id; company.City_Master__c = al2.Id; insert company; Account sct = [Select Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c from Account where Parent.Id = :company.Id and RecordTypeId = :Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('Department_Class_BF').getRecordTypeId() Limit 1]; Account depart = new Account(); depart.RecordTypeId = Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('Department_BF').getRecordTypeId(); depart.Name = '*'; depart.Department_Name__c = 'aiueo診療科'; depart.ParentId = sct.Id; depart.Department_Class__c = sct.Id; depart.Hospital__c = company.Id; insert depart; StaticParameter.EscapeOpportunityBefUpdTrigger = true; Opportunity opp1 = new Opportunity(Name = 'aiueo商談', StageName = 'contact', CloseDate=Date.today(), SAP_Send_OK__c = false, AccountId = depart.Id); insert opp1; LastbuyProduct__c lbp = new LastbuyProduct__c(); lbp.Name = 'Test0215'; lbp.ProductName__c = pro.Id; lbp.InquiryCode__c = opp1.Id; lbp.effectiveFLG__c = true; insert lbp; lbp.effectiveFLG__c = false; update lbp; lbp.effectiveFLG__c = true; update lbp; delete lbp; } @isTest static void TestMethod2() { Product2 pro = new Product2(); pro.Name = 'Testname0215'; pro.LastbuyProductFLG__c = false; insert pro; Address_Level__c al = new Address_Level__c(); al.Name = '北京'; al.Level1_Code__c = 'CN-99'; al.Level1_Sys_No__c = '999999'; insert al; // 市 Address_Level2__c al2 = new Address_Level2__c(); al2.Level1_Code__c = 'CN-99'; al2.Level1_Sys_No__c = '999999'; al2.Level1_Name__c = '北京'; al2.Name = '海淀区'; al2.Level2_Code__c = 'CN-9999'; al2.Level2_Sys_No__c = '9999999'; al2.Address_Level__c = al.id; insert al2; Account company = new Account(); company.Name = 'aiueo病院'; company.RecordTypeId = Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('HP').getRecordTypeId(); company.State_Master__c = al.Id; company.City_Master__c = al2.Id; insert company; Account sct = [Select Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c from Account where Parent.Id = :company.Id and RecordTypeId = :Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('Department_Class_BF').getRecordTypeId() Limit 1]; Account depart = new Account(); depart.RecordTypeId = Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('Department_BF').getRecordTypeId(); depart.Name = '*'; depart.Department_Name__c = 'aiueo診療科'; depart.ParentId = sct.Id; depart.Department_Class__c = sct.Id; depart.Hospital__c = company.Id; insert depart; StaticParameter.EscapeOpportunityBefUpdTrigger = true; Opportunity opp1 = new Opportunity(Name = 'aiueo商談', StageName = 'contact', CloseDate=Date.today(), SAP_Send_OK__c = true, AccountId = depart.Id); insert opp1; Opportunity opp2 = new Opportunity(Name = 'aiueo商談', StageName = 'contact', CloseDate=Date.today(), SAP_Send_OK__c = false, AccountId = depart.Id); insert opp2; LastbuyProduct__c lbp = new LastbuyProduct__c(); lbp.Name = 'Test0215'; lbp.ProductName__c = pro.Id; lbp.InquiryCode__c = opp1.Id; lbp.effectiveFLG__c = true; insert lbp; try{ lbp.InquiryCode__c = opp2.Id; update lbp; } catch (Exception e) { } } @isTest static void TestMethod3() { Product2 pro = new Product2(); pro.Name = 'Testname0215'; pro.LastbuyProductFLG__c = false; insert pro; Address_Level__c al = new Address_Level__c(); al.Name = '北京'; al.Level1_Code__c = 'CN-99'; al.Level1_Sys_No__c = '999999'; insert al; // 市 Address_Level2__c al2 = new Address_Level2__c(); al2.Level1_Code__c = 'CN-99'; al2.Level1_Sys_No__c = '999999'; al2.Level1_Name__c = '北京'; al2.Name = '海淀区'; al2.Level2_Code__c = 'CN-9999'; al2.Level2_Sys_No__c = '9999999'; al2.Address_Level__c = al.id; insert al2; Account company = new Account(); company.Name = 'aiueo病院'; company.RecordTypeId = Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('HP').getRecordTypeId(); company.State_Master__c = al.Id; company.City_Master__c = al2.Id; insert company; Account sct = [Select Id, Name, Department_Class_Label__c, Sys_Dept_Name_Change_Chk__c from Account where Parent.Id = :company.Id and RecordTypeId = :Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('Department_Class_BF').getRecordTypeId() Limit 1]; Account depart = new Account(); depart.RecordTypeId = Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('Department_BF').getRecordTypeId(); depart.Name = '*'; depart.Department_Name__c = 'aiueo診療科'; depart.ParentId = sct.Id; depart.Department_Class__c = sct.Id; depart.Hospital__c = company.Id; insert depart; StaticParameter.EscapeOpportunityBefUpdTrigger = true; Opportunity opp1 = new Opportunity(Name = 'aiueo商談', StageName = 'contact', CloseDate=Date.today(), SAP_Send_OK__c = true, AccountId = depart.Id); insert opp1; LastbuyProduct__c lbp = new LastbuyProduct__c(); lbp.Name = 'Test0215'; lbp.ProductName__c = pro.Id; lbp.InquiryCode__c = opp1.Id; lbp.effectiveFLG__c = true; insert lbp; try{ delete lbp; } catch (Exception e) { } } }