+ Start a Discussion
Best Answer chosen by Abhishek patil 26
Abhishek patil 26Abhishek patil 26
/// this is my first vf page custom controller

public with sharing class newcustomerandagent {

    public PageReference saveagent() {
    insert a; 
    id agentid=a.Id;  //this is im storing the id of inserted record.
      PageReference pageRef = new PageReference('https://c.cs15.visual.force.com/apex/agent_dtail?id='+agentid); // here im passing id through url
    return pageRef;
    
    }
}

///// this is my second vf page code
<apex:page >
<apex:pageBlock >
<apex:pageBlockSection >
<apex:detail subject="{!$CurrentPage.parameters.id}"/>// here im getting the id which i passed from url
</apex:pageBlockSection>
</apex:pageBlock>
</apex:page>
iyappan kandasamy 4iyappan kandasamy 4 
Actually this is my apex class for addition of 2 numbers 
public class Addition         //define class
{
  public integer a=5;        //define variables
  public integer b=4;
  public integer c;

  public integer add()               //define function or method
  {
  c=a+b;
  system.debug('the result is '+c);
        return c;
  }
}// end of class


My Test class
----------------
@isTest
public class Additiontest
{
    static testmethod void testadd()
    {
     integer a=5;
     integer b=7;
     integer c=12;
     system.assertEquals(12,12); 
    }  
    
}

and when executing the test class it is showing as pass...

Please need help on this....thanks
Best Answer chosen by iyappan kandasamy 4
SFDC Dev 2269SFDC Dev 2269
Hey @iyappan kandasamy 4,
Test class is used to test your functionality(class you have writter), and in order to test your functionality you need to invoke the Addition class and its methods.
In your test class you have just added the two integers. you need to invoke your class as below in your test class
 
@isTest
public class Additiontest
{
	static testmethod void testadd()
    {
		Addition addObj = new Addition();
		Integer result = addObj.add();
		System.assertEquals(9,result); // As value of a and b in Addition class are 5,4 the expected value is 9
    }  
    
}

Refer: https://developer.salesforce.com/page/An_Introduction_to_Apex_Code_Test_Methods
 
Nagarjuna BollivaramNagarjuna Bollivaram 
I'm new to slaesforce.I want to create test class for my below code:

public class AccountContOpptCheckBoxController {
    
    public List<Account> acctList{get;set;}
    public List<Contact> conList{get;set;}
    public List<Opportunity> oppList{get;set;}
    public List<ContactWrapper> conWrList{get;set;}
    public List<OpportunityWrapper> opportList{get;set;}
    public List<Contact> selectedContacts{get;set;}
    public List<Opportunity> selectedOpportunities{get;set;}
    //public List<StoreAccountData__c> storeList{get;set;}
    public List<StoreAccountData__c> storedList= new List<StoreAccountData__c>();
     
    Set<ID> acctIds = new Set<ID>();
    
    public AccountContOpptCheckBoxController(ApexPages.standardController controller){  
        getAccountDetails();
        for(Account ac: acctList){ 
            if(ac.Id != null){
                acctIds.add(ac.Id);
            } 
        }
    }
    
    public List<Account> getAccountDetails() {    
           acctList = Database.query('SELECT Name FROM Account LIMIT 1');
        return acctList;
 }
    
    public PageReference reset() {
        
       PageReference newpage = new PageReference(System.currentPageReference().getURL());   
   newpage.getParameters().clear();
   newpage.setRedirect(true);
   return newpage;
        
    }
    
    public class ContactWrapper {
     public boolean cb {get;set;}
     public Contact contct {get;set;}

     public ContactWrapper(Contact contct){
          cb=false;
          this.contct = contct;
     }
}
    
    public class OpportunityWrapper {
     public boolean cbOp {get;set;}
     public Opportunity oppornty {get;set;}

     public OpportunityWrapper(Opportunity oppornty){
          cbOp=false;
          this.oppornty = oppornty;
     }
}
    
    public Pagereference getContacts() {
        if(conWrList == null) {
            conWrList = new List<ContactWrapper>();
            for(Contact c : [select id,name,phone,accountId from contact where accountid in : acctIds]) {
                conWrList.add(new ContactWrapper(c));
            }
        }
        return NULL;
    }
    
        public Pagereference getOpportunitiess() {
        if(opportList == null) {
            opportList = new List<OpportunityWrapper>();
            for(Opportunity p : [select id,name,StageName,AccountId from Opportunity where accountid in : acctIds]) {
                opportList.add(new OpportunityWrapper(p));
            }
        }
        return NULL;
    }
    
