You need to sign in to do that
Don't have an account?

Need to test class for this one
trigger ValidateAmountValueAndTotalamount on Opportunity ( before insert, before update ) {
for ( Opportunity opp : Trigger.new )
{
if(opp.name!=null)
{
user usr=[select id,name from user where id =: opp.ownerid];
opp.Owner_field__c=usr.name;
String CSDRid= [Select Id from RecordType where RecordType.Name='Sales Opportunity-CSD'].Id;
if(opp.Stagename == 'New Opportunity' && opp.Probability == 10 && opp.RecordTypeId==CSDRid)
{
if(opp.Amount == null)
{
opp.Amount.addError('****enter something yar****');
}
if ( opp.Total_Amount__c == null )
{
opp.Total_Amount__c.addError( 'Please enter a value Total Amount.' );
}
}
Try This...it gives 60%...
@isTest (SeeAllData = true)
public class ValidateAmountValueAndTotalamountTest {
static testMethod void ValidateAmountValueAndTotalamount () {
Opportunity opp1 = new Opportunity();
opp1.name = 'Test 1';
opp1.RecordType = [SELECT Id,Name FROM RecordType WHERE SObjectType = 'Opportunity' and Name = 'Sales Opportunity-CSD'];
opp1.Type = 'New Customer';
opp1.Amount = 10;
opp1.CloseDate = system.today();
opp1.StageName = 'Received';
Opp1.Amount=100;
opp1.Total_Amount__c='125';
INSERT opp1;
try
{
opp1.Amount=null;
opp1.Total_Amount__c=null;
update opp1;
//throw new MyException('An exception should have been thrown by the trigger but was not.'); // 1. If we get to this line it means an error was not added and the test class should throw an exception here. 2. MyException class extends Exception.
}
catch(Exception e)
{
Boolean expectedExceptionThrown = e.getMessage().contains('My Error Message') ? true : false;
System.AssertEquals(expectedExceptionThrown, true);
}
}
}
Welcome Suresh......I
@isTest
public class ValidateAmountValueAndTotalamountTest {
static testMethod void ValidateAmountValueAndTotalamount () {
Opportunity opp1 = new Opportunity();
opp1.name = 'Test 1';
opp1.RecordType = [SELECT Id,Name FROM RecordType WHERE SObjectType = 'Opportunity' and Name = 'Sales Opportunity-CSD'];
opp1.Type = 'New Customer';
opp1.Amount = 10;
opp1.CloseDate = system.today();
opp1.StageName = 'New Opportunity';
opp1.Probability=10;
Opp1.Amount=100;
opp1.Total_Amount__c='125';
INSERT opp1;
Opportunity opp2 = new Opportunity();
opp2.name = 'Test 2';
opp2.RecordType = [SELECT Id,Name FROM RecordType WHERE SObjectType = 'Opportunity' and Name = 'Sales Opportunity-CSD'];
opp2.Type = 'Existing Customer - Downgrade';
opp2.Amount = 200;
opp2.CloseDate = system.today();
opp2.StageName = 'Qualification';
opp1.Probability=10;
Opp2.Amount=200;
opp2.Total_Amount__c='150';
INSERT opp2;
try
{
opp1.Amount=null;
opp1.Total_Amount__c=null;
update opp1;
opp2.Amount=null;
opp2.Total_Amount__c=null;
update opp2;
}
catch(Exception e)
{
Boolean expectedExceptionThrown = e.getMessage().contains('My Error Message') ? true : false;
System.AssertEquals(expectedExceptionThrown, true);
}
}
trigger ValidateAmountValueAndTotalamount on Opportunity ( before insert, before update )
{
for ( Opportunity opp : Trigger.new )
{
if(opp.name!=null)
{
user usr=[select id,name from user where id =: opp.ownerid];
opp.Owner_field__c=usr.name;
String CSDRid= [Select Id from RecordType where RecordType.Name='Sales Opportunity-CSD'].Id;
if(opp.Stagename == 'New Opportunity' && opp.Probability == 10 && opp.RecordTypeId==CSDRid)
{
if(opp.Amount == null)
{
opp.Amount.addError('****enter something yar****');
}
if ( opp.Total_Amount__c == null )
{
opp.Total_Amount__c.addError( 'Please enter a value Total Amount.' );
}
}
else if ( opp.StageName == 'Qualification' && opp.Probability == 10 && opp.RecordTypeId==CSDRid)
{
if ( opp.Amount == null )
{
opp.Amount.addError( 'Please********** ' );
}
if ( opp.Total_Amount__c == null )
{
opp.Total_Amount__c.addError( 'Please enter a value Total Amount****.' );
}
}
else if ( opp.StageName == 'Value Proposition' && opp.Probability == 50 && opp.RecordTypeId==CSDRid )
{
if ( opp.Amount == null )
{
opp.Amount.addError( 'only stars**********.' );
}
if ( opp.Total_Amount__c == null )
{
opp.Total_Amount__c.addError( 'here also ***********' );
}
}
else if ( opp.StageName == 'Prospecting' && opp.Probability == 10 && opp.RecordTypeId==CSDRid )
{
if(opp.Two_Year_Revenue__c == 0)
{
opp.Two_Year_Revenue__c.addError( 'Please enter a Two_Year_Revenue__c.' );
}
if(opp.customer_Quotation_Date__c == null)
{
opp.customer_Quotation_Date__c.addError( 'Please enter a customer_Quotation_Date__c.' );
}
if ( opp.Amount == null )
{
opp.Amount.addError( '@@@@@@@@@@@@@Please enter a Amount.' );
}
if ( opp.Total_Amount__c == null )
{
opp.Total_Amount__c.addError( '@@@@@@@@@@@@Please enter a value Total Amount.' );
}
}
}
}
}
It gives 68%...try to include error.......
@isTest
public class ValidateAmountValueAndTotalamountTest {
static testMethod void ValidateAmountValueAndTotalamount () {
Opportunity opp1 = new Opportunity();
opp1.name = 'Test 1';
opp1.RecordType = [SELECT Id,Name FROM RecordType WHERE SObjectType = 'Opportunity' and Name = 'Sales Opportunity-CSD'];
opp1.Type = 'New Customer';
opp1.Amount = 10;
opp1.CloseDate = system.today();
opp1.two_year_revenue__c=2000;
opp1.StageName = 'New Opportunity';
opp1.customer_Quotation_Date__c=system.today();
opp1.Probability=10;
Opp1.Amount=100;
opp1.Total_Amount__c='125';
INSERT opp1;
Opportunity opp2 = new Opportunity();
opp2.name = 'Test 2';
opp2.RecordType = [SELECT Id,Name FROM RecordType WHERE SObjectType = 'Opportunity' and Name = 'Sales Opportunity-CSD'];
opp2.Type = 'Existing Customer - Downgrade';
opp2.Amount = 200;
opp2.CloseDate = system.today();
opp2.two_year_revenue__c=2000;
opp2.StageName = 'Qualification';
opp1.Probability=10;
Opp2.Amount=200;
opp2.customer_Quotation_Date__c=system.today();
opp2.Total_Amount__c='150';
INSERT opp2;
try
{
opp1.Amount=null;
opp1.Total_Amount__c=null;
opp1.StageName = 'Value Proposition';
opp1.customer_Quotation_Date__c=null;
update opp1;
opp2.Amount=null;
opp2.Total_Amount__c=null;
opp2.StageName = 'Prospecting';
opp2.customer_Quotation_Date__c=null;
opp2.two_year_revenue__c=null;
update opp2;
}
catch(Exception e)
{
Boolean expectedExceptionThrown = e.getMessage().contains('My Error Message') ? true : false;
//System.AssertEquals(expectedExceptionThrown, true);
}
}
}
try this it will cover 100%
@isTest
public class ValidateAmountValueAndTotalamountTest {
static testMethod void ValidateAmountValueAndTotalamount () {
RecordType CSDRid= [Select id,name,SobjectType from RecordType where name=:'Sales Opportunity-CSD'];
List<Opportunity> allOppList = new List<Opportunity>();
Opportunity opp1 = new Opportunity();
opp1.name = 'Test 1';
opp1.RecordTypeId = CSDRid.id;
opp1.Type = 'New Customer';
opp1.CloseDate = system.today();
opp1.two_year_revenue__c=2000;
opp1.StageName = 'New Opportunity';
opp1.customer_Quotation_Date__c=system.today();
opp1.Probability=10;
allOppList.add(opp1);
Opportunity opp2 = new Opportunity();
opp2.name = 'Test 2';
opp2.RecordTypeId = CSDRid.id;
opp2.Type = 'Existing Customer - Downgrade';
opp2.CloseDate = system.today();
opp2.two_year_revenue__c=2000;
opp2.StageName = 'Qualification';
opp2.Probability=10;
opp2.customer_Quotation_Date__c=system.today();
allOppList.add(opp2);
Opportunity opp3 = new Opportunity();
opp3.name = 'Test 2';
opp3.RecordTypeId = CSDRid.id;
opp3.Type = 'Existing Customer - Downgrade';
opp3.CloseDate = system.today();
opp3.two_year_revenue__c=2000;
opp3.StageName = 'Value Proposition';
opp3.Probability=50;
opp3.customer_Quotation_Date__c=system.today();
allOppList.add(opp3);
Opportunity opp4 = new Opportunity();
opp4.name = 'Test 2';
opp4.RecordTypeId = CSDRid.id;
opp4.Type = 'Existing Customer - Downgrade';
opp4.CloseDate = system.today();
opp4.StageName = 'Prospecting';
opp4.Probability=10;
opp4.two_year_revenue__c=0;
allOppList.add(opp4);
try{
INSERT allOppList;
}
catch(DmlException ex)
{
System.debug('***********************'+ex);
}
}
}
write trigger account and opp then once created opp how many number of opp is displyed in account object in number of opps field in acc object
This link will help u....
http://www.anthonyvictorio.com/salesforce/roll-up-summary-trigger/