@@ -709,27 +709,27 @@ private with sharing class fflib_SObjectSelectorTest
709709 static void toSOQL_When_PolymorphicSelect_Expect_RelatedType () {
710710 // Given
711711
712- CampaignMemberSelector cmSelector = new CampaignMemberSelector (fflib_SObjectSelector .DataAccess .LEGACY );
713- fflib_QueryFactory qf = cmSelector .newQueryFactory ();
714- new LeadSelector ().configureQueryFactoryFields (qf , ' Lead ' );
715- new UserSelector ().configureQueryFactoryFields (qf , ' Lead .Owner' );
712+ CaseCommentSelector ccSelector = new CaseCommentSelector (fflib_SObjectSelector .DataAccess .LEGACY );
713+ fflib_QueryFactory qf = ccSelector .newQueryFactory ();
714+ new CaseSelector ().configureQueryFactoryFields (qf , ' Parent ' );
715+ new UserSelector ().configureQueryFactoryFields (qf , ' Parent .Owner' );
716716
717717
718718 Set <String > expectedSelectFields = new Set <String >{
719- ' Id' , ' Status ' , ' Lead .Id' , ' Lead .OwnerId' , ' Lead .Owner.Id' , ' Lead .Owner.UserRoleId'
719+ ' Id' , ' CommentBody ' , ' Parent .Id' , ' Parent .OwnerId' , ' Parent .Owner.Id' , ' Parent .Owner.UserRoleId'
720720 };
721721 if (UserInfo .isMultiCurrencyOrganization ()) {
722722 expectedSelectFields .add (' CurrencyIsoCode' );
723- expectedSelectFields .add (' Lead .CurrencyIsoCode' );
724- expectedSelectFields .add (' Lead .Owner.CurrencyIsoCode' ); // Because the Selector is for User; Group would not have
723+ expectedSelectFields .add (' Parent .CurrencyIsoCode' );
724+ expectedSelectFields .add (' Parent .Owner.CurrencyIsoCode' ); // Because the Selector is for User; Group would not have
725725 }
726726
727727 // When
728728 String soql = qf .toSOQL ();
729729
730730 // Then
731- Pattern soqlPattern = Pattern .compile (String .format (' SELECT (.*) FROM CampaignMember ORDER BY {0} ASC NULLS FIRST ' ,
732- new List <String >{cmSelector .getOrderBy ()}));
731+ Pattern soqlPattern = Pattern .compile (String .format (' SELECT (.*) FROM CaseComment ORDER BY {0} ASC NULLS FIRST ' ,
732+ new List <String >{ccSelector .getOrderBy ()}));
733733 Matcher soqlMatcher = soqlPattern .matcher (soql );
734734 soqlMatcher .matches ();
735735
@@ -741,29 +741,29 @@ private with sharing class fflib_SObjectSelectorTest
741741 static void toSOQL_When_PolymorphicSelectInMulticurrency_Expect_RelatedType () {
742742 // Given
743743
744- CampaignMemberSelector cmSelector = new CampaignMemberSelector (fflib_SObjectSelector .DataAccess .LEGACY );
745- fflib_QueryFactory qf = cmSelector .newQueryFactory ();
746- new LeadSelector ().configureQueryFactoryFields (qf , ' Lead ' );
747- new GroupSelector ().configureQueryFactoryFields (qf , ' Lead .Owner' );
744+ CaseCommentSelector ccSelector = new CaseCommentSelector (fflib_SObjectSelector .DataAccess .LEGACY );
745+ fflib_QueryFactory qf = ccSelector .newQueryFactory ();
746+ new CaseSelector ().configureQueryFactoryFields (qf , ' Parent ' );
747+ new GroupSelector ().configureQueryFactoryFields (qf , ' Parent .Owner' );
748748
749749
750750 Set <String > expectedSelectFields = new Set <String >{
751- ' Id' , ' Status ' , ' Lead .Id' , ' Lead .OwnerId' , ' Lead .Owner.Id'
751+ ' Id' , ' CommentBody ' , ' Parent .Id' , ' Parent .OwnerId' , ' Parent .Owner.Id'
752752 };
753753 Set <String > unexpectedSelectFields = new Set <String >();
754754 if (UserInfo .isMultiCurrencyOrganization ()) {
755755 expectedSelectFields .add (' CurrencyIsoCode' );
756- expectedSelectFields .add (' Lead .CurrencyIsoCode' );
756+ expectedSelectFields .add (' Parent .CurrencyIsoCode' );
757757
758- unexpectedSelectFields .add (' Lead .Owner.CurrencyIsoCode' ); // Because Group does NOT have CurrencyIsoCode
758+ unexpectedSelectFields .add (' Parent .Owner.CurrencyIsoCode' ); // Because Group does NOT have CurrencyIsoCode
759759 }
760760
761761 // When
762762 String soql = qf .toSOQL ();
763763 System .debug (soql );
764764
765765 // Then
766- Pattern soqlPattern = Pattern .compile (' SELECT (.*) FROM CampaignMember ORDER BY CreatedDate ASC NULLS FIRST ' );
766+ Pattern soqlPattern = Pattern .compile (' SELECT (.*) FROM CaseComment ORDER BY CreatedDate ASC NULLS FIRST ' );
767767 Matcher soqlMatcher = soqlPattern .matcher (soql );
768768 soqlMatcher .matches ();
769769
@@ -780,30 +780,30 @@ private with sharing class fflib_SObjectSelectorTest
780780
781781 @IsTest
782782 static void toSOQL_When_SystemModePolymorphicSelect_Expect_RelatedType () {
783- CampaignMemberSelector cmSelector = new CampaignMemberSelector (fflib_SObjectSelector .DataAccess .SYSTEM_MODE );
784- fflib_QueryFactory qf = cmSelector .newQueryFactory ();
785- new LeadSelector ().configureQueryFactoryFields (qf , ' Lead ' );
786- new UserSelector ().configureQueryFactoryFields (qf , ' Lead .Owner' );
783+ CaseCommentSelector ccSelector = new CaseCommentSelector (fflib_SObjectSelector .DataAccess .SYSTEM_MODE );
784+ fflib_QueryFactory qf = ccSelector .newQueryFactory ();
785+ new CaseSelector ().configureQueryFactoryFields (qf , ' Parent ' );
786+ new UserSelector ().configureQueryFactoryFields (qf , ' Parent .Owner' );
787787
788788 List <String > expectedSelectFields = new List <String >();
789789 expectedSelectFields .add (' id' );
790- expectedSelectFields .add (' status ' );
790+ expectedSelectFields .add (' commentbody ' );
791791 if (UserInfo .isMultiCurrencyOrganization ()) {
792792 expectedSelectFields .add (' currencyisocode' );
793793 }
794- expectedSelectFields .add (' lead .ownerid' );
795- expectedSelectFields .add (' lead .id' );
794+ expectedSelectFields .add (' parent .ownerid' );
795+ expectedSelectFields .add (' parent .id' );
796796 if (UserInfo .isMultiCurrencyOrganization ()) {
797- expectedSelectFields .add (' lead .currencyisocode' );
797+ expectedSelectFields .add (' parent .currencyisocode' );
798798 }
799- expectedSelectFields .add (' lead .owner.userroleid' );
800- expectedSelectFields .add (' lead .owner.id' );
799+ expectedSelectFields .add (' parent .owner.userroleid' );
800+ expectedSelectFields .add (' parent .owner.id' );
801801 if (UserInfo .isMultiCurrencyOrganization ()) {
802- expectedSelectFields .add (' lead .owner.currencyisocode' );
802+ expectedSelectFields .add (' parent .owner.currencyisocode' );
803803 }
804804
805- String expectedSOQL = String .format (' SELECT ' + String .join (expectedSelectFields ,' , ' ) + ' FROM CampaignMember WITH SYSTEM_MODE ORDER BY {0} ASC NULLS FIRST ' ,
806- new List <String >{cmSelector .getOrderBy ()});
805+ String expectedSOQL = String .format (' SELECT ' + String .join (expectedSelectFields ,' , ' ) + ' FROM CaseComment WITH SYSTEM_MODE ORDER BY {0} ASC NULLS FIRST ' ,
806+ new List <String >{ccSelector .getOrderBy ()});
807807
808808 // When
809809 String actualSOQL = qf .toSOQL ();
@@ -843,70 +843,70 @@ private with sharing class fflib_SObjectSelectorTest
843843 Assert .areEqual (expected ,aQF .toSOQL ());
844844 }
845845
846- private class CampaignMemberSelector extends fflib_SObjectSelector {
847- public CampaignMemberSelector (DataAccess access ) {
846+ private class CaseCommentSelector extends fflib_SObjectSelector {
847+ public CaseCommentSelector (DataAccess access ) {
848848 super (false , access );
849849 }
850850
851851 public List <Schema .SObjectField > getSObjectFieldList () {
852852 return new List <Schema .SObjectField >{
853- CampaignMember .Id ,
854- CampaignMember . Status
853+ CaseComment .Id ,
854+ CaseComment . CommentBody
855855 };
856856 }
857857
858858 public Schema.SObjectType getSObjectType () {
859- return CampaignMember .sObjectType ;
859+ return CaseComment .sObjectType ;
860860 }
861861 }
862862
863- private class UserSelector extends fflib_SObjectSelector {
864- public UserSelector () {
863+ private class CaseSelector extends fflib_SObjectSelector {
864+ public CaseSelector () {
865865 super ();
866866 }
867867
868868 public List <Schema .SObjectField > getSObjectFieldList () {
869869 return new List <Schema .SObjectField >{
870- User . UserRoleId ,
871- User .Id
870+ Case . OwnerId ,
871+ Case .Id
872872 };
873873 }
874874
875875 public Schema.SObjectType getSObjectType () {
876- return User .sObjectType ;
876+ return Case .sObjectType ;
877877 }
878878 }
879879
880- private class GroupSelector extends fflib_SObjectSelector {
881- public GroupSelector () {
880+ private class UserSelector extends fflib_SObjectSelector {
881+ public UserSelector () {
882882 super ();
883883 }
884884
885885 public List <Schema .SObjectField > getSObjectFieldList () {
886886 return new List <Schema .SObjectField >{
887- Group .Id
887+ User .UserRoleId ,
888+ User .Id
888889 };
889890 }
890891
891892 public Schema.SObjectType getSObjectType () {
892- return Group .sObjectType ;
893+ return User .sObjectType ;
893894 }
894895 }
895896
896- private class LeadSelector extends fflib_SObjectSelector {
897- public LeadSelector () {
897+ private class GroupSelector extends fflib_SObjectSelector {
898+ public GroupSelector () {
898899 super ();
899900 }
900901
901902 public List <Schema .SObjectField > getSObjectFieldList () {
902903 return new List <Schema .SObjectField >{
903- Lead .OwnerId ,
904- Lead .Id
904+ Group .Id
905905 };
906906 }
907907
908908 public Schema.SObjectType getSObjectType () {
909- return Lead .sObjectType ;
909+ return Group .sObjectType ;
910910 }
911911 }
912912}
0 commit comments