    public List<Contact> getSelectContactDetails()
    {
        selectedContacts = new List<Contact>();
        if(conWrList!=null){
            for(ContactWrapper cCon : conWrList) {
                if(cCon.cb == true) {
                    selectedContacts.add(cCon.contct);
                }
            }
        }
        return selectedContacts;
    }
    
    public List<Opportunity> getSelectOpporDetails()
    {
        selectedOpportunities = new List<Opportunity>();
        if(opportList!=NULL){
            for(OpportunityWrapper Opt : opportList) {
                if(Opt.cbOp == true) {
                    selectedOpportunities.add(Opt.oppornty);
                }
            }
        }
        return selectedOpportunities;
    }
    
    public PageReference submit() {
        PageReference np = new PageReference('/apex/FetchAcctContactOpprCheckboxPage');
        np.setRedirect(false);
        return np;
    }
     public PageReference back() {
        PageReference bp = new PageReference('/apex/AccountContOpptCheckboxPage');
        bp.setRedirect(false);
        return bp;
    }
    
    public PageReference confirm() {
        
        List<StoreAccountData__c> storeList= new List<StoreAccountData__c>();
        
        if(selectedContacts!=null){
            for(Contact ct:selectedContacts){
                StoreAccountData__c sd= new StoreAccountData__c();
                //ApexPages.addMessage(new ApexPages.Message(ApexPages.SEVERITY.INFO,'Select Name--'+ct.AccountId));
                sd.AccountStore__c=ct.AccountId;
                sd.Name=ct.Name;
                sd.Phone__c=ct.Phone;
                storeList.add(sd);
            }
        }
        
        if(selectedOpportunities!=null){
             for(Opportunity op:selectedOpportunities){
                StoreAccountData__c sd1= new StoreAccountData__c();
                sd1.AccountStore__c=op.AccountId;
                sd1.OppName__c=op.Name;
                sd1.StageName__c=op.StageName;
                storeList.add(sd1);
            }
        }
        insert storeList;     
        ApexPages.addMessage(new ApexPages.Message(ApexPages.SEVERITY.INFO,'Records added successfully'));
        return NULL;
    }
}
Best Answer chosen by Nagarjuna Bollivaram
{!Piyush_soni__c}{!Piyush_soni__c}
Hi 
try following test class, 
@isTest
public class AccountContOpptCheckBoxControllerTest {
    private static testmethod void myTest(){
        account acc = new account();
        acc.name = 'test';
        // add all account required fields here 
        insert acc;
        
        contact cc = new contact();
        cc.lastName = 'test 1230';
        cc.AccountId = acc.Id;
        // add all contact required fields here 
        insert cc;
        
        Opportunity opp = new opportunity();
        opp.Name = 'test opp';
        opp.AccountId = acc.Id; 
        opp.CloseDate = system.today();
        opp.StageName = 'Closed Won';
        // add all opportunity required fields here 
        insert opp;
       
                      
        ApexPages.StandardController sc = new ApexPages.StandardController(acc);
        
       
        AccountContOpptCheckBoxController obj = new AccountContOpptCheckBoxController(sc);
        obj.getContacts();
        obj.getOpportunitiess();
        obj.getSelectContactDetails();
        obj.getSelectOpporDetails();
        obj.submit();
        obj.back();
        obj.confirm();
        
        list<contact> lstTestCon = obj.conList;
        list<opportunity> lstTestopp = obj.oppList;
    }
    
}

this will gives your around 80% of code coverage

Please follow below salesforce Best Practice for Test Classes :-

