You need to sign in to do that
Don't have an account?
Can somebody pls help with the test class for the below code?
public with sharing class ctrl_MultiSelectPickList
{
public String Label{get; set;}
public List<String> selected{get; set;}
public List<String> deselected{get; set;}
public SelectOption Available { get; set; }
public SelectOption Chosen { get; set; }
private List<SelectOption> selectedOptions = null;
private List<SelectOption> AllOptions = null;
// A Reference list (all options)
List<Options> opt{get; set;}
public List<SelectOption> getselectedOptions()
{
return selectedOptions;
}
public void setselectedOptions(List<SelectOption> value)
{
selectedOptions = value;
}
public List<SelectOption> getAllOptions()
{
return AllOptions;
}
public void setAllOptions(List<SelectOption> value)
{
AllOptions = value;
}
private class Options
{
public Integer Index{get; set;}
public String Item{get; set;}
}
public ctrl_MultiSelectPickList()
{
System.Debug('Amritaa Calling constructor ctrl_MultiSelectPickList()');
selected = new List<String>();
deselected = new List<String>();
Available = new SelectOption('Available','Available', true);
Chosen = new SelectOption('Chosen','Chosen', true);
// A map to store all competitors
List<Competitor__c> mapCompetitor = new List<Competitor__c>([SELECT Name FROM Competitor__c ORDER BY Competitor__c.Name ASC]);
Integer i=0;
opt = new List<Options>();
for(Competitor__c comp : mapCompetitor)
{
Options tempOpt = new Options();
tempOpt.Index = i++;
tempOpt.Item = comp.Name;
opt.add(tempOpt);
}
//System.Debug('Amritaa Exiting constructor ctrl_MultiSelectPickList()');
}
public void Selecting()
{
//System.Debug('Amritaa Calling Selecting()');
//System.Debug('Amritaa selected is : ' + selected);
//Amrita selected : (Compensation Strategies, Inc., HMX, Conrad Siegel Actuaries, FPL Advisory)
try
{
for(String toSelect: selected)
{
Integer i = 0;
While(i < AllOptions.size())
{
if(AllOptions[i].getvalue()==toSelect)
{
selectedOptions.add(new SelectOption(toSelect,toSelect));
AllOptions.remove(i);
break;
}
i++;
}
}
selectedOptions = Sort(selectedOptions);
System.Debug('Amritaa chosen box has : ' + selectedOptions);
}
catch(Exception exp)
{
System.Debug(exp.getMessage());
}
//System.Debug('Amritaa Exiting Selecting()');
}
public void Deselecting()
{
//System.Debug('Amritaa Calling Deselecting()');
//System.Debug('Amritaa de-selecting is : ' + deselected);
for(String toDeselect: deselected)
{
Integer i = 0;
While(i < selectedOptions.size())
{
if(selectedOptions[i].getvalue() == toDeselect)
{
AllOptions.add(new SelectOption(toDeselect, toDeselect));
selectedOptions.remove(i);
break;
}
i++;
}
}
AllOptions = sort(AllOptions);
//selectedOptions = SortOptionList(selectedOptions);
//System.Debug('Amritaa Exiting Deselecting()');
}
//Arun
private List<String> sortList(List<String> competitors)
{
Map<String, String> interimMap = new Map<String, String>();
List<String> interimList = new List<String>();
for(String comp : Competitors)
{
interimMap.put(comp.toUpperCase(), comp);
interimList.add(comp.toUpperCase());
}
interimList.sort();
// purge the initial competitors list
competitors.clear();
for(String comp : interimList){
competitors.add(interimMap.get(comp));
}
return competitors;
}
//---Arun
public List<SelectOption> Sort(List<SelectOption> lstToSort)
{
System.Debug('Original List: ' + lstToSort);
List<SelectOption> returnList = new List<SelectOption>();
// Convert SelectOption list To String List
List<String> convertedList = new List<String>();
for(SelectOption opt: lstToSort)
{
//convertedList.add((opt.getLabel()).toUpperCase());
convertedList.add(opt.getLabel());
}
//convertedList.sort();
convertedList = sortList(convertedList);
System.Debug('Convert and Sorted: ' + convertedList);
// Convert String List to SelectOption list
for(String strOpt: convertedList)
{
returnList.add(new SelectOption(strOpt,strOpt));
}
System.Debug('Returning: ' + returnList);
return returnList;
}
// A method to sort the list of "SelectOption"
public static List<SelectOption> SortOptionList(List<SelectOption> ListToSort)
{
//System.Debug('Amritaa Calling POC SortOptionList()');
if(ListToSort == null || ListToSort.size() <= 1)
{
return ListToSort;
}
List<SelectOption> Less = new List<SelectOption>();
List<SelectOption> Greater = new List<SelectOption>();
integer pivot = 0;
// save the pivot and remove it from the list
SelectOption pivotValue = ListToSort[pivot];
ListToSort.remove(pivot);
for(SelectOption opt : ListToSort)
{
if(opt.getLabel() <= pivotValue.getLabel())
{
Less.add(opt);
}
else if(opt.getLabel() > pivotValue.getLabel())
{
Greater.add(opt);
}
}
List<SelectOption> returnList = new List<SelectOption> ();
returnList.addAll(SortOptionList(Less));
returnList.add(pivotValue);
returnList.addAll(SortOptionList(Greater));
//System.Debug('Amritaa Exiting POC SortOptionList()');
return returnList;
}
}