• boarder_grl
  • NEWBIE
  • 25 Points
  • Member since 2011

  • Chatter
    Feed
  • 1
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 1
    Questions
  • 4
    Replies

I have written a test that runs 100% successfully on the full development environment. When I attempt to validate deployment to the production server, it fails with the 'External Entry Point' Error on the last assert in my leadTransferTest() method. I have compared the objects on both the production and dev environments and cannot find any difference. Any help/suggestions would be greatly appreciated!!

 

private class LeadUtilsControllerTest {

    static testMethod void leadTransferTest() {
        //Create a Region
        Region__c region = new Region__c();
        region.Name = 'San Francisco';
        insert region;
        
        //Create a Zone
        Zone__c zone = new Zone__c();
        zone.Region__c = region.Id;
        zone.Name = 'Zone 1';
        
        //Create a Zipcode
        Zip_Code__c zipcode = new Zip_Code__c();
        zipcode.Zone__c = zone.Id;
        zipcode.Name = '94002';
                
        //Create a Lead
        Lead lead = new Lead();
        lead.Company = 'Company Name';
        lead.FirstName = 'FName';
        lead.LastName = 'LName';
        lead.Region__c = 'San Francisc';
        lead.PostalCode = '94002';
        insert lead;
        
        //Start test
        test.startTest();
        
        //Set Current Page
        PageReference currPage = new PageReference('/apex/LeadUtils');
        System.test.setCurrentPage(currPage);
        
        //Initialize Controller
        LeadUtilsController controller = new LeadUtilsController();
        
           //Set old and new regions
           controller.oldRegion = 'San Francisc';
           controller.newRegion = 'San Francisco';
        
           //Check to see if getItems has more than 0 items
           System.assert(controller.getItems().size() > 0);
           
           //Run transfer method
           controller.updateRegion();
           
           //Requery the leads
        Lead leadTest = [SELECT Id, PostalCode, Region__c, ZipCode__c FROM Lead WHERE Id = :lead.Id];
        
           system.debug('--TEST lead.Region__c before method:' + lead.Region__c);
           system.debug('--TEST leadTest.Region__c after method:' + leadTest.Region__c);
           system.debug('--TEST controller.newRegion:' + controller.newRegion);
        
           //Assert that the lead's region was changed
        System.assert(leadTest.Region__c == controller.newRegion);
        
        //Stop test
        test.stopTest();
    }
    
    static testMethod void leadTransferFailedTest() {
        //Create a Region
        Region__c region = new Region__c();
        region.Name = 'San Francisco';
        insert region;
        
        //Create a Zone
        Zone__c zone = new Zone__c();
        zone.Region__c = region.Id;
        zone.Name = 'Zone 1';
        
        //Create a Zipcode
        Zip_Code__c zipcode = new Zip_Code__c();
        zipcode.Zone__c = zone.Id;
        zipcode.Name = '94002';
                
        //Create a Lead
        Lead lead = new Lead();
        lead.Company = 'Company Name';
        lead.FirstName = 'FName';
        lead.LastName = 'LName';
        lead.Region__c = 'San Francisc';
        lead.ZipCode__c = zipcode.Id;
        lead.PostalCode = '85220';
        insert lead;
           
        //Start test
        test.startTest();
        
        //Set Current Page
        PageReference currPage = new PageReference('/apex/LeadUtils');
        System.test.setCurrentPage(currPage);
        
        //Initialize Controller
        LeadUtilsController controller = new LeadUtilsController();
        
           //Set old and new regions
           controller.oldRegion = 'San Francisc';
           controller.newRegion = 'San Francisco';
        
           //Run transfer method
           controller.updateRegion();
           
        //Stop test
        test.stopTest();
           
           //Assert that there was an error message
        System.assert(ApexPages.hasMessages(ApexPages.Severity.ERROR));
    }
    
    static testMethod void leadRemapTest() {     
        //Create a Region
        Region__c region = new Region__c();
        region.Name = 'San Francisco';
        insert region;
        
        //Create a Zone
        Zone__c zone = new Zone__c();
        zone.Region__c = region.Id;
        zone.Name = 'Zone 1';
        
        //Create a Zipcode
        Zip_Code__c zipcode = new Zip_Code__c();
        zipcode.Zone__c = zone.Id;
        zipcode.Name = '94002';
                
        //Create a Lead
        Lead lead = new Lead();
        lead.Company = 'Company Name';
        lead.FirstName = 'FName';
        lead.LastName = 'LName';
        lead.Region__c = 'San Francisco';
        lead.PostalCode = '94002';
        insert lead;
        
        //Start test
        test.startTest();
        
        //Set Current Page
        PageReference currPage = new PageReference('/apex/LeadUtils');
        System.test.setCurrentPage(currPage);
        
        //Initialize Controller
        LeadUtilsController controller = new LeadUtilsController();
        
           //Set old and new regions
           controller.newRegionMap = 'San Francisco';
        
           //Run remap method
           controller.remapRegion();
        
           //Assert that there was no error message
        System.assert(ApexPages.hasMessages(ApexPages.Severity.INFO));
        
        //Stop test
        test.stopTest();
    }
    
    static testMethod void leadRemapNoLeadsTest() {
        //Start test
        test.startTest();     
        
        //Set Current Page
        PageReference currPage = new PageReference('/apex/LeadUtils');
        System.test.setCurrentPage(currPage);
        
        //Initialize Controller
        LeadUtilsController controller = new LeadUtilsController();
        
           //Set old and new regions
           controller.newRegionMap = 'San Francisco';
        
           //Run remap method
           controller.remapRegion();
        
           //Assert that there was no error message
        System.assert(ApexPages.hasMessages(ApexPages.Severity.ERROR));
        
        //Stop test
        test.stopTest();
    }
}