1. Test class must start with @isTest annotation if class class version is more than 25
2. Test environment support @testVisible , @testSetUp as well
3. Unit test is to test particular piece of code working properly or not .
4. Unit test method takes no argument ,commit no data to database ,send no email ,flagged with testMethod keyword .
5. To deploy to production at-least 75% code coverage is required 
6. System.debug statement are not counted as a part of apex code limit.
7. Test method and test classes are not counted as a part of code limit
9. We should not focus on the  percentage of code coverage ,we should make sure that every use case should covered including positive, negative,bulk and single record .
Single Action -To verify that the the single record produces the correct an expected result .
Bulk action -Any apex record trigger ,class or extension must be invoked for 1-200 records .
Positive behavior : Test every expected behavior occurs through every expected permutation , i,e user filled out every correctly data and not go past the limit .
Negative Testcase :-Not to add future date , Not to specify negative amount.
Restricted User :-Test whether a user with restricted access used in your code .
10. Test class should be annotated with @isTest .
11 . @isTest annotation with test method  is equivalent to testMethod keyword .
12. Test method should static and no void return type .
13. Test class and method default access is private ,no matter to add access specifier .
14. classes with @isTest annotation can't be a interface or enum .
15. Test method code can't be invoked by non test request .
16. Stating with salesforce API 28.0 test method can not reside inside non test classes .
17. @Testvisible annotation to make visible private methods inside test classes.
18. Test method can not be used to test web-service call out . Please use call out mock .
19. You can't  send email from test method.
20.User, profile, organization, AsyncApexjob, Corntrigger, RecordType, ApexClass, ApexComponent ,ApexPage we can access without (seeAllData=true) .
21. SeeAllData=true will not work for API 23 version eailer .
22. Accessing static resource test records in test class e,g List<Account> accList=Test.loadData(Account,SobjectType,'ResourceName').
23. Create TestFactory class with @isTest annotation to exclude from organization code size limit .
24. @testSetup to create test records once in a method  and use in every test method in the test class .
25. We can run unit test by using Salesforce Standard UI,Force.com IDE ,Console ,API.
26. Maximum number of test classes run per 24 hour of period is  not grater of 500 or 10 multiplication of test classes of your organization.
27. As apex runs in system mode so the permission and record sharing are not taken into account . So we need to use system.runAs to enforce record sharing .
28. System.runAs will not enforce user permission or field level permission .
29. Every test to runAs count against the total number of DML issued in the process .

Thanks, let us know if it helps you
ESTEST 

Hello, Forum:

 

I've read various posts around the forums concerning the defaulting in of values from a parent object into a newly created child object.  But I still don't see a solution out there.

 

I've created a VF page.  Using a topmost pageBlock, I've created a sort of boilerplate region where certain key information from the parent object is displayed.  This is a common technique, and it serves to orient the user in the child object with respect to the parent object.

 

But I'm having trouble implementing this technique.  It seems that newly created child objects do not have access to parent object values.  This is absolutely essential.  I need to fill in certain child fields based on values in the parent.  For example, in the boilerplate region, I need to display the project name of the parent object, not just its name.  The bid due date and time on the parent object needs to default in as the bid due date and time for the child object, etc.

 

Is there a way to accomplish this with JavaScript?  If we can't accomplish this, it would be a dealbreaker for us with SF.

 

Thank you.

Best Answer chosen by Admin (Salesforce Developers) 
bmabma

In this case, you would need to override the "New" button of your child object with a VF page.

 

You would need to specify which fields you want on the page and etc. Here is a sample page example:

 

<apex:page standardController="child__c" extensions="childExtension" > <apex:form > <apex:pageBlock title="Child"> <apex:pageBlockButtons> <apex:commandButton action="{!save}" value="Save"/> <apex:commandButton action="{!cancel}" value="Cancel"/> </apex:pageblockButtons> <apex:pageblockSection > <!-- list other fields you want user to input data --> <apex:inputField value="{!child__c.parent_value__c}"/> </apex:pageblockSection> </apex:pageBlock> </apex:form> </apex:page>

 

You see from the sample above I used an apex extension. We want to copy the value from the parent object to the child object inside there.

 

 

public class childExtension { public childExtension(ApexPages.StandardController controller) { Child__c child = (Child__c)controller.getRecord(); //if you always create the child object through relatedList //parent__c should not be null if (child.parent__c != null) { Parent__c parent = [select value__c from parent__c where id =: child.parent__c limit 1]; child.parent_value__c = parent.value__c; } } }

 

 Let me know if this meet your requirement or not.

 

 

Pritesh Khole 1Pritesh Khole 1 
Hi Team,

On Lead, we have an Accounts as a Look up, we have a requirement that whenver the user selects an Account, the Company name should be populated with the Account Name in Real time, without saving the record. I have created the below VF page and Extension controller, however not able to achieve the result. Any help is appreciated.

Visualforce Page

<apex:page lightningStylesheets="true" standardController="Lead" extensions="LeadControllerExtension" tabStyle="Lead">
    <apex:form id="form1">
        <apex:sectionheader title="Lead Edit" subtitle="{!if(Lead.Id==null,'New Lead',Lead.Name)}">
        </apex:sectionheader>
        <apex:pageblock mode="edit" id="leadPB" title="Lead Edit">
         <apex:pageblockbuttons >
             <apex:commandbutton action="{!save}" value="Save">
             </apex:commandbutton>
          <apex:commandbutton action="{!cancel}" value="Cancel"></apex:commandbutton>
             </apex:pageblockbuttons>
            <apex:pagemessages ></apex:pagemessages>
            <apex:pageblocksection id="LeadInformationPBS" title="Lead Information">
            <apex:inputfield value="{!Lead.Phone}"></apex:inputfield>
                
