@isTest private class CheckAllOlympusAssetControllerTest { private static void createAssetData() { TestDataUtility.CreatePIPolicyConfigurations(new string[]{'Agency_Contact__c','Contact'}); // OLY_OCM-643 追加EscapeNFM001Trigger ControllerUtil.EscapeNFM001Trigger = true; // 省 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 hospital = new Account(); hospital.recordtypeId = [Select Id FROM RecordType WHERE IsActive = true and SobjectType = 'Account' and DeveloperName = 'HP'].id; hospital.Name = 'test hospital'; hospital.Is_Active__c = '有効'; hospital.Attribute_Type__c = '卫生部'; hospital.Speciality_Type__c = '综合医院'; hospital.Grade__c = '一级'; hospital.OCM_Category__c = 'SLTV'; hospital.Is_Medical__c = '医疗机构'; hospital.State_Master__c = al.id; hospital.City_Master__c = al2.id; hospital.Town__c = '东京'; insert hospital; // 戦略科室を得る Account[] strategicDep = [SELECT ID, Name FROM Account WHERE parentId = :hospital.Id AND recordType.DeveloperName = 'Department_Class_OTH']; // 診療科を作る Account dep = new Account(); dep.recordtypeId = [Select Id FROM RecordType WHERE IsActive = true and SobjectType = 'Account' and DeveloperName = 'Department_OTH'].id; dep.Name = 'test dep'; dep.AgentCode_Ext__c = '9999998'; dep.ParentId = strategicDep[0].Id; dep.Department_Class__c = strategicDep[0].Id; dep.Hospital__c = hospital.Id; insert dep; // 经销商 Contact contact2 = new Contact(); contact2.AccountId = dep.Id; contact2.FirstName = '責任者'; contact2.LastName = 'test1经销商'; insert contact2; // 产品 Product2 pro1 = new Product2(Name='name01',IsActive=true,Family='GI', Fixture_Model_No__c='n01',Serial_Lot_No__c='S/N tracing', Fixture_Model_No_T__c = 'n01', Asset_Model_No__c = 'Pro1', ProductCode_Ext__c='pc01',Manual_Entry__c=false); Product2 pro2 = new Product2(Name='name02',IsActive=true,Family='GI', Fixture_Model_No__c='n02',Serial_Lot_No__c='Lot tracing', Fixture_Model_No_T__c = 'n02', Asset_Model_No__c = 'Pro2', ProductCode_Ext__c='pc02',Manual_Entry__c=false); Product2 pro3 = new Product2(Name='name03',IsActive=true,Family='GI', Fixture_Model_No__c='n03',Serial_Lot_No__c='Lot tracing', Fixture_Model_No_T__c = 'n03', Asset_Model_No__c = 'Pro3', ProductCode_Ext__c='pc03',Manual_Entry__c=false); insert new Product2[] {pro1, pro2, pro3}; // 保有设备1 (主体) 主体只能是个体管理 List assetTestList = new List(); Asset asset1 = new Asset(); asset1.RecordTypeId = System.Label.Asset_RecordType; asset1.Asset_Owner__c = 'Olympus'; asset1.SerialNumber = 'asset1'; asset1.Name = 'asset1'; asset1.AccountId = dep.Id; asset1.Department_Class__c = strategicDep[0].Id; asset1.Hospital__c = hospital.Id; asset1.Product2Id = pro1.Id; asset1.Quantity = 1; asset1.Status = '使用中'; asset1.Manage_type__c = '个体管理'; asset1.Loaner_accsessary__c = false; asset1.Delete_Flag__c = false; asset1.AssetManageConfirm__c = true; asset1.Freeze_sign__c = false; asset1.Out_of_wh__c = 0; asset1.Salesdepartment__c = '9.MA本部'; asset1.Internal_asset_location__c = '北京 备品中心'; asset1.Product_category__c = 'GI'; asset1.Equipment_Type__c = '产品试用'; asset1.SalesProvince__c = '北京'; asset1.CompanyOfEquipment__c = '北京'; asset1.Internal_Asset_number__c = '0001'; asset1.WH_location__c = '货架号1'; assetTestList.add(asset1); // 保有设备2 (附属品 数量管理) Asset asset2 = new Asset(); asset2.RecordTypeId = System.Label.Asset_RecordType; asset2.Asset_Owner__c = 'Olympus'; asset2.SerialNumber = 'asset2'; asset2.Name = 'asset2'; asset2.AccountId = dep.Id; asset2.Department_Class__c = strategicDep[0].Id; asset2.Hospital__c = hospital.Id; asset2.Product2Id = pro2.Id; asset2.Quantity = 10; asset2.Status = '使用中'; asset2.Manage_type__c = '数量管理'; asset2.Loaner_accsessary__c = true; asset2.Delete_Flag__c = false; asset2.AssetManageConfirm__c = true; asset2.Freeze_sign__c = false; asset2.Out_of_wh__c = 3; asset2.Frozen_Quantity__c = 2; asset2.Salesdepartment__c = '1.华北营业本部'; asset2.Internal_asset_location__c = '北京 备品中心'; asset2.Product_category__c = 'GI'; asset2.Equipment_Type__c = '产品试用'; asset2.SalesProvince__c = '北京'; asset2.CompanyOfEquipment__c = '北京'; asset2.Internal_Asset_number__c = '0002'; asset2.WH_location__c = '货架号2'; assetTestList.add(asset2); insert assetTestList; List assetList = [SELECT Id, Asset_Owner__c FROM Asset WHERE Asset_Owner__c = 'Olympus' AND Delete_Flag__c = false AND AssetManageConfirm__c = true ORDER BY Id asc nulls first ]; System.assertEquals(2, assetList.size()); System.assertEquals('Olympus', assetList[0].Asset_Owner__c); // asset2 修理 草案中 Repair__c repair = new Repair__c(); repair.Service_Repair_No__c = 'repair'; repair.Status__c = '草案中'; repair.Hospital__c = hospital.Id; repair.Account__c = dep.Id; repair.Department_Class__c = strategicDep[0].id; repair.Delivered_Product__c = asset2.Id; insert repair; } // 测试初始化页面 @isTest static void testPageInitAsset() { createAssetData(); List pAsset = [SELECT Id FROM Asset WHERE Asset_Owner__c = 'Olympus' AND Delete_Flag__c = false AND AssetManageConfirm__c = true ORDER BY Id asc nulls first ]; System.assertEquals(2, pAsset.size()); PageReference page = new PageReference('/apex/CheckAllOlympusAsset'); page.getParameters().put('searchType', null); page.getParameters().put('assertCondition', null); page.getParameters().put('fromQuickBarFlag', null); System.Test.setCurrentPage(page); System.Test.StartTest(); CheckAllOlympusAssetController checkAssetControllerTest = new CheckAllOlympusAssetController(); checkAssetControllerTest.init(); List internalAssetLocationOpts = checkAssetControllerTest.internalAssetLocationOptionList; List internalAssetDataLocationOpts = checkAssetControllerTest.internalAssetDataLocationOptionList; checkAssetControllerTest.getAppliedSelectOptionList(); checkAssetControllerTest.getAllAssetDataListSize(); List assetStatusOptionListTest = checkAssetControllerTest.assetStatusOptionList; List bodyOrAccessoryOptionListTest = checkAssetControllerTest.bodyOrAccessoryOptionList; List limitOptsTest = checkAssetControllerTest.limitOpts; Integer leftLabelSizeTest = checkAssetControllerTest.leftLabelSize; String COMMATest = checkAssetControllerTest.COMMA; String CRLFTest = checkAssetControllerTest.CRLF; checkAssetControllerTest.checkAssetBtn(); System.Test.StopTest(); System.assertEquals(2, checkAssetControllerTest.allAssetInfoList.size()); } // 查看全部保有设备 @isTest static void testCheckAllOlympusAsset() { createAssetData(); List pAsset = [SELECT Id FROM Asset WHERE Asset_Owner__c = 'Olympus' AND Delete_Flag__c = false AND AssetManageConfirm__c = true ORDER BY Id asc nulls first ]; System.assertEquals(2, pAsset.size()); PageReference page = new PageReference('/apex/CheckAllOlympusAsset'); page.getParameters().put('searchType', 'all'); page.getParameters().put('assertCondition', 'all'); page.getParameters().put('fromQuickBarFlag', 'true'); System.Test.setCurrentPage(page); System.Test.StartTest(); CheckAllOlympusAssetController checkAssetControllerTest = new CheckAllOlympusAssetController(); checkAssetControllerTest.init(); checkAssetControllerTest.checkAssetBtn(); System.Test.StopTest(); System.assertEquals(2, checkAssetControllerTest.allAssetInfoList.size()); } // 查看有效库存 @isTest static void testCheckConsumableOlympusAsset() { createAssetData(); List pAsset = [SELECT Id FROM Asset WHERE Asset_Owner__c = 'Olympus' AND Delete_Flag__c = false AND AssetManageConfirm__c = true ORDER BY Id asc nulls first ]; System.assertEquals(2, pAsset.size()); PageReference page = new PageReference('/apex/CheckAllOlympusAsset'); page.getParameters().put('searchType', 'all'); page.getParameters().put('assertCondition', 'consumable'); page.getParameters().put('fromQuickBarFlag', 'true'); System.Test.setCurrentPage(page); System.Test.StartTest(); CheckAllOlympusAssetController checkAssetControllerTest = new CheckAllOlympusAssetController(); checkAssetControllerTest.init(); checkAssetControllerTest.checkAssetBtn(); System.Test.StopTest(); System.assertEquals(2, checkAssetControllerTest.allAssetInfoList.size()); } // 查看借出分配数 @isTest static void testCheckLendingOlympusAsset() { createAssetData(); List pAsset = [SELECT Id FROM Asset WHERE Asset_Owner__c = 'Olympus' AND Delete_Flag__c = false AND AssetManageConfirm__c = true ORDER BY Id asc nulls first ]; System.assertEquals(2, pAsset.size()); PageReference page = new PageReference('/apex/CheckAllOlympusAsset'); page.getParameters().put('searchType', 'all'); page.getParameters().put('assertCondition', 'lending'); page.getParameters().put('fromQuickBarFlag', 'true'); System.Test.setCurrentPage(page); System.Test.StartTest(); CheckAllOlympusAssetController checkAssetControllerTest = new CheckAllOlympusAssetController(); checkAssetControllerTest.init(); checkAssetControllerTest.checkAssetBtn(); System.Test.StopTest(); System.assertEquals(1, checkAssetControllerTest.allAssetInfoList.size()); } // 查看修理中保有设备 @isTest static void testCheckRepairingOlympusAsset() { createAssetData(); List pAsset = [SELECT Id FROM Asset WHERE Asset_Owner__c = 'Olympus' AND Delete_Flag__c = false AND AssetManageConfirm__c = true ORDER BY Id asc nulls first ]; System.assertEquals(2, pAsset.size()); PageReference page = new PageReference('/apex/CheckAllOlympusAsset'); page.getParameters().put('searchType', 'all'); page.getParameters().put('assertCondition', 'repairing'); page.getParameters().put('fromQuickBarFlag', 'true'); System.Test.setCurrentPage(page); System.Test.StartTest(); CheckAllOlympusAssetController checkAssetControllerTest = new CheckAllOlympusAssetController(); checkAssetControllerTest.init(); checkAssetControllerTest.checkAssetBtn(); System.Test.StopTest(); System.assertEquals(1, checkAssetControllerTest.allAssetInfoList.size()); } // 查看待报废保有设备 @isTest static void testCheckScrappingOlympusAsset() { createAssetData(); List pAsset = [SELECT Id FROM Asset WHERE Asset_Owner__c = 'Olympus' AND Delete_Flag__c = false AND AssetManageConfirm__c = true ORDER BY Id asc nulls first ]; System.assertEquals(2, pAsset.size()); PageReference page = new PageReference('/apex/CheckAllOlympusAsset'); page.getParameters().put('searchType', 'all'); page.getParameters().put('assertCondition', 'scrapping'); page.getParameters().put('fromQuickBarFlag', 'true'); System.Test.setCurrentPage(page); System.Test.StartTest(); CheckAllOlympusAssetController checkAssetControllerTest = new CheckAllOlympusAssetController(); checkAssetControllerTest.init(); checkAssetControllerTest.checkAssetBtn(); System.Test.StopTest(); System.assertEquals(0, checkAssetControllerTest.allAssetInfoList.size()); } // 查看已报废保有设备 @isTest static void testCheckScrappedOlympusAsset() { createAssetData(); List pAsset = [SELECT Id FROM Asset WHERE Asset_Owner__c = 'Olympus' AND Delete_Flag__c = false AND AssetManageConfirm__c = true ORDER BY Id asc nulls first ]; System.assertEquals(2, pAsset.size()); PageReference page = new PageReference('/apex/CheckAllOlympusAsset'); page.getParameters().put('searchType', 'all'); page.getParameters().put('assertCondition', 'scrapped'); page.getParameters().put('fromQuickBarFlag', 'true'); System.Test.setCurrentPage(page); System.Test.StartTest(); CheckAllOlympusAssetController checkAssetControllerTest = new CheckAllOlympusAssetController(); checkAssetControllerTest.init(); checkAssetControllerTest.checkAssetBtn(); System.Test.StopTest(); System.assertEquals(0, checkAssetControllerTest.allAssetInfoList.size()); } // 查看已消耗的保有设备 @isTest static void testCheckConsumedOlympusAsset() { createAssetData(); List pAsset = [SELECT Id FROM Asset WHERE Asset_Owner__c = 'Olympus' AND Delete_Flag__c = false AND AssetManageConfirm__c = true ORDER BY Id asc nulls first ]; System.assertEquals(2, pAsset.size()); PageReference page = new PageReference('/apex/CheckAllOlympusAsset'); page.getParameters().put('searchType', 'all'); page.getParameters().put('assertCondition', 'consumed'); page.getParameters().put('fromQuickBarFlag', 'true'); System.Test.setCurrentPage(page); System.Test.StartTest(); CheckAllOlympusAssetController checkAssetControllerTest = new CheckAllOlympusAssetController(); checkAssetControllerTest.init(); checkAssetControllerTest.checkAssetBtn(); System.Test.StopTest(); System.assertEquals(0, checkAssetControllerTest.allAssetInfoList.size()); } // 查看即将到期的保有设备 @isTest static void testCheckSoonExpiredOlympusAsset() { createAssetData(); List pAsset = [SELECT Id FROM Asset WHERE Asset_Owner__c = 'Olympus' AND Delete_Flag__c = false AND AssetManageConfirm__c = true ORDER BY Id asc nulls first ]; System.assertEquals(2, pAsset.size()); PageReference page = new PageReference('/apex/CheckAllOlympusAsset'); page.getParameters().put('searchType', 'all'); page.getParameters().put('assertCondition', 'soonExpired'); page.getParameters().put('fromQuickBarFlag', 'true'); System.Test.setCurrentPage(page); System.Test.StartTest(); CheckAllOlympusAssetController checkAssetControllerTest = new CheckAllOlympusAssetController(); checkAssetControllerTest.init(); checkAssetControllerTest.checkAssetBtn(); System.Test.StopTest(); System.assertEquals(0, checkAssetControllerTest.allAssetInfoList.size()); } // 查看已过期的保有设备 @isTest static void testCheckExpiredOlympusAsset() { createAssetData(); List pAsset = [SELECT Id FROM Asset WHERE Asset_Owner__c = 'Olympus' AND Delete_Flag__c = false AND AssetManageConfirm__c = true ORDER BY Id asc nulls first ]; System.assertEquals(2, pAsset.size()); PageReference page = new PageReference('/apex/CheckAllOlympusAsset'); page.getParameters().put('searchType', 'all'); page.getParameters().put('assertCondition', 'expired'); page.getParameters().put('fromQuickBarFlag', 'true'); System.Test.setCurrentPage(page); System.Test.StartTest(); CheckAllOlympusAssetController checkAssetControllerTest = new CheckAllOlympusAssetController(); checkAssetControllerTest.init(); checkAssetControllerTest.checkAssetBtn(); System.Test.StopTest(); System.assertEquals(0, checkAssetControllerTest.allAssetInfoList.size()); } // 清空检索条件 @isTest static void testClearSearchCondition() { createAssetData(); List pAsset = [SELECT Id FROM Asset WHERE Asset_Owner__c = 'Olympus' AND Delete_Flag__c = false AND AssetManageConfirm__c = true ORDER BY Id asc nulls first ]; System.assertEquals(2, pAsset.size()); PageReference page = new PageReference('/apex/CheckAllOlympusAsset'); page.getParameters().put('searchType', 'all'); page.getParameters().put('assertCondition', 'all'); page.getParameters().put('fromQuickBarFlag', 'true'); System.Test.setCurrentPage(page); CheckAllOlympusAssetController checkAssetControllerTest = new CheckAllOlympusAssetController(); checkAssetControllerTest.init(); checkAssetControllerTest.searchB.internal_asset_location = checkAssetControllerTest.internalAssetLocationLogin; // 备品存放地 checkAssetControllerTest.searchB.fixture_Model_No = '北京 备品中心'; // 备品配套明细型号 checkAssetControllerTest.searchB.wh_location = 'IMH-20'; // 货架号 checkAssetControllerTest.searchB.fixture_Status = '可分配'; // 备品状态 checkAssetControllerTest.searchB.equipmentSet_Managment_Code = 'test'; // 备品管理编码 checkAssetControllerTest.searchB.internal_Asset_number = 'test'; // 固定资产号 checkAssetControllerTest.searchB.serialNumber = 'test'; // 机身号 checkAssetControllerTest.searchB.companyOfEquipment = '北京'; // 分公司号 checkAssetControllerTest.searchB.bodyOrAccessory = '主体'; // 主体/附属品 checkAssetControllerTest.searchB.product_category = 'GI'; // 产品分类 checkAssetControllerTest.searchB.equipment_Type = '产品适用'; // 备品分类 checkAssetControllerTest.searchB.manage_type = '数量管理'; // 管理种类 checkAssetControllerTest.searchB.salesdepartment = '0.备品中心'; // 所在地区(本部) checkAssetControllerTest.searchB.salesProvince = '北京'; // 所在地区(省) checkAssetControllerTest.searchB.consumable_Guaranteen_endStr = NULL; // 消耗品有效期至 System.Test.StartTest(); checkAssetControllerTest.clearAllSearchConditionWhenCancel(); System.Test.StopTest(); System.assertEquals(checkAssetControllerTest.internalAssetLocationLogin, checkAssetControllerTest.searchB.internal_asset_location); // 备品存放地 System.assertEquals('', checkAssetControllerTest.searchB.fixture_Model_No); // 备品配套明细型号 System.assertEquals('', checkAssetControllerTest.searchB.wh_location); // 货架号 System.assertEquals('', checkAssetControllerTest.searchB.fixture_Status); // 备品状态 System.assertEquals('', checkAssetControllerTest.searchB.equipmentSet_Managment_Code); // 备品管理编码 System.assertEquals('', checkAssetControllerTest.searchB.internal_Asset_number); System.assertEquals('', checkAssetControllerTest.searchB.serialNumber); System.assertEquals('', checkAssetControllerTest.searchB.companyOfEquipment); System.assertEquals('', checkAssetControllerTest.searchB.product_category); System.assertEquals('', checkAssetControllerTest.searchB.equipment_Type); System.assertEquals('', checkAssetControllerTest.searchB.manage_type); System.assertEquals('', checkAssetControllerTest.searchB.salesdepartment); System.assertEquals('', checkAssetControllerTest.searchB.salesProvince); System.assertEquals('', checkAssetControllerTest.searchB.consumable_Guaranteen_endStr); System.assertEquals(null, checkAssetControllerTest.searchB.consumable_Guaranteen_end); } // 适用按钮Msg @isTest static void testApplyMsgBtn() { createAssetData(); List pAsset = [SELECT Id FROM Asset WHERE Asset_Owner__c = 'Olympus' AND Delete_Flag__c = false AND AssetManageConfirm__c = true ORDER BY Id asc nulls first ]; System.assertEquals(2, pAsset.size()); PageReference page = new PageReference('/apex/CheckAllOlympusAsset'); page.getParameters().put('searchType', 'all'); page.getParameters().put('assertCondition', 'all'); page.getParameters().put('fromQuickBarFlag', 'true'); page.getParameters().put('applyMsg', '其他选项: 所在地区(省)中无此选项值天津111,无法更新。'); page.getParameters().put('applyMsgType', 'Fail'); page.getParameters().put('applyErrorLabel', NULL); System.Test.setCurrentPage(page); CheckAllOlympusAssetController checkAssetControllerTest = new CheckAllOlympusAssetController(); checkAssetControllerTest.init(); System.Test.StartTest(); checkAssetControllerTest.showApplyMsg(); System.Test.StopTest(); } // 保存按钮 @isTest static void testSaveBtn() { createAssetData(); List pAsset = [SELECT Id FROM Asset WHERE Asset_Owner__c = 'Olympus' AND Delete_Flag__c = false AND AssetManageConfirm__c = true ORDER BY Id asc nulls first ]; System.assertEquals(2, pAsset.size()); PageReference page = new PageReference('/apex/CheckAllOlympusAsset'); page.getParameters().put('searchType', 'all'); page.getParameters().put('assertCondition', 'all'); page.getParameters().put('fromQuickBarFlag', 'true'); System.Test.setCurrentPage(page); CheckAllOlympusAssetController checkAssetControllerTest = new CheckAllOlympusAssetController(); checkAssetControllerTest.init(); for (Integer i = 0; i < checkAssetControllerTest.allAssetInfoList.size(); i++) { checkAssetControllerTest.allAssetInfoList[i].isCheck = true; } System.assertEquals('北京 备品中心', checkAssetControllerTest.allAssetInfoList[0].assetQuertResult.Internal_asset_location__c); System.assertEquals('北京 备品中心', checkAssetControllerTest.allAssetInfoList[1].assetQuertResult.Internal_asset_location__c); checkAssetControllerTest.allAssetInfoList[0].assetQuertResult.Internal_asset_location__c = '上海 备品中心'; checkAssetControllerTest.allAssetInfoList[1].assetQuertResult.Internal_asset_location__c = '广州 备品中心'; System.Test.StartTest(); checkAssetControllerTest.saveBtn(); System.Test.StopTest(); List afterSaveAsset = [SELECT Id, Internal_asset_location__c FROM Asset WHERE Asset_Owner__c = 'Olympus' AND Delete_Flag__c = false AND AssetManageConfirm__c = true ORDER BY Id asc nulls first ]; System.assertEquals(2, afterSaveAsset.size()); System.assertEquals('上海 备品中心', afterSaveAsset[0].Internal_asset_location__c); System.assertEquals('广州 备品中心', afterSaveAsset[1].Internal_asset_location__c); } // 清空打钩项 @isTest static void testClearAllCheckedBtn() { createAssetData(); List pAsset = [SELECT Id FROM Asset WHERE Asset_Owner__c = 'Olympus' AND Delete_Flag__c = false AND AssetManageConfirm__c = true ORDER BY Id asc nulls first ]; System.assertEquals(2, pAsset.size()); PageReference page = new PageReference('/apex/CheckAllOlympusAsset'); page.getParameters().put('searchType', 'all'); page.getParameters().put('assertCondition', 'all'); page.getParameters().put('fromQuickBarFlag', 'true'); System.Test.setCurrentPage(page); CheckAllOlympusAssetController checkAssetControllerTest = new CheckAllOlympusAssetController(); checkAssetControllerTest.init(); for (Integer i = 0; i < checkAssetControllerTest.allAssetInfoList.size(); i++) { checkAssetControllerTest.allAssetInfoList[i].isCheck = true; } System.Test.StartTest(); checkAssetControllerTest.clearAllCheckedBtn(); System.Test.StopTest(); System.assertEquals(2, checkAssetControllerTest.allAssetInfoList.size()); System.assertEquals(false, checkAssetControllerTest.allAssetInfoList[0].isCheck); System.assertEquals(false, checkAssetControllerTest.allAssetInfoList[1].isCheck); } // 排序测试 @isTest static void testSortTableBtn() { createAssetData(); List pAsset = [SELECT Id FROM Asset WHERE Asset_Owner__c = 'Olympus' AND Delete_Flag__c = false AND AssetManageConfirm__c = true ORDER BY Id asc nulls first ]; System.assertEquals(2, pAsset.size()); PageReference page = new PageReference('/apex/CheckAllOlympusAsset'); page.getParameters().put('searchType', 'all'); page.getParameters().put('assertCondition', 'all'); page.getParameters().put('fromQuickBarFlag', 'true'); page.getParameters().put('sortKey', '2'); System.Test.setCurrentPage(page); CheckAllOlympusAssetController checkAssetControllerTest = new CheckAllOlympusAssetController(); checkAssetControllerTest.init(); System.assertEquals(2, checkAssetControllerTest.allAssetInfoList.size()); System.assertEquals('9.MA本部', checkAssetControllerTest.allAssetInfoList[0].assetQuertResult.Salesdepartment__c); System.assertEquals('1.华北营业本部', checkAssetControllerTest.allAssetInfoList[1].assetQuertResult.Salesdepartment__c); System.Test.StartTest(); checkAssetControllerTest.sortTable(); System.Test.StopTest(); System.assertEquals(2, checkAssetControllerTest.allAssetInfoList.size()); System.assertEquals('1.华北营业本部', checkAssetControllerTest.allAssetInfoList[0].assetQuertResult.Salesdepartment__c); System.assertEquals('9.MA本部', checkAssetControllerTest.allAssetInfoList[1].assetQuertResult.Salesdepartment__c); } // import CSV测试 @isTest static void testImportCsv() { createAssetData(); List pAsset = [SELECT Id FROM Asset WHERE Asset_Owner__c = 'Olympus' AND Delete_Flag__c = false AND AssetManageConfirm__c = true ORDER BY Id asc nulls first ]; System.assertEquals(2, pAsset.size()); String targetAssetId = pAsset[0].Id; PageReference page = new PageReference('/apex/CheckAllOlympusAsset'); page.getParameters().put('searchType', 'all'); page.getParameters().put('assertCondition', 'all'); page.getParameters().put('fromQuickBarFlag', 'true'); String csvStr = ''; csvStr += 'Id,Internal_asset_location__c,Salesdepartment__c,SalesProvince__c,Fixture_Model_No_F__c,CompanyOfEquipment__c,Internal_Asset_number__c,Internal_Asset_number_key__c,'; csvStr += 'SerialNumber,Product_category__c,Equipment_Type__c,Consumable_Guaranteen_end__c,Manage_type__c,Loaner_accsessary__c,EquipmentSet_Managment_Code__c,AssetManageConfirm__c,Fixture_QRCode__c,'; csvStr += 'WH_location__c,Quantity,You_Xiao_Ku_Cun__c,Ji_Zhong_Guan_Li_Ku_Cun__c,Out_of_wh__c,Rental_Count__c,Frozen_Quantity__c,Abandoned_RealThing__c,Abandoned_Inventory__c,Repairing_Count__c,'; csvStr += 'Fixture_Status__c,Main_OneToOne__c,Status'; csvStr += '\r\n'; csvStr += 'Id(不可修改),备品存放地,所在地区(本部),所在地区(省),备品配套明细型号(不可修改),备品所属公司,固定资产编号,固定资产编号(Key)(不可修改),シリアル番号,产品分类(GI/SP),备品分类,消耗品有效期至,'; csvStr += '管理种类,备品用途附属品,备品管理编码,备品中心确认,备品QRCode(不可修改),货架号,数量,有效库存(不可修改),集中管理库存(不可修改),借出_分配_数,已借出数,冻结数,待废弃数(实物),待废弃数(丢失/盘亏),修理中件数(不可修改),备品状态(不可修改),一对一保管主体,状态'; csvStr += '\r\n'; csvStr += targetAssetId; csvStr += ',上海 备品中心,3.西北营业本部,沈阳,IMH-20,上海,8765_4211,51128765_4211,3,GI,产品试用,,个体管理,'; csvStr += 'true,51138765_4 _1,true,51128765_4211,N10,1.00,0,0,0,0,,,,0,无库存,true,使用中'; csvStr += '\r\n'; page.getParameters().put('csvData', csvStr); System.Test.setCurrentPage(page); CheckAllOlympusAssetController checkAssetControllerTest = new CheckAllOlympusAssetController(); checkAssetControllerTest.init(); System.assertEquals(2, checkAssetControllerTest.allAssetInfoList.size()); System.assertEquals('9.MA本部', checkAssetControllerTest.allAssetInfoList[0].assetQuertResult.Salesdepartment__c); System.assertEquals('1.华北营业本部', checkAssetControllerTest.allAssetInfoList[1].assetQuertResult.Salesdepartment__c); System.Test.StartTest(); checkAssetControllerTest.importCSVFile(); System.Test.StopTest(); System.assertEquals(1, checkAssetControllerTest.allAssetInfoList.size()); System.assertEquals(true, checkAssetControllerTest.allAssetInfoList[0].isCheck); System.assertEquals('3.西北营业本部', checkAssetControllerTest.allAssetInfoList[0].assetQuertResult.Salesdepartment__c); } // 翻页到首页测试 @isTest static void testFirstPage() { createAssetData(); List pAsset = [SELECT Id FROM Asset WHERE Asset_Owner__c = 'Olympus' AND Delete_Flag__c = false AND AssetManageConfirm__c = true ORDER BY Id asc nulls first ]; System.assertEquals(2, pAsset.size()); String targetAssetId = pAsset[0].Id; PageReference page = new PageReference('/apex/CheckAllOlympusAsset'); page.getParameters().put('searchType', 'all'); page.getParameters().put('assertCondition', 'all'); page.getParameters().put('fromQuickBarFlag', 'true'); System.Test.setCurrentPage(page); CheckAllOlympusAssetController checkAssetControllerTest = new CheckAllOlympusAssetController(); checkAssetControllerTest.init(); checkAssetControllerTest.recordNumChange(); System.assertEquals(2, checkAssetControllerTest.allAssetInfoList.size()); System.assertEquals('9.MA本部', checkAssetControllerTest.allAssetInfoList[0].assetQuertResult.Salesdepartment__c); System.assertEquals('1.华北营业本部', checkAssetControllerTest.allAssetInfoList[1].assetQuertResult.Salesdepartment__c); System.Test.StartTest(); checkAssetControllerTest.firstPage(); System.Test.StopTest(); System.assertEquals(2, checkAssetControllerTest.totalNum); System.assertEquals(1, checkAssetControllerTest.totalPage); } // 向后翻页 @isTest static void testNextPage() { createAssetData(); List pAsset = [SELECT Id FROM Asset WHERE Asset_Owner__c = 'Olympus' AND Delete_Flag__c = false AND AssetManageConfirm__c = true ORDER BY Id asc nulls first ]; System.assertEquals(2, pAsset.size()); String targetAssetId = pAsset[0].Id; PageReference page = new PageReference('/apex/CheckAllOlympusAsset'); page.getParameters().put('searchType', 'all'); page.getParameters().put('assertCondition', 'all'); page.getParameters().put('fromQuickBarFlag', 'true'); System.Test.setCurrentPage(page); CheckAllOlympusAssetController checkAssetControllerTest = new CheckAllOlympusAssetController(); checkAssetControllerTest.init(); checkAssetControllerTest.recordNumChange(); System.assertEquals(2, checkAssetControllerTest.allAssetInfoList.size()); System.assertEquals('9.MA本部', checkAssetControllerTest.allAssetInfoList[0].assetQuertResult.Salesdepartment__c); System.assertEquals('1.华北营业本部', checkAssetControllerTest.allAssetInfoList[1].assetQuertResult.Salesdepartment__c); System.Test.StartTest(); checkAssetControllerTest.nextPage(); System.Test.StopTest(); System.assertEquals(2, checkAssetControllerTest.totalNum); System.assertEquals(1, checkAssetControllerTest.totalPage); } // 翻页到尾页 @isTest static void testEndPage() { createAssetData(); List pAsset = [SELECT Id FROM Asset WHERE Asset_Owner__c = 'Olympus' AND Delete_Flag__c = false AND AssetManageConfirm__c = true ORDER BY Id asc nulls first ]; System.assertEquals(2, pAsset.size()); String targetAssetId = pAsset[0].Id; PageReference page = new PageReference('/apex/CheckAllOlympusAsset'); page.getParameters().put('searchType', 'all'); page.getParameters().put('assertCondition', 'all'); page.getParameters().put('fromQuickBarFlag', 'true'); System.Test.setCurrentPage(page); CheckAllOlympusAssetController checkAssetControllerTest = new CheckAllOlympusAssetController(); checkAssetControllerTest.init(); checkAssetControllerTest.recordNumChange(); List companyOfEquipmentOpts = checkAssetControllerTest.companyOfEquipmentOpts; List product_categoryOpts = checkAssetControllerTest.product_categoryOpts; List equipment_TypeOpts = checkAssetControllerTest.equipment_TypeOpts; List manage_typeOpts = checkAssetControllerTest.manage_typeOpts; List salesdepartmentOpts = checkAssetControllerTest.salesdepartmentOpts; List salesProvinceOpts = checkAssetControllerTest.salesProvinceOpts; System.assertEquals(2, checkAssetControllerTest.allAssetInfoList.size()); System.assertEquals('9.MA本部', checkAssetControllerTest.allAssetInfoList[0].assetQuertResult.Salesdepartment__c); System.assertEquals('1.华北营业本部', checkAssetControllerTest.allAssetInfoList[1].assetQuertResult.Salesdepartment__c); System.Test.StartTest(); checkAssetControllerTest.endPage(); System.Test.StopTest(); System.assertEquals(2, checkAssetControllerTest.totalNum); System.assertEquals(1, checkAssetControllerTest.totalPage); } }