I have written a test that runs 100% successfully on the full development environment. When I attempt to validate deployment to the production server, it fails with the 'External Entry Point' Error on the last assert in my leadTransferTest() method. I have compared the objects on both the production and dev environments and cannot find any difference. Any help/suggestions would be greatly appreciated!!

 

private class LeadUtilsControllerTest {

    static testMethod void leadTransferTest() {
        //Create a Region
        Region__c region = new Region__c();
        region.Name = 'San Francisco';
        insert region;
        
        //Create a Zone
        Zone__c zone = new Zone__c();
        zone.Region__c = region.Id;
        zone.Name = 'Zone 1';
        
        //Create a Zipcode
        Zip_Code__c zipcode = new Zip_Code__c();
        zipcode.Zone__c = zone.Id;
        zipcode.Name = '94002';
                
        //Create a Lead
        Lead lead = new Lead();
        lead.Company = 'Company Name';
        lead.FirstName = 'FName';
        lead.LastName = 'LName';
        lead.Region__c = 'San Francisc';
        lead.PostalCode = '94002';
        insert lead;
        
        //Start test
        test.startTest();
        
        //Set Current Page
        PageReference currPage = new PageReference('/apex/LeadUtils');
        System.test.setCurrentPage(currPage);
        
        //Initialize Controller
        LeadUtilsController controller = new LeadUtilsController();
        
           //Set old and new regions
           controller.oldRegion = 'San Francisc';
           controller.newRegion = 'San Francisco';
        
           //Check to see if getItems has more than 0 items
           System.assert(controller.getItems().size() > 0);
           
           //Run transfer method
           controller.updateRegion();
           
           //Requery the leads
        Lead leadTest = [SELECT Id, PostalCode, Region__c, ZipCode__c FROM Lead WHERE Id = :lead.Id];
        
           system.debug('--TEST lead.Region__c before method:' + lead.Region__c);
           system.debug('--TEST leadTest.Region__c after method:' + leadTest.Region__c);
           system.debug('--TEST controller.newRegion:' + controller.newRegion);
        
           //Assert that the lead's region was changed
        System.assert(leadTest.Region__c == controller.newRegion);
        
        //Stop test
        test.stopTest();
    }
    
    static testMethod void leadTransferFailedTest() {
        //Create a Region
        Region__c region = new Region__c();
        region.Name = 'San Francisco';
        insert region;
        
        //Create a Zone
        Zone__c zone = new Zone__c();
        zone.Region__c = region.Id;
        zone.Name = 'Zone 1';
        
        //Create a Zipcode
        Zip_Code__c zipcode = new Zip_Code__c();
        zipcode.Zone__c = zone.Id;
        zipcode.Name = '94002';
                
        //Create a Lead
        Lead lead = new Lead();
        lead.Company = 'Company Name';
        lead.FirstName = 'FName';
        lead.LastName = 'LName';
        lead.Region__c = 'San Francisc';
        lead.ZipCode__c = zipcode.Id;
        lead.PostalCode = '85220';
        insert lead;
           
        //Start test
        test.startTest();
        
        //Set Current Page
        PageReference currPage = new PageReference('/apex/LeadUtils');
        System.test.setCurrentPage(currPage);
        
        //Initialize Controller
        LeadUtilsController controller = new LeadUtilsController();
        
           //Set old and new regions
           controller.oldRegion = 'San Francisc';
           controller.newRegion = 'San Francisco';
        
           //Run transfer method
           controller.updateRegion();
           
        //Stop test
        test.stopTest();
           
           //Assert that there was an error message
        System.assert(ApexPages.hasMessages(ApexPages.Severity.ERROR));
    }
    
    static testMethod void leadRemapTest() {     
        //Create a Region
        Region__c region = new Region__c();
        region.Name = 'San Francisco';
        insert region;
        
        //Create a Zone
        Zone__c zone = new Zone__c();
        zone.Region__c = region.Id;
        zone.Name = 'Zone 1';
        
        //Create a Zipcode
        Zip_Code__c zipcode = new Zip_Code__c();
        zipcode.Zone__c = zone.Id;
        zipcode.Name = '94002';
                
        //Create a Lead
        Lead lead = new Lead();
        lead.Company = 'Company Name';
        lead.FirstName = 'FName';
        lead.LastName = 'LName';
        lead.Region__c = 'San Francisco';
        lead.PostalCode = '94002';
        insert lead;
        
        //Start test
        test.startTest();
        
        //Set Current Page
        PageReference currPage = new PageReference('/apex/LeadUtils');
        System.test.setCurrentPage(currPage);
        
        //Initialize Controller
        LeadUtilsController controller = new LeadUtilsController();
        
           //Set old and new regions
           controller.newRegionMap = 'San Francisco';
        
           //Run remap method
           controller.remapRegion();
        
           //Assert that there was no error message
        System.assert(ApexPages.hasMessages(ApexPages.Severity.INFO));
        
        //Stop test
        test.stopTest();
    }
    
    static testMethod void leadRemapNoLeadsTest() {
        //Start test
        test.startTest();     
        
        //Set Current Page
        PageReference currPage = new PageReference('/apex/LeadUtils');
        System.test.setCurrentPage(currPage);
        
        //Initialize Controller
        LeadUtilsController controller = new LeadUtilsController();
        
           //Set old and new regions
           controller.newRegionMap = 'San Francisco';
        
           //Run remap method
           controller.remapRegion();
        
           //Assert that there was no error message
        System.assert(ApexPages.hasMessages(ApexPages.Severity.ERROR));
        
        //Stop test
        test.stopTest();
    }
}