            <apex:pageblocksectionitem >
                <apex:outputlabel value="{!$ObjectType.Lead.Fields.FirstName.label}"></apex:outputlabel>
                <apex:outputpanel >
                <apex:inputfield value="{!Lead.Salutation}"></apex:inputfield>
                <apex:inputfield value="{!Lead.FirstName}"></apex:inputfield>
                </apex:outputpanel>
                </apex:pageblocksectionitem>
                <apex:inputfield value="{!Lead.MobilePhone}"></apex:inputfield>
                <apex:inputfield value="{!Lead.LastName}"></apex:inputfield>
                <apex:inputfield value="{!Lead.Fax}"></apex:inputfield>
                <apex:inputField value="{!Lead.Company}">
                <!---<apex:actionSupport event="onchange" action="{!getAcc}" reRender="form1"/> -->
                </apex:inputField>
                                                                <apex:inputfield value="{!Lead.Account__c}">
                  <apex:actionSupport event="onchange" action="{!getAcc}" reRender="{!pageBlockList}"/>
                    <apex:messages />
                </apex:inputfield>
                <apex:inputfield value="{!Lead.Email}"></apex:inputfield>
                <apex:inputfield value="{!Lead.Title}"></apex:inputfield>
                <apex:inputfield value="{!Lead.Website}"></apex:inputfield>
                <apex:inputfield value="{!Lead.Leadsource}"></apex:inputfield>
     <apex:inputfield value="{!Lead.Status}"></apex:inputfield>
                
     <apex:pageblocksection id="AddressInformationPBS" title="Address Information">
                <apex:inputfield value="{!Lead.Street}"></apex:inputfield>
                <apex:outputtext value=""></apex:outputtext>
                <apex:inputfield value="{!Lead.City}"></apex:inputfield>
     <apex:outputtext value=""></apex:outputtext>
                <apex:inputfield value="{!Lead.State}"></apex:inputfield>
     <apex:outputtext value=""></apex:outputtext>
                <apex:inputfield value="{!Lead.PostalCode}"></apex:inputfield>
                <apex:outputtext value=""></apex:outputtext>
                <apex:inputfield value="{!Lead.Country}"></apex:inputfield>
                <apex:outputtext value=""></apex:outputtext>
                                                   
      </apex:pageblocksection>
      </apex:pageblocksection>
         
    </apex:pageblock>
  </apex:form>
       
</apex:page>

Extension Controller:

public with sharing class LeadControllerExtension
{
public Lead LR{get;set;}
public Account con{get;set;}
    
public ApexPages.StandardController stdcntrl{get;set;}
public LeadControllerExtension(ApexPages.StandardController cntrl){
stdcntrl=cntrl;
this.LR = (Lead) stdcntrl.getRecord();
}
    
 public string getAcc(){
     //apexpages.addMessage(new ApexPages.message(ApexPages.Severity.INFO, 'Company Value' ));
//Lead new l1=new Lead();
LR=[Select id,name,Account__c,Company from Lead LIMIT 1];
con=[select name from Account where id= :LR.Account__c];

 LR.Company=con.Name;
return LR.Company;

    }

                }

 
Best Answer chosen by Pritesh Khole 1
Raj VRaj V
Use this code
 
<apex:page lightningStylesheets="true" standardController="Lead" extensions="LeadControllerExtension" tabStyle="Lead">
    <apex:form id="form1">
        <apex:sectionheader title="Lead Edit" subtitle="{!if(Lead.Id==null,'New Lead',Lead.Name)}">
        </apex:sectionheader>
        <apex:pageblock mode="edit" id="leadPB" title="Lead Edit" >
            <apex:pageblockbuttons >
                <apex:commandbutton action="{!save}" value="Save">
                </apex:commandbutton>
                <apex:commandbutton action="{!cancel}" value="Cancel"></apex:commandbutton>
            </apex:pageblockbuttons>
            <apex:pagemessages ></apex:pagemessages>
            <apex:pageblocksection id="LeadInformationPBS" title="Lead Information">
                <apex:inputfield value="{!Lead.Phone}"></apex:inputfield>
                
                
                <apex:outputlabel value="{!$ObjectType.Lead.Fields.FirstName.label}"></apex:outputlabel>
                <apex:outputpanel >
                    <apex:inputfield value="{!Lead.Salutation}"></apex:inputfield>
                    <apex:inputfield value="{!Lead.FirstName}"></apex:inputfield>
                </apex:outputpanel>
                <apex:inputfield value="{!Lead.MobilePhone}"></apex:inputfield>
                <apex:inputfield value="{!Lead.LastName}"></apex:inputfield>
                <apex:inputfield value="{!Lead.Fax}"></apex:inputfield>
                
