-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathTestLeadConvertPage.cls
122 lines (88 loc) · 5.5 KB
/
TestLeadConvertPage.cls
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
@isTest
private class TestLeadConvertPage {
static testMethod void myUnitTest() {
Account newAccount = new Account(
name = 'Test Account'
);
Insert newAccount;
Lead newLead = new Lead(
Company = 'Test Account', LastName= 'Test Lead',
LeadSource = 'Web',
Status = 'Closed - Converted');
Insert newLead;
ApexPages.StandardController stdController = new ApexPages.StandardController(newLead);
leadConvertController leadController = new leadConvertController(stdController);
leadcontroller.leadToConvert = newLead;
leadController.getMyComponentController();
leadController.getmyDescriptionComponentController();
leadController.getmyTaskComponentController();
leadController.getThis();
PageControllerBase pgBase = new PageControllerBase();
pgBase.getMyComponentController();
pgBase.getmyDescriptionComponentController();
pgBase.getmyTaskComponentController();
pgBase.getThis();
pgBase.getmyReminderComponentController();
ComponentControllerBase compBase = new ComponentControllerBase();
compBase.pageController = pgBase;
compBase.pageControllerDescription = pgBase;
compBase.pageControllerReminder = pgBase;
compBase.pageControllerTask = pgBase;
leadController.setComponentController(new leadConvertCoreComponentController());
leadController.setDescriptionComponentController(new leadConvertTaskDescComponentController());
leadController.setTaskComponentController(new leadConvertTaskInfoComponentController() );
system.assert(leadController.myTaskComponentController != null);
leadController.myTaskComponentController.taskID.Subject = 'TEST TASK';
leadController.myTaskComponentController.taskID.Priority = 'High';
leadController.myTaskComponentController.taskID.Status = 'Not Started';
leadController.myComponentController.selectedAccount = newAccount.Id;
leadController.myComponentController.leadConvert = newLead;
Contact contactID = leadController.myComponentController.contactID;
leadController.myComponentController.doNotCreateOppty = true;
List<SelectOption> leadStatuses = leadController.myComponentController.LeadStatusOption;
Opportunity opportunityID = leadController.myComponentController.opportunityID;
//leadController.reminder = true;
String reminderTime = leadController.myTaskComponentController.remCon.reminderTime;
List<SelectOption> timeOptions = leadController.myTaskComponentController.remCon.ReminderTimeOption;
leadController.myDescriptionComponentController.sendNotificationEmail = true;
leadController.myComponentController.sendOwnerEmail = true;
List<SelectOption> priorityOptions = leadController.myTaskComponentController.TaskPriorityOption;
List<SelectOption> statusOptions = leadController.myTaskComponentController.TaskStatusOption;
leadController.convertLead();
leadController.PrintErrors(new List<Database.Error>());
leadController.PrintError('Test');
//see if the new account was created
Account [] checkAccount = [SELECT Id FROM Account WHERE Name ='Test Account' ];
system.debug(checkAccount);
system.assertEquals(1, checkAccount.size(), 'There was a problem converting lead to an account');
//see if the new account was created
Contact [] checkContact = [SELECT Id FROM Contact WHERE Name ='Test Lead' ];
system.debug(checkContact);
system.assertEquals(1, checkContact.size(), 'There was a problem converting lead to a contact');
//
string reminderDate = leadController.myTaskComponentController.remCon.disabledActivityDate;
leadController.myComponentController.accountChanged();
leadController.myComponentController.selectedAccount = 'NEW';
leadController.myComponentController.accountChanged();
// test the reminder time as a French user to test the 24 hour clock
Profile p = [select id from profile where name='Standard User'];
User u = new User(alias = 'standt', email='[email protected]',
emailencodingkey='UTF-8', lastname='Testing', languagelocalekey='fr',
localesidkey='fr', profileid = p.Id,
timezonesidkey='America/Los_Angeles',
username='[email protected]');
System.runAs(u) {
timeOptions = leadController.myTaskComponentController.remCon.ReminderTimeOption;
}
leadController.myComponentController.selectedAccount = 'NONE';
leadController.myDescriptionComponentController.sendNotificationEmail = false;
//test the situation where there is a due date but no subject
leadController.myTaskComponentController.taskID.ActivityDate = system.today();
leadController.myTaskComponentController.taskID.Subject = '';
leadController.myComponentController.leadConvert.Status = 'NONE';
//convert the lead
leadController.convertLead();
leadController.myComponentController.accountLookedUp();
leadController.myTaskComponentController.DueDateChanged();
}
}