function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
GYAN ANDRUSGYAN ANDRUS 

,Can any one please help me for Test Class,Its getting failed always

Apex Class:
@RestResource(urlMapping='/WSItemMasterProductFacilities/*')
global class  WSItemMasterProductFacilities {
   
   @HttpPost
    global static Response ItemMasterProductFacilities() {
    
        RestRequest req = RestContext.request;
        RestResponse restRes = RestContext.response;
        Response res = new Response('ItemMasterProductFacilities');
 
         PBSI__PBSI_Item__c  ItemMaster = new PBSI__PBSI_Item__c();
         List <PBSI__PBSI_Item__c> itemMasterList = new List<PBSI__PBSI_Item__c>();
        
         WrapperItemMasterparticipatedList  ItemTrans = new WrapperItemMasterparticipatedList();
         List<WrapperItemMasterparticipatedList> ItemTransData = new List<WrapperItemMasterparticipatedList>();
        

        String ItemMasterId = req.requestURI.substring(req.requestURI.lastIndexOf('/')+1);
        ItemMasterId = ItemMaster.Id;
        System.debug('ItemMasterId  in WSItemMasterProductFacilities = '+ItemMasterId);
        if(ItemMasterId!= null)
        {
            res.errorCode ='INVALID_INPUT';
            res.status = 'ERROR';
            res.message = 'ID_NOT_PRESENT_IN_HEADER';
            res.statuscode = 'HTTP_BAD_REQUEST';
            return res;
        }
     try
        {
        integer j;
        Integer  status ;
        Integer  backorders;
        Integer enable_qty_increments;
        Integer is_in_stock;
        Integer is_qty_decimal;
        Integer manage_stock;
        Integer max_sale_qty;
        Integer  min_qty;
        Integer  min_sale_qtynotify_stock_qty;
        Integer qty ;                   
        Integer use_config_manage_stock;
        Integer use_config_min_qty;
        Integer use_config_min_sale_qty;
        Integer use_config_max_sale_qty;
        Integer use_config_backorders;
        Integer use_config_enable_qty_inc;
        Integer use_config_notify_stock_qty;
        Integer tax_class_id;
        String type_id;
        Integer pageLayout = 2;
        Integer use_config_gift_message_available;
        Integer   visibility;
            
            
         PBSI__PBSI_Item__c  ItemMasterProdList;
         itemMasterList  = [Select id,Name,PBSI__Item_Code__c,PBSI__Item_Description_Long__c,Color__c,Series__c,Color_Family__c,Grade__c,
                            Default_Country_of_Origin__c,Additional_SO_Description__c,PBSI__description__c,
                            Datasheet__c,LeadTime__c,Default_UM__c,Finish__c,Finish_Family__c,PBSI__Item_Group__r.name,Installation_Material_Groups__c,
                            PBSI__salesprice__c,Recycled_Content__c,Shade_Variation__c,Size__c,PBSI__netweight__c,Installation_Material_Code__c,
                            Weight_UM__c,Color_Code__c,Available_for_Sale__c,Type__c,Subtype__c,Application__c,Material_Codes__c,
                            Stock_Item__c,COF_Dry__c,Sell_on_Website__c,Materials_Group__c,COF_Wet__c,Size_Code__c,type_subtype_codes__c,Finish_Code__c,Commercial_grade_codes__c,Application_Code__c,DCOF__c FROM PBSI__PBSI_Item__c where Sell_on_Website__c = true OR Show_on_Website__c = true];
            
         for(j=0;j<itemMasterList.size();j++)
                {
                ItemTrans = new WrapperItemMasterparticipatedList();
                ItemMasterProdList = itemMasterList.get(j);
                system.debug('ItemMasterProdList  LIST ------->'+ItemMasterProdList);
                ItemTrans.PBSI_salesprice = ItemMasterProdList.PBSI__salesprice__c;
                ItemTrans.entity_id  = ItemMasterProdList.name;
                ItemTrans.application = ItemMasterProdList.Application__c;
                ItemTrans.description = ItemMasterProdList.PBSI__description__c;
                ItemTrans.sku = ItemMasterProdList.PBSI__Item_Code__c;
                ItemTrans.item_code = ItemMasterProdList.PBSI__Item_Code__c;
                ItemTrans.qty = ItemMasterProdList.Available_for_Sale__c;  
                ItemTrans.cofDry = ItemMasterProdList.COF_Dry__c;
                ItemTrans.color_Code = ItemMasterProdList.Color_Code__c;
                ItemTrans.finishCode  = ItemMasterProdList.Finish_Code__c;                
                ItemTrans.type_Subtype = ItemMasterProdList.type_subtype_codes__c;
                ItemTrans.commercial_grade = ItemMasterProdList.Commercial_grade_codes__c;
                ItemTrans.Size = ItemMasterProdList.Size__c;
                ItemTrans.materialCodes = ItemMasterProdList.Material_Codes__c;
                ItemTrans.installationMaterialCode = ItemMasterProdList.Installation_Material_Code__c;
                ItemTrans.applicationCodes = ItemMasterProdList.Application_Code__c;
                ItemTrans.types = ItemMasterProdList.Type__c;
                ItemTrans.subtype = ItemMasterProdList.Subtype__c;
                ItemTrans.stockItem = ItemMasterProdList.Stock_Item__c;
                ItemTrans.cofWet =   ItemMasterProdList.COF_Wet__c;  
                ItemTrans.dCof = ItemMasterProdList.DCOF__c;  
                ItemTrans.color = ItemMasterProdList.Color__c;
                ItemTrans.series =  ItemMasterProdList.Series__c;  
                ItemTrans.colorFamily =  ItemMasterProdList.Color_Family__c;
                ItemTrans.grade = ItemMasterProdList.Grade__c;
                ItemTrans.countryOrigin = ItemMasterProdList.Default_Country_of_Origin__c;
                ItemTrans.dataSheet = ItemMasterProdList.Datasheet__c;  
                ItemTrans.leadTime = ItemMasterProdList.LeadTime__c;
                ItemTrans.finish = ItemMasterProdList.Finish__c;
                ItemTrans.finishFamily = ItemMasterProdList.Finish_Family__c;
                ItemTrans.itemGroup = ItemMasterProdList.PBSI__Item_Group__r.name;   
                ItemTrans.installationMaterialgroup = ItemMasterProdList.Installation_Material_Groups__c;
                ItemTrans.recyledContent = ItemMasterProdList.Recycled_Content__c;
                ItemTrans.shadeVariation = ItemMasterProdList.Shade_Variation__c;
               // ItemTrans.Size = ItemMasterProdList.Size__c;
                ItemTrans.pbsiNetWeight = ItemMasterProdList.PBSI__netweight__c;
                ItemTrans.weightUm = ItemMasterProdList.Weight_UM__c;
                ItemTrans.salesum =  ItemMasterProdList.Default_UM__c  ;
                ItemTransData.add(ItemTrans);
                system.debug('ItemTransDataLIST ------->'+ItemTransData);  
             }
          //Sending Response
          res.ItemTransData  = ItemTransData;
          res.statuscode = 'HTTP_OK';
          res.status = 'SUCCESS';
          return res;
            }
         catch (Exception e) {
            System.debug('Exception e is ='+e);
            res.errorCode = 'Line number= '+e.getLineNumber()+' Message is= ' +e.getmessage();
            res.status = 'ERROR';
            res.message = 'Internal Exeption Occurred';
            res.statuscode = 'HTTP_INTERNAL_ERROR';
            return res;
        
    }
}
}


Test Class:

@isTest(SeeAllData=true)
public class TestWsItemMasterProductFacilities {
    
    
    

  private Static testMethod void testFunction()
     {
        System.RestContext.request = new RestRequest();
        System.RestContext.response = new RestResponse();
        RestContext.request.requestBody = Blob.valueOf('{}');
        
        
      WSItemMasterProductFacilities.ItemMasterProductFacilities();
         
        RestContext.request.addHeader('Account-ID', 'temp');
        WSItemMasterProductFacilities.ItemMasterProductFacilities();
     }
    
    private Static testMethod void testFunction1()
     {
        System.RestContext.request = new RestRequest();
        System.RestContext.response = new RestResponse();
        RestContext.request.requestBody = Blob.valueOf('{}');
         
     
        PBSI__PBSI_Item__c  ItemMaster = new PBSI__PBSI_Item__c();
        insert  ItemMaster;
         
      RestContext.request.addHeader('Account-ID', ItemMaster.id);
       WSItemMasterProductFacilities.ItemMasterProductFacilities();
     }
}