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

test class error
Error: Compile Error: Invalid bind expression type of Schema.SObjectField for column of type Decimal at line 13 column 75@isTest
public class Testcreatedeal{
static testMethod void deal()
{
Test_1__c a = new Test_1__c();
a.Number__c=34;
insert a;
ApexPages.standardController controller = new ApexPages.standardController(a);
list<Test_2__c> b=[select id,Number__c from Test_2__c where Number__c=: Test_1__c.Number__c];//line 13
System.assertEquals(1, Test_2__c.size());
}
}
vf page:
<apex:page standardController="Test_1__c" extensions="CreateDeal" action="{!deal}">
</apex:page>
controller*************
public class CreateDeal
{
private id accountId{get;set;}
public Test_1__c b{get;set;}
public CreateDeal(ApexPages.StandardController controller)
{
accountId= ApexPages.currentPage().getParameters().get('id');
system.debug('+++'+accountId);
}
public pageReference deal()
{
Test_1__c b = [Select id,Name__c,Number__c,Phone__c from Test_1__c where id =:accountId];
Test_2__c a = new Test_2__c();
{
a.Name__c=b.Name__c;
a.Number__c=b.Number__c;
a.Phone__c=b.Phone__c;
}
insert a;
//Schema.DescribeSObjectResult result = Test_2__c.SObjectType.getDescribe();
PageReference pageRef = new PageReference('/'+a.id);
pageRef.setRedirect(true);
return pageRef;
}
}
any help ?? and is my test class correct basically on one object there are field ,when i click button( custom button on which m calling this vf page) it populates fields into other object just.
static testMethod void runTest()
{
Test.startTest();
Test_1__c a = new Test_1__c(Number__c=34);
insert a;
PageReference p = Page.CreateDeal;
p.getParameters().put('id', a.Id);
Test.setCurrentPage(p);
CreateDeal ctrl = new CreateDeal(new ApexPages.StandardController(a));
ctrl.deal();
Test.stopTest();
List<Test_2__c> b=[select id,Number__c from Test_2__c where Number__c=: a.Number__c];//line 13
System.assertEquals(1, Test_2__c.size());
}
All Answers
System.assertEquals(1, b.size());
System.assertEquals(a.Number__c, b.get(0).Number__c);
i get this error
System.AssertException: Assertion Failed: Expected: 1, Actual: 0
@isTest
public class Testcreatedeal{
static testMethod void deal()
{
Test_1__c a = new Test_1__c();
a.Number__c=34;
insert a;
ApexPages.standardController controller = new ApexPages.standardController(a);
list<Test_2__c> b=[select id,Number__c from Test_2__c where id=: a.id limit 1];
System.assertEquals(1, b.size());
//System.assertEquals(a.Number__c, b.get(0).Number__c);
}
}
static testMethod void runTest()
{
Test.startTest();
Test_1__c a = new Test_1__c(Number__c=34);
insert a;
PageReference p = Page.YourVFPage;
p.getParameters().put('id', a.Id);
Test.setCurrentPage(p);
CreateDeal ctrl = new CreateDeal(new ApexPages.StandardController(a));
ctrl.deal();
Test.stopTest();
List<Test_2__c> b=[select id,Number__c from Test_2__c where Number__c=: a.Number__c];//line 13
System.assertEquals(1, Test_2__c.size());
}
static testMethod void runTest()
{
Test.startTest();
Test_1__c a = new Test_1__c(Number__c=34);
insert a;
PageReference p = Page.CreateDeal;
p.getParameters().put('id', a.Id);
Test.setCurrentPage(p);
CreateDeal ctrl = new CreateDeal(new ApexPages.StandardController(a));
ctrl.deal();
Test.stopTest();
List<Test_2__c> b=[select id,Number__c from Test_2__c where Number__c=: a.Number__c];//line 13
System.assertEquals(1, Test_2__c.size());
}
System.assertEquals(1, Test_2__c.size());
jus lil change
System.assertEquals(1, b.size());