Skip to content

Commit 1f676df

Browse files
committed
Additional test methods to improve testing and coverage
1 parent 72e509e commit 1f676df

File tree

1 file changed

+32
-0
lines changed

1 file changed

+32
-0
lines changed

fflib/src/classes/fflib_SObjectSelectorTest.cls

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,11 +40,13 @@ private with sharing class fflib_SObjectSelectorTest
4040
system.assert(fieldSet.contains('AnnualRevenue'));
4141
if(UserInfo.isMultiCurrencyOrganization())
4242
system.assert(fieldSet.contains('CurrencyIsoCode'));
43+
system.assertEquals('myprefix.Name,myprefix.AccountNumber,myprefix.Id,myprefix.AnnualRevenue', selector.getRelatedFieldListString('myprefix'));
4344
}
4445

4546
static testMethod void testGetSObjectName()
4647
{
4748
Testfflib_SObjectSelector selector = new Testfflib_SObjectSelector();
49+
system.assertEquals(null, selector.getSObjectFieldSetList());
4850
system.assertEquals('Account',selector.getSObjectName());
4951
}
5052

@@ -72,6 +74,36 @@ private with sharing class fflib_SObjectSelectorTest
7274
system.assertEquals('A2',result[1].AccountNumber);
7375
system.assertEquals(12345.67,result[1].AnnualRevenue);
7476
}
77+
78+
static testMethod void testQueryLocatorById()
79+
{
80+
// Inserting in reverse order so that we can test the order by of select
81+
List<Account> accountList = new List<Account> {
82+
new Account(Name='TestAccount2',AccountNumber='A2',AnnualRevenue=12345.67),
83+
new Account(Name='TestAccount1',AccountNumber='A1',AnnualRevenue=76543.21) };
84+
insert accountList;
85+
Set<Id> idSet = new Set<Id>();
86+
for(Account item : accountList)
87+
idSet.add(item.Id);
88+
89+
Test.startTest();
90+
Testfflib_SObjectSelector selector = new Testfflib_SObjectSelector();
91+
Database.QueryLocator result = selector.queryLocatorById(idSet);
92+
System.Iterator<SObject> iteratorResult = result.iterator();
93+
Test.stopTest();
94+
95+
System.assert(true, iteratorResult.hasNext());
96+
Account account = (Account) iteratorResult.next();
97+
system.assertEquals('TestAccount1',account.Name);
98+
system.assertEquals('A1',account.AccountNumber);
99+
system.assertEquals(76543.21,account.AnnualRevenue);
100+
System.assert(true, iteratorResult.hasNext());
101+
account = (Account) iteratorResult.next();
102+
system.assertEquals('TestAccount2',account.Name);
103+
system.assertEquals('A2',account.AccountNumber);
104+
system.assertEquals(12345.67,account.AnnualRevenue);
105+
System.assertEquals(false, iteratorResult.hasNext());
106+
}
75107

76108
static testMethod void testAssertIsAccessible()
77109
{

0 commit comments

Comments
 (0)