You need to sign in to do that
Don't have an account?
First exception on row 0; first error: REQUIRED_FIELD_MISSING, missing required field: []
Hi i am getting this error in my test class my code is::::::
@isTest (seeAllData = true)
private class testneedAccApproval
{
static testMethod void myUnitTestON24PBA_Recall()
{
test.startTest();
Profile p = [SELECT Id FROM Profile WHERE Name = 'System Administrator'];
User u1 = new User();
u1.Email = 'email1@email.com';
u1.Alias = 'Alias2';
u1.TimeZoneSidKey = 'America/New_York';
u1.LocaleSidKey = 'ca';
u1.EmailEncodingKey = 'UTF-8';
u1.ProfileId = p.id;
u1.LanguageLocaleKey = 'en_US';
u1.FirstName = 'firstname1';
u1.LastName = 'lastname1';
u1.username= 'username1@first.com';
insert u1;
User u2 = new User();
u2.Email = 'email2@email.com';
u2.Alias = 'Alias3';
u2.TimeZoneSidKey = 'America/New_York';
u2.LocaleSidKey = 'ca';
u2.EmailEncodingKey = 'UTF-8';
u2.ProfileId = p.id;
u2.LanguageLocaleKey = 'en_US';
u2.FirstName = 'firstname2';
u2.LastName = 'lastname2';
u2.username= 'username2@first.com';
insert u2;
Product2 p1 = new product2(name='unittest');
insert p1;
Pricebook2 stdPb = [select Id from Pricebook2 where isStandard=true limit 1];
insert new PricebookEntry(pricebook2id = stdPb.id, product2id = p1.id,unitprice=1.0, isActive=true);
Pricebook2 pb = new pricebook2(name='unittest');
insert pb;
PricebookEntry pbe = new PricebookEntry(pricebook2id=pb.id, product2id=p1.id,unitprice=20000.0, isActive=true);
insert pbe;
Account AcntRec = new Account(name = 'Acc', Type = 'Customer', Industry = 'Automotive',BillingCity = 'Avon', BillingCountry = 'USA', BillingPostalCode = '14414', BillingState = 'New York', BillingStreet = 'Wall St');
insert AcntRec;
Opportunity o = new Opportunity (pricebook2id = pb.id, Name = 'OwnerRoleTest #1',AccountId = AcntRec.Id, Stagename='Open', Closedate=Date.newInstance(2010,02,02),Country__c = 'USA');
insert o;
Opportunity op = [select id from Opportunity where Name like 'OwnerRoleTest #1'];
Pricebook2 pb1 = [select id from Pricebook2 where Name like 'unittest'];
PricebookEntry pbe1 = [select id from PricebookEntry where pricebook2id=:pb1.id];
ON24_Contract__c c = new ON24_Contract__c(name = 'testopty', Client_Name__c = AcntRec.Id, Opportunity__c=o.Id, Sales_Representative_1__c = u1.Id, Sales_Representative_2__c = u2.Id, Status__c = 'Draft', Agreement_Type__c = 'Services Agreement', Region__c='EMEA');
insert c;
AcntRec.BillingCity = '';
AcntRec.BillingCountry = '';
AcntRec.BillingPostalCode = '';
AcntRec.BillingState = '';
AcntRec.BillingStreet = '';
update AcntRec;
Contract_Line_Item__c cli = new Contract_Line_Item__c(ON24_Contract__c = c.Id, CurrencyIsoCode = 'USD', Validation_Pool__c = 'Yes', Quantity__c=2, Sales_Price__c = 15000, Product__c = p1.Id);
insert cli;
update c;
approvalNeedAccountAdd vde = new approvalNeedAccountAdd();
Pagereference pr = vde.closePopup();
vde.isNotApproved = true;
vde.displayPopUp = true;
vde.displayApprovalPopUp = false;
}
static testMethod void myUnitTestON24PBA_Recall1()
{
Profile p = [SELECT Id FROM Profile WHERE Name = 'System Administrator'];
User u1 = new User();
u1.Email = 'email1@email.com';
u1.Alias = 'Alias2';
u1.TimeZoneSidKey = 'America/New_York';
u1.LocaleSidKey = 'ca';
u1.EmailEncodingKey = 'UTF-8';
u1.ProfileId = p.id;
u1.LanguageLocaleKey = 'en_US';
u1.FirstName = 'firstname1';
u1.LastName = 'lastname1';
u1.username= 'username1@first.com';
insert u1;
User u2 = new User();
u2.Email = 'email2@email.com';
u2.Alias = 'Alias3';
u2.TimeZoneSidKey = 'America/New_York';
u2.LocaleSidKey = 'ca';
u2.EmailEncodingKey = 'UTF-8';
u2.ProfileId = p.id;
u2.LanguageLocaleKey = 'en_US';
u2.FirstName = 'firstname2';
u2.LastName = 'lastname2';
u2.username= 'username2@first.com';
insert u2;
Product2 p1 = new product2(name='unittest');
insert p1;
Pricebook2 stdPb = [select Id from Pricebook2 where isStandard=true limit 1];
insert new PricebookEntry(pricebook2id = stdPb.id, product2id = p1.id,unitprice=1.0, isActive=true);
Pricebook2 pb = new pricebook2(name='unittest');
insert pb;
PricebookEntry pbe = new PricebookEntry(pricebook2id=pb.id, product2id=p1.id,unitprice=20000.0, isActive=true);
insert pbe;
Account AcntRec = new Account(name = 'Acc', Type = 'Customer', Industry = 'Automotive',BillingCity = 'Avon', BillingCountry = 'USA', BillingPostalCode = '14414', BillingState = 'New York', BillingStreet = 'Wall St');
insert AcntRec;
Contact con = new Contact(AccountId = AcntRec.Id, LastName = 'Charles', LeadSource = 'Web Services');
insert con;
Opportunity o = new Opportunity (pricebook2id = pb.id, Name = 'OwnerRoleTest #1',AccountId = AcntRec.Id, Stagename='Open', Closedate=Date.newInstance(2010,02,02),Country__c = 'USA');
insert o;
Opportunity op = [select id from Opportunity where Name like 'OwnerRoleTest #1'];
Pricebook2 pb1 = [select id from Pricebook2 where Name like 'unittest'];
PricebookEntry pbe1 = [select id from PricebookEntry where pricebook2id=:pb1.id];
ON24_Contract__c c = new ON24_Contract__c(name = 'testopty1', Client_Name__c = AcntRec.Id, Opportunity__c=o.Id, Sales_Representative_1__c = u1.Id, Sales_Representative_2__c = u2.Id, Status__c = 'Draft', Agreement_Type__c = 'Services Agreement', Region__c='EMEA',Client_Type__c='Full Service',Vertical__c='Channel',Expiration_Date__c=Date.newInstance(2010,02,02),Effective_Date__c=Date.newInstance(2010,02,02), Billing_Terms__c='Custom',Payment_Terms__c='Net 45');
insert c;
Contract_Line_Item__c cli = new Contract_Line_Item__c(ON24_Contract__c = c.Id, CurrencyIsoCode = 'USD', Validation_Pool__c = 'Yes', Quantity__c=2, Sales_Price__c = 15000, Product__c = p1.Id);
insert cli;
update c;
approvalNeedAccountAdd vde = new approvalNeedAccountAdd();
test.startTest();
Pagereference pr = vde.submitAndProcessApprovalRequest() ;
Approval__c AP1 = new Approval__c(Contract__c = c.Id);
insert AP1;
Approval__c AP = [select id from Approval__c where Contract__r.Status__c = 'Draft'];
Approval.ProcessSubmitRequest req1 = new Approval.ProcessSubmitRequest();
req1.setComments('Test : Submitting request for approval.');
req1.setObjectId(c.id);
req1.setNextApproverIds(new Id[] {UserInfo.getUserId()});
Approval.ProcessResult result1 = Approval.process(req1);
System.assert(result1.isSuccess());
System.assertEquals('Pending', result1.getInstanceStatus(), 'Instance Status'+result1.getInstanceStatus());
List<Id> newWorkItemIds = result1.getNewWorkitemIds();
Approval.ProcessWorkitemRequest req2 = new Approval.ProcessWorkitemRequest();
req2.setComments('Approving request.');
req2.setAction('Approve');
req2.setNextApproverIds(new Id[] {UserInfo.getUserId()});
req2.setWorkitemId(newWorkItemIds.get(0));
Approval.ProcessResult result2 = Approval.process(req2);
vde.isNotApproved = false;
vde.displayPopUp = false;
vde.displayApprovalPopUp = true;
test.stopTest();
}
}
The error is First exception on row 0; first error: REQUIRED_FIELD_MISSING, missing required field: []
at the marked line please help me to resolve this issue.....
I have not gone through your code; but that is a validation error, I'd say you're trying to do a DML action on an object in which you have not set all required fields.
I think communitynickname is required on the user object.