Ajax (1) Apex Class (12) Apex Trigger (2) Community (2) Home Page (1) HTML (4) Integration (3) JS (7) KB (1) Label (1) Licenses (1) Listing (1) Log (1) OOPs (5) Sharing (1) Static Resource (1) Test Class (3) URI (1) Visualforce (10)

Thursday 17 July 2014

Test Class for set and non-setup object



@isTest(SeeAllData=true)
public with sharing class clsForCaseShareUserTracker {

    static  testMethod  void validateshareCaseWithUser()
    {
       //User objUser=[Select id,User_License__c,ProfileId,AccountId,userRoleId from User where User_License__c='Partner Community' and IsActive=true  limit 1 ];
      //  update objUser;
       clsForCaseShareUserTracker objUtil=new clsForCaseShareUserTracker();
       Account objAccount1=objUtil.newAccount('Account1','platinum','Aurea','Indirect','Accept','German',123456,'Active','saasforce.in','IDEU');
       Contact objContact1=objUtil.newContact('Gupta',objAccount1.id,'TheKrrish@saasforce.in',true,'TheKrrish2@saasforce.in','password',false);
       Contact objContact2=objUtil.newContact('Singh',objAccount1.id,'TheKrrish2@saasforce.in',true,'TheKrrish@saasforce.in','password',false);
        RecordType rt=[SELECT Id, Name FROM RecordType WHERE SobjectType = 'Case' AND (Name = 'CS - Support Case' or Name = 'Platinum Services Case' ) limit 1];
        Case objCase1=objUtil.newCase('Users','Internal User','TheKrrish3@saasforce.in','Sales','medium',rt.id,objAccount1.id,'Problem','Extension');
        Profile p = [select id from profile where name='CS - Customer Portal User' limit 1];
        User objUser1=objUtil.newUser('TheKrrish4@saasforce.in',objContact1.id,'TheKrrish4@saasforce.in','Gupta','en_US','en_US','UTF-8','Als1',p.id,'America/Los_Angeles',true,'null');
         System.runAs (objUser1)
          {
List<UserRole> lstUserRole =[Select id from UserRole where PortalRole='Executive' and PortalAccountId=:objAccount1.id];
       User objUser2=objUtil.newUser('TheKrrish5@saasforce.in',objContact2.id,'TheKrrish5@saasforce.in','Gupta2','en_US','en_US','UTF-8','Als2',p.id,'America/Los_Angeles',true,lstUserRole[0].id);
     }
    
    }
    
    
    public Account newAccount(String name,String supportProgram,String LegalEntityName,String AccountChannel,String VersataEntity,String Language,Integer AnnualRevenue,String AccountType,String AccountDomainName,String AccountSubChannel )
    {
      Account objAccount = new Account();
       objAccount.Name = name;
       objAccount.Support_Program__c = supportProgram;
       objAccount.LegalEntityName__c = LegalEntityName;
       objAccount.Account_Channel__c = AccountChannel;
       objAccount.Versata_Entity__c = VersataEntity;
       objAccount.Language__c = Language;
       objAccount.Annual_Revenue__c = AnnualRevenue;
       objAccount.Account_Type__c =AccountType;
       objAccount.Account_Domain_Name__c =AccountDomainName; 
       objAccount.Account_SubChannel__c = AccountSubChannel;
       insert objAccount;
       return objAccount;
    }
    public Contact newContact(String lastName,String AccountId,String Email,Boolean IsPlatinumUser,String ContactUsername,String ContactPassword,Boolean IsTemporarypasswordSent)
    {
       Contact objContact = new Contact();
       objContact.LastName = lastName;
       objContact.AccountId = AccountId;
       objContact.Email = Email;
       objContact.Is_Platinum_User__c = IsPlatinumUser;
       objContact.Contact_Username__c = ContactUsername;
       objContact.Contact_Password__c = ContactPassword;
       objContact.Is_Temporary_password_Sent__c = IsTemporarypasswordSent;
       insert objContact;
       return objContact;
    }
    public Case newCase(String RequestType,String CVTypeofUserAccount,String AffectedUserEmailAddress,String AffectedBusinessUnit,String Priority,String RecordTypeid,String Accountid,String Type,String PlatinumServiceType)
    {
     Case objCase=new Case();
    objCase.Request_Type__c=RequestType;
    objCase.CV_Type_of_User_Account__c=CVTypeofUserAccount;
    objCase.Affected_User_s_Email_Address__c=AffectedUserEmailAddress;
    objCase.Desired_Effective_Date__c=system.today();
    objCase.Affected_Business_Unit__c=AffectedBusinessUnit;
    objCase.Priority=Priority;
    objCase.RecordTypeid=RecordTypeid;
    objCase.Accountid=Accountid;
    objCase.Type=Type;
    objCase.Platinum_Service_Type__c =PlatinumServiceType;
    insert objCase; 
    return objCase;
    }
    public User newUser(String Email,String ContactId,String Username,String LastName,String languagelocalekey,String localesidkey ,String emailencodingkey,String alias,String profileid,String timezonesidkey,Boolean IsActive,String userRoleId)
    {
         User objUser= new User();
         objUser.Email=Email;
         objUser.ContactId=ContactId;
         objUser.Username =Username;
         objUser.LastName=LastName;
         objUser.languagelocalekey=languagelocalekey;
         objUser.localesidkey=localesidkey;
         objUser.emailencodingkey=emailencodingkey;
         objUser.alias = alias;
         objUser.profileid = profileid;
         objUser.timezonesidkey=timezonesidkey;
         objUser.IsActive =IsActive;
             if(userRoleId!='null' && userRoleId!='NULL' && userRoleId!='Null')
             {
             objUser.userRoleId=userRoleId;
             }
         insert objUser;
         return objUser;
    }

}

No comments:

Post a Comment