                <apex:inputField value="{!Lead.Company}" id="asdasdasd">
                    <!---<apex:actionSupport event="onchange" action="{!getAcc}" reRender="form1"/> -->
                </apex:inputField>
                <apex:actionRegion >
                    <apex:inputfield value="{!Lead.Account__c}">
                        <apex:actionSupport event="onchange" action="{!getAcc}" reRender="pageBlockList,asdasdasd,democom"/>
                        <apex:messages />
                    </apex:inputfield>
                </apex:actionRegion>
                <apex:inputfield value="{!Lead.Email}"></apex:inputfield>
                <apex:inputfield value="{!Lead.Title}"></apex:inputfield>
                <apex:inputfield value="{!Lead.Website}"></apex:inputfield>
                <apex:inputfield value="{!Lead.Leadsource}"></apex:inputfield>
                <apex:inputfield value="{!Lead.Status}"></apex:inputfield>
                
                <apex:pageblocksection id="AddressInformationPBS" title="Address Information">
                    <apex:inputfield value="{!Lead.Street}"></apex:inputfield>
                    <apex:outputtext value=""></apex:outputtext>
                    <apex:inputfield value="{!Lead.City}"></apex:inputfield>
                    <apex:outputtext value=""></apex:outputtext>
                    <apex:inputfield value="{!Lead.State}"></apex:inputfield>
                    <apex:outputtext value=""></apex:outputtext>
                    <apex:inputfield value="{!Lead.PostalCode}"></apex:inputfield>
                    <apex:outputtext value=""></apex:outputtext>
                    <apex:inputfield value="{!Lead.Country}"></apex:inputfield>
                    <apex:outputtext value=""></apex:outputtext>
                    
                </apex:pageblocksection>
            </apex:pageblocksection>
            
        </apex:pageblock>
    </apex:form>
    
</apex:page>

 
KunKun 
Hi,
 
According to help if i want to make my account name unique i need to make sure my syntax is "name" in validation rules. But it doesnt seems to work as validation rules will only return true/false. Did I make any mistake? Please help me.
 
Thanks
 
 
 
 
Best Answer chosen by Admin (Salesforce Developers) 
KunKun

Hi,

I tested EricB solutions and it works...

Thanks alot

Raghvendra Singh 22Raghvendra Singh 22 
Hi Guys,

How to achive this:  Fetch the Email template and show in dropdown in Lightning Component

Thanks,
Raghu
Best Answer chosen by Raghvendra Singh 22
Raj VRaj V
Here is the code
 
public class EmailController {
    @AuraEnabled 
    public static List<EmailTemplate> getEmailTemplate(){
        return [SELECT Id,Body,DeveloperName FROM EmailTemplate];
    }
}
 
<aura:component controller="EmailController">
    
