You need to sign in to do that
Don't have an account?
anillll
Test Coverage
trigger promoteOrdertoAsset on Item_Order__c (after insert, after update) { 2 3 public List<Asset> listOfAssets = new List<Asset>(); 4 public List<Asset> listOfUpdateAssets= new List<Asset>(); 5 Schema.DescribeSObjectResult objDescribe = Asset.SObjectType.getDescribe(); 6 List<Status__c> status = [select id, Name from Status__C]; 7 Map<Id,String> statusMap = new Map<Id, String>(); 8 for (Status__c stat : status) 9 { 10 statusMap.put(stat.Id, stat.Name); 11 } 12 13 List<OrderToAssetMap__c> conversionMap = OrderToAssetMap__c.getall().values(); 14 Map<String,String> ignoreList = new Map<String, String>(); 15 Map<String,String> mapList = new Map<String, String>(); 16 for (OrderToAssetMap__c mapField : conversionMap ) 17 { 18 if(mapField.Ignore__c= true) 19 { 20 ignoreList.put(mapField.Asset_Field__c,mapField.Asset_Field__c); 21 } 22 } 23 24 for (OrderToAssetMap__c mapField : conversionMap ) 25 { 26 System.debug(' mapField.Ignore__c is: ' + mapField.Ignore__c); 27 System.debug(' mapField.Asset_Field__c is: ' + mapField.Asset_Field__c); 28 System.debug('mapField.Order_Field__c is: ' +mapField.Order_Field__c); 29 if(mapField.Asset_Field__c!=null) 30 { 31 mapList.put(mapField.Asset_Field__c,mapField.Order_Field__c); 32 } 33 } 34 System.debug('mapList is: ' + mapList ); 35 List<String> itemIds = new List<String>(); 36 List<String> parentItemIds = new List<String>(); 37 for(Item_Order__c ord : Trigger.new ) 38 { 39 itemIds.add(ord.Item_ID__c); 40 } 41 for(Item_Order__c ord : Trigger.new ) 42 { 43 if(ord.Parent_Item__c != null) 44 { 45 parentItemIds.add(ord.Parent_Item_Id__c); 46 } 47 } 48 System.debug('parentItemIds: ' + parentItemIds); 49 List<Asset> updateAssetList = [select Id, Item_Id__c from Asset where Item_id__c in : itemIds]; 50 List<Asset> parentAssetList = [select Id, Item_Id__c from Asset where Item_id__c in : parentItemIds]; 51 System.debug('parentAssetList : ' + parentAssetList ); 52 Map<String, Asset> updateAssetMap = new Map<String, Asset>(); 53 Map<String, Asset> parentAssetMap = new Map<String, Asset>(); 54 for(Asset asset : updateAssetList ) 55 { 56 updateAssetMap.put(asset.Item_Id__c, asset); 57 } 58 for(Asset asset : parentAssetList ) 59 { 60 parentAssetMap.put(asset.Item_id__c, asset); 61 } 62 for(Item_Order__c ord : Trigger.new ) 63 { 64 System.debug('Order Id: ' + ord.Account__C); 65 if(statusMap.get(ord.Status__c) != null && statusMap.get(ord.Status__c) == 'Published' && updateAssetMap.get(ord.Item_Id__C) == null) 66 { 67 System.debug('Creating Asset for Order: ' + ord); 68 Asset asset = new Asset(); 69 asset.AccountId = ord.Account__c; 70 if(ord.Parent_Item__c != null) 71 { 72 asset.Asset__c = parentAssetMap.get(ord.Parent_Item_Id__c).Id; 73 } 74 asset.InstallDate = System.today(); 75 for (String field : objDescribe.fields.getMap().keySet()) 76 { 77 if(ignoreList.get(field)== null && mapList.get(field)== null) 78 { 79 if(ord.get(field) != null) 80 { 81 asset.put(field , ord.get(field)); 82 System.debug('Asset is: '+ asset); 83 } 84 } 85 if(mapList.get(field)!= null) 86 { 87 String orderField = mapList.get(field); 88 asset.put(field , ord.get(orderField )); 89 System.debug('orderField is: '+ orderField ); 90 System.debug(' orderField Asset is: '+ asset); 91 } 92 } 93 listOfAssets.add(asset); 94 } 95 else if (updateAssetMap.get(ord.Item_Id__C) != null && (ord.Action__c =='Change' ||ord.Action__c =='Renew') && ord.Action_Type__c != 'Cancel') 96 { 97 Asset asset = new Asset(Id=updateAssetMap.get(ord.Item_Id__C).Id); 98 for (String field : objDescribe.fields.getMap().keySet()) 99 { 100 if(ignoreList.get(field)== null) 101 { 102 asset.put(field , ord.get(field)); 103 System.debug('Asset is: '+ asset); 104 } 105 } 106 listOfUpdateAssets.add(asset); 107 } 108 else if (updateAssetMap.get(ord.Item_Id__C) != null && ord.Action__c =='Cancel' && ord.Action_Type__c != 'Cancel') 109 { 110 Asset asset = new Asset(Id=updateAssetMap.get(ord.Item_Id__C).Id); 111 asset.Status = 'Cancel'; 112 listOfUpdateAssets.add(asset); 113 } 114 115 116 } 117 118 System.debug('listOfAssets: '+ listOfAssets); 119 if(listOfAssets!=null) 120 { 121 insert listOfAssets; 122 } 123 if(listOfUpdateAssets != null) 124 { 125 update listOfUpdateAssets; 126 } 127 }
Line no:68-112 are not covering
can u pls help in these
Hi anil,
Put system.debug above the line no: 65 for check the value of statusMap.get(ord.Status__c) and updateAssetMap.get(ord.Item_Id__c)
i think it is getting null value because of this your class is not covered.
Important :
Hit Kudos if this provides you with useful information and if this is what you where looking for then please mark it as a solution for other benefits.
Thanks,
Hitesh Patel
SFDC Certified Developer & Administrator