@isTest private class QuotesPDFControllerTest { static testMethod void testMethod1() { List rectIE = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = 'Customer IE']; List rectOpp = [select Id from RecordType where IsActive = true and SobjectType = 'Opportunity' and Name = 'SSBD']; Id pricebookId = Test.getStandardPricebookId(); Pricebook2 pricebook = new Pricebook2( Name = 'IE', ProductSegment__c = 'IE', TradeType__c = 'Taxation', SalesChannel__c = 'direct', MachineParts__c = 'Machine', CurrencyIsoCode = 'CNY' ); insert pricebook; Product2 product1 = new Product2(); product1.Name = 'DESCRIPTION'; product1.IsActive = true; product1.ProductCode = 'DESCRIPTION'; product1.Product_ECCode__c = 'test01'; product1.ProductStatus__c = '1'; product1.NMPAStatus_one__c = 'Z1'; product1.MaterialStatus_one_Start__c = Date.today().addDays(-22); product1.MaterialStatus_one_End__c = Date.today().addDays(22); insert product1; Product2 product2 = new Product2(); product2.Name = 'Payment Info'; product2.IsActive = true; product2.ProductCode = 'Payment Info'; product2.Product_ECCode__c = 'Test01;Test02'; product2.ProductStatus__c = '1'; product2.NMPAStatus_one__c = 'Z1'; product2.MaterialStatus_one_Start__c = Date.today().addDays(-22); product2.MaterialStatus_one_End__c = Date.today().addDays(22); product2.Description = 'Test01;Test02'; insert product2; Product2 product3 = new Product2(); product3.Name = 'Service Quote Subtotal'; product3.IsActive = true; product3.ProductCode = 'Service Quote Subtotal'; product3.Product_ECCode__c = 'Test01;Test02;test03'; product3.ProductStatus__c = '1'; product3.NMPAStatus_one__c = 'Z1'; product3.MaterialStatus_one_Start__c = Date.today().addDays(-22); product3.MaterialStatus_one_End__c = Date.today().addDays(22); insert product3; SWO__c swo = new SWO__c(); swo.Name = 'Test'; swo.QUANTITY__c = 22; // swo.ITEM__c = product1.Id; swo.ESTIMATED_LABOUR_HOURS__c = 22; swo.LABOUR_RATE__c = 22; insert swo; Quotes__c quotes = new Quotes__c(); quotes.SWO__c = swo.Id; quotes.QuotesType__c = '零件报价单'; quotes.DATE__c = Date.today(); quotes.LEAD_TIME__c = '1 week'; quotes.STATUS__c = 'Qualifying'; quotes.LOCATION__c = 'China - Service'; quotes.TERMS__c = '1% 10 Net 30'; quotes.EXPIRES__c = Date.today(); quotes.EXP_CLOSE__c = Date.today(); quotes.ORDER_TYPE__c = 'LS Core Clinical'; insert quotes; //DESCRIPTION__c,PART_NUMBERNew__c, Quotes_item__c quotesItem = new Quotes_item__c(); quotesItem.QUOTE__c = quotes.Id; quotesItem.QuotesItemProduct__c = product1.Id; quotesItem.DESCRIPTION__c = 'Test01;Test02'; quotesItem.QUANTITY__c = 22; quotesItem.AMOUNT__c = 22; quotesItem.RATE__c = 222; insert quotesItem; Quotes_item__c quotesItem1 = new Quotes_item__c(); quotesItem1.QUOTE__c = quotes.Id; quotesItem1.QuotesItemProduct__c = product2.Id; quotesItem1.DESCRIPTION__c = 'Test01;Test02'; quotesItem1.QUANTITY__c = 22; quotesItem1.AMOUNT__c = 22; quotesItem1.RATE__c = 222; insert quotesItem1; Quotes_item__c quotesItem2 = new Quotes_item__c(); quotesItem2.QUOTE__c = quotes.Id; quotesItem2.QuotesItemProduct__c = product3.Id; quotesItem1.DESCRIPTION__c = 'Test01;Test02'; quotesItem2.QUANTITY__c = 22; quotesItem2.AMOUNT__c = 22; quotesItem2.RATE__c = 222; insert quotesItem2; PageReference page = new PageReference('/apex/QuotesPDF?id='+quotes.Id); System.Test.setCurrentPage(page); QuotesPDFController controller = new QuotesPDFController(); controller.init(); } static testMethod void testMethod2() { List rectIE = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = 'Customer IE']; List rectOpp = [select Id from RecordType where IsActive = true and SobjectType = 'Opportunity' and Name = 'SSBD']; Id pricebookId = Test.getStandardPricebookId(); Pricebook2 pricebook = new Pricebook2( Name = 'IE', ProductSegment__c = 'IE', TradeType__c = 'Taxation', SalesChannel__c = 'direct', MachineParts__c = 'Machine', CurrencyIsoCode = 'CNY' ); insert pricebook; Product2 product1 = new Product2(); product1.Name = 'DESCRIPTION'; product1.IsActive = true; product1.ProductCode = 'DESCRIPTION'; product1.ProductStatus__c = '1'; product1.NMPAStatus_one__c = 'Z1'; product1.MaterialStatus_one_Start__c = Date.today().addDays(-22); product1.MaterialStatus_one_End__c = Date.today().addDays(22); insert product1; Product2 product2 = new Product2(); product2.Name = 'Payment Info'; product2.IsActive = true; product2.ProductCode = 'Payment Info'; product2.ProductStatus__c = '1'; product2.NMPAStatus_one__c = 'Z1'; product2.MaterialStatus_one_Start__c = Date.today().addDays(-22); product2.MaterialStatus_one_End__c = Date.today().addDays(22); product2.Description = 'Test01;Test02'; insert product2; Product2 product3 = new Product2(); product3.Name = 'Service Quote Subtotal'; product3.IsActive = true; product3.ProductCode = 'Service Quote Subtotal'; product3.ProductStatus__c = '1'; product3.NMPAStatus_one__c = 'Z1'; product3.MaterialStatus_one_Start__c = Date.today().addDays(-22); product3.MaterialStatus_one_End__c = Date.today().addDays(22); insert product3; SWO__c swo = new SWO__c(); swo.Name = 'Test'; swo.QUANTITY__c = 22; // swo.ITEM__c = product1.Id; swo.ESTIMATED_LABOUR_HOURS__c = 22; swo.LABOUR_RATE__c = 22; insert swo; Quotes__c quotes = new Quotes__c(); quotes.SWO__c = swo.Id; quotes.QuotesType__c = '零件报价单'; quotes.DATE__c = Date.today(); quotes.LEAD_TIME__c = '1 week'; quotes.STATUS__c = 'Qualifying'; quotes.LOCATION__c = 'China - Service'; quotes.TERMS__c = '1% 10 Net 30'; quotes.EXPIRES__c = Date.today(); quotes.EXP_CLOSE__c = Date.today(); quotes.ORDER_TYPE__c = 'LS Core Clinical'; insert quotes; Quotes_item__c quotesItem = new Quotes_item__c(); quotesItem.QUOTE__c = quotes.Id; quotesItem.QuotesItemProduct__c = product1.Id; quotesItem.QUANTITY__c = 22; quotesItem.AMOUNT__c = 22; quotesItem.RATE__c = 222; insert quotesItem; Quotes_item__c quotesItem1 = new Quotes_item__c(); quotesItem1.QUOTE__c = quotes.Id; quotesItem1.QuotesItemProduct__c = product2.Id; quotesItem1.DESCRIPTION__c = 'Test01;Test02'; quotesItem1.QUANTITY__c = 22; quotesItem1.AMOUNT__c = 22; quotesItem1.RATE__c = 222; insert quotesItem1; Quotes_item__c quotesItem2 = new Quotes_item__c(); quotesItem2.QUOTE__c = quotes.Id; quotesItem2.QuotesItemProduct__c = product3.Id; quotesItem2.QUANTITY__c = 22; quotesItem2.AMOUNT__c = 22; quotesItem2.RATE__c = 222; insert quotesItem2; for(Integer i = 0 ; i<50 ; i++){ quotesItem2.id = null; insert quotesItem2; } PageReference page = new PageReference('/apex/QuotesPDF?id='+quotes.Id); System.Test.setCurrentPage(page); QuotesPDFController controller = new QuotesPDFController(); controller.init(); } }