    <aura:attribute name="options" type="List" default=""/>
    
    
    <aura:handler name="init" value="this" action="{!c.doInit}"/>
    
    
    <lightning:combobox name="Email Templates" label="Email Templates" value="Email Templates" placeholder="Select Email Templates" 
                        options="{! v.options }" onchange="{! c.handleChange }"/>
    
    
    
</aura:component>
 
({
    doInit : function(component, event, helper) {
        var action = component.get("c.getEmailTemplate");
        
        action.setCallback(this, function(response) {
            var state = response.getState();
            if (state === "SUCCESS") {
                let resp =response.getReturnValue() ;
                let lables= [] ; 
                resp.forEach(function(key) {
                    lables.push({"label":key.DeveloperName ,"value":key.DeveloperName});
                });
                component.set("v.options", lables);
                //   cmp.set("v.contactList", response.getReturnValue());
            }
            
        })
        
        $A.enqueueAction(action);
        
    },
    
    handleChange: function(component, event, helper){
        
        
    }
    
})



 
KevinsanKevinsan 
I try to use overlayLibrary for popover action.
Get the error message below, can anyone help?
"Cannot read property 'la' of undefined"
<aura:component >    
    <lightning:overlayLibrary aura:id="overlayLib"/>
    <lightning:button name="popover" label="Show Popover" onclick="{!c.handleShowPopover}"/>    
    <div class="mypopover" onmouseover="{!c.handleShowPopover}">Popover should display if you hover over here.</div>
</aura:component>

// Controller
({
    handleShowPopover : function(component, event, helper) {
        component.find('overlayLib').showCustomPopover({
            body: "Popovers are positioned relative to a reference element",
            referenceSelector: ".mypopover",
            cssClass: "popoverclass"
        }).then(function (overlay) {
            setTimeout(function(){ 
                //close the popover after 3 seconds
                overlay.close(); 
            }, 3000);
        });
    }
})

// app
<aura:application >
    <c:Popover_OneStop />
</aura:application>


 
Best Answer chosen by Kevinsan
Raj VRaj V
lightning: overlayLibrary is not supported in the lightning application. It's supported only on salesforce lightning experience Lightning, Console, Communities .


If you wanted to test it create a component tab or add the component to the lightning experience and test and it not with the app 
Talgat BokeshovTalgat Bokeshov 
I have a custom object called Pencil Box and Pencils. They have a one-to-many relationship(Pencil Box is a parent and Pencil is a child).  
I want to create a TextField where you enter the name of the Pencil Box and the program outputs you all the pencils that this Box has.
For example:
Pencil Box: Wooden(Black, Yellow, White), Fur(Blue, Green, Purple)

If I enter Fur the program should output the following  
Blue, Green, Purple
Best Answer chosen by Talgat Bokeshov
Narender Singh(Nads)Narender Singh(Nads)
Hi,

Your code will look something like this: I am assuming that Plural Label for Pencil_Box__c object is Pencil_Boxes
VF PAGE:
-------------
<apex:page  controller="cls">
    <apex:form>
        Enter Pencil Box Name: <apex:inputText value="{!PencilBoxName}" />
       
        <apex:commandButton value="Search Pencils" action="{SearchPencils}" reRender="Page" />
        <apex:pageBlock id="Page">
            <apex:pageBlockTable rendered="{!if(PencilsFound.size>0,true,false)}" value="{!PencilsFound}" var="p" >
                <apex:column value="{!p.Name}" />
            </apex:pageBlockTable>
        </apex:pageBlock>
    </apex:form>
</apex:page>


Controller
-------------
public class cls{
    
    public string PencilBoxName{get;set;}
    public Pencil__c[] PencilsFound{get;set;}
           Pencil_Box__c PencilBox{get;set;}
    public cls(){
        PencilsFound=new Pencil__c[]{};
    }
    
    public void SearchPencils(){
        PencilBox=[select id,(Select name from Pencil_Boxes__r ) from Pencil_Box__c where name=:PencilBoxName limit 1];
        
        for( Pencil_Box__c obj: pencilbox.Pencil_Boxes__r ){
            PencilsFound.add(obj);
        }
        
    }
}

Let me know if it helps
Thanks
Justin MilburnJustin Milburn 
Hello everyone,

I am trying to verify the Trailhead challenge found at https://trailhead.salesforce.com/projects/create-reports-and-dashboards-for-sales-and-marketing-managers/steps/visualize-your-data-with-conditional-highlighting-report-charts-and-dashboards?trailmix_creator_id=00550000006yDdKAAU&trailmix_id=prepare-for-your-salesforce-administrator-credential and I keep geting an error when verifying. The error in its netirety is copied below. Can anyone advise what I'm doing wrong or what I'm missing? I've spun up a new org and gone through the remainder of the module to get the data back in, but I keep getting the same type of error. 

Challenge Not yet complete... here's what's wrong: 
There was an unexpected error while verifying this challenge. Usually this is due to some pre-existing configuration or code in the challenge Org. We recommend using a new Developer Edition (DE) to check this challenge. If you're using a new DE and seeing this error, please post to the developer forums and reference error id: PARKGGFT
Best Answer chosen by Justin Milburn
NagendraNagendra (Salesforce Developers) 
Hi Justin,

Sorry for this issue you are encountering.

May I request you please confirm if you are using a brand new developer org for validating the challenge?

If you are using a brand new developer org then please double check that your org doesn't have a namespace enabled.If that doesn't help please give a try by restarting the batch

Still, if the problem persists log out of all accounts and log in once again in a different browser by clearing the cache and cookies which should probably do the trick.

Please let us know if this helps.

Mark this as solved if it's resolved.

Thanks,
Nagendra