You need to sign in to do that
Don't have an account?
A Ananthi
Hi .... Can anyone help me to write test class for the following apex class
Hi .... Can anyone help me to write test class for the following apex class....
public class ObjectPermissionClass {
@AuraEnabled(Cacheable=true)
public static List<ObjectPermissions> objectPermission(){
List<ObjectPermissions> obj = new List<ObjectPermissions>();
obj = [SELECT Parent.label,Parent.Profile.Name, ParentId,Parent.Name,SObjectType,PermissionsRead,PermissionsCreate,PermissionsEdit,PermissionsDelete,PermissionsViewAllRecords,PermissionsModifyAllRecords FROM ObjectPermissions where parentId !=null and SObjectType = 'Account'];
System.debug('obj>>'+obj);
return obj;
}
public class wrapper{
@AuraEnabled
public String profilename{get;set;}
@AuraEnabled
public String parentname{get;set;}
@AuraEnabled
public String objecttype{get;set;}
@AuraEnabled
public Boolean read{get;set;}
@AuraEnabled
public Boolean create{get;set;}
@AuraEnabled
public Boolean edit{get;set;}
@AuraEnabled
public Boolean deleterec{get;set;}
@AuraEnabled
public Boolean viewall{get;set;}
@AuraEnabled
public Boolean modifyall{get;set;}
@AuraEnabled
public String objAccessId{get;set;}
@AuraEnabled
public String fieldId{get;set;}
@AuraEnabled
public String objfields{get;set;}
@AuraEnabled
public String profileId{get;set;}
@AuraEnabled
public String parentIds{get;set;}
@AuraEnabled
public String types{get;set;}
@AuraEnabled
public String parentnames{get;set;}
}
public class fieldwrapper{
@AuraEnabled
public String objecttype{get;set;}
@AuraEnabled
public Boolean read{get;set;}
@AuraEnabled
public Boolean edit{get;set;}
@AuraEnabled
public String parentIds{get;set;}
@AuraEnabled
public String fieldId{get;set;}
@AuraEnabled
public String objfields{get;set;}
}
@AuraEnabled(Cacheable=true)
public static List<wrapper> getprofilerecordRead(String objectType,String selectedbyType,String profileName,boolean readPermission,boolean createPermission,boolean editPermission,boolean deletePermission,boolean viewPermission,boolean modifyPermission){
system.debug('@@@@type'+objectType);
system.debug('@@@@profiletype'+profileName);
system.debug('@@@@type'+selectedbyType);
system.debug('@@@@read'+readPermission);
system.debug('@@@@create'+createPermission);
system.debug('@@@@edit'+editPermission);
system.debug('@@@@delete'+deletePermission);
system.debug('@@@@view'+viewPermission);
system.debug('@@@@modify'+modifyPermission);
List<wrapper> wraplist3= new List<wrapper>();
String query ='SELECT Id,Parent.Name,Parent.ProfileId,Parent.Profile.Name,ParentId, PermissionsRead,PermissionsCreate,SObjectType,PermissionsEdit,PermissionsDelete,PermissionsViewAllRecords,PermissionsModifyAllRecords from ObjectPermissions ';
String appendQuery = '';
if(objectType != 'None' && profileName!= 'None' )
{
query=query+'Where SObjectType=:objectType AND Parent.Profile.Name=:profileName AND Parent.Name!=null ';
}
else if(profileName != 'None')
{
query=query+'WHERE Parent.Profile.Name=:profileName ';
}
else if(objectType !='None' && profileName == 'None' && selectedbyType == 'Profile')
{
query=query+'Where SObjectType=:objectType And Parent.ProfileId != null ';
}
if(readPermission != null && readPermission ==true ){
appendQuery=appendQuery+'AND PermissionsRead=:readPermission ';
}
if(createPermission != null && createPermission ==true){
appendQuery=appendQuery+'AND PermissionsCreate=:createPermission ';
}
if(editPermission != null && editPermission ==true ){
appendQuery=appendQuery+'AND PermissionsEdit=:editPermission ';
}
if(deletePermission != null && deletePermission ==true ){
appendQuery=appendQuery+'AND PermissionsDelete=:deletePermission ';
}
if(viewPermission != null && viewPermission ==true ){
appendQuery=appendQuery+'AND PermissionsViewAllRecords=:viewPermission ';
}
if(modifyPermission != null && modifyPermission ==true ){
appendQuery=appendQuery+'AND PermissionsModifyAllRecords=:modifyPermission ';
}
query=query+appendQuery;
System.debug('@@query1'+query);
if(objectType != 'None' && profileName!= 'None' )
{
query=query+' Order By parent.profile.Name, SobjectType ';
}
else if(objectType !='None' && profileName == 'None' && selectedbyType == 'Profile' )
{
query=query+' Order By parent.profile.Name';
}
else if(profileName != 'None')
{
query=query+' Order By SObjectType ';
}
System.debug('@@query2'+query);
for(ObjectPermissions per:Database.query(query)){
wrapper wra=New wrapper();
wra.profilename=per.Parent.Profile.Name;
wra.profileId=per.Parent.ProfileId;
wra.parentname=per.Parent.Name;
wra.parentIds=per.ParentId;
wra.objecttype=per.SObjectType;
wra.read=per.PermissionsRead;
wra.create=per.PermissionsCreate;
wra.edit=per.PermissionsEdit;
wra.deleterec=per.PermissionsDelete;
wra.viewall=per.PermissionsViewAllRecords;
wra.modifyall=per.PermissionsModifyAllRecords;
wra.objAccessId =per.Id;
wraplist3.add(wra);
}
System.debug('wraplist'+wraplist3);
return wraplist3;
}
//Query to get object name and permission name and readcheck,createcheck,editcheck,deletecheck,viewcheck,modifycheck
@AuraEnabled(Cacheable=true)
// public static List<wrapper> getprofilerecordRead(boolean readPermission){
public static List<wrapper> getpermissionrecordRead(String objectType,String selectedbyType,String permissionName,boolean readPermission,boolean createPermission,boolean editPermission,boolean deletePermission,boolean viewPermission,boolean modifyPermission){
system.debug('@@@@type'+objectType);
system.debug('@@@@permissiontype'+permissionName);
system.debug('@@@@selectedbyType'+selectedbyType);
system.debug('@@@@read'+readPermission);
system.debug('@@@@create'+createPermission);
system.debug('@@@@edit'+editPermission);
system.debug('@@@@delete'+deletePermission);
system.debug('@@@@view'+viewPermission);
system.debug('@@@@modify'+modifyPermission);
List<wrapper> wraplist4= new List<wrapper>();
String query ='SELECT Id,Parent.Name,Parent.ProfileId,Parent.Profile.Name,ParentId, PermissionsRead,PermissionsCreate,SObjectType,PermissionsEdit,PermissionsDelete,PermissionsViewAllRecords,PermissionsModifyAllRecords from ObjectPermissions ';
String appendQuery = '';
if(objectType != 'None' && permissionName!= 'None' )
{
query=query+'Where SObjectType=:objectType AND ParentId=:permissionName AND Parent.Name!=null ';
}
else if(objectType !='None')
{
query=query+'Where SObjectType=:objectType AND Parent.Name!=null And Parent.ProfileId = null ';
}
else if(permissionName != 'None')
{
query=query+'WHERE ParentId=:permissionName AND Parent.Name!=null ';
}
// else if(objectType !='None' && permissionName == 'None' && selectedbyType == 'PermissionSet')
if(readPermission != null && readPermission ==true ){
appendQuery=appendQuery+'AND PermissionsRead=:readPermission ';
}
if(createPermission != null && createPermission ==true){
appendQuery=appendQuery+'AND PermissionsCreate=:createPermission ';
}
if(editPermission != null && editPermission ==true ){
appendQuery=appendQuery+'AND PermissionsEdit=:editPermission ';
}
if(deletePermission != null && deletePermission ==true ){
appendQuery=appendQuery+'AND PermissionsDelete=:deletePermission ';
}
if(viewPermission != null && viewPermission ==true ){
appendQuery=appendQuery+'AND PermissionsViewAllRecords=:viewPermission ';
}
if(modifyPermission != null && modifyPermission ==true ){
appendQuery=appendQuery+'AND PermissionsModifyAllRecords=:modifyPermission ';
}
query=query+appendQuery;
System.debug('@@query1'+query);
for(ObjectPermissions per:Database.query(query)){
System.debug('@@query2'+query);
wrapper wra=New wrapper();
wra.profilename=per.Parent.Profile.Name;
wra.profileId=per.Parent.ProfileId;
wra.parentname=per.Parent.Name;
wra.parentIds=per.ParentId;
wra.objecttype=per.SObjectType;
wra.read=per.PermissionsRead;
wra.create=per.PermissionsCreate;
wra.edit=per.PermissionsEdit;
wra.deleterec=per.PermissionsDelete;
wra.viewall=per.PermissionsViewAllRecords;
wra.modifyall=per.PermissionsModifyAllRecords;
wra.objAccessId =per.Id;
wraplist4.add(wra);
System.debug('wraplist'+wraplist4);
}
return wraplist4;
}
@AuraEnabled()
public static void createObjectPermissions1(Wrapper objper) {
system.debug('ObjectPermissions'+objper);
ObjectPermissions obj = new ObjectPermissions();
obj.Id= objper.objAccessId;
obj.PermissionsRead=objper.read;
obj.PermissionsCreate= objper.create;
obj.PermissionsEdit=objper.edit;
obj.PermissionsDelete=objper.deleterec;
obj.PermissionsViewAllRecords= objper.viewall;
obj.PermissionsModifyAllRecords=objper.modifyall;
update obj;
system.debug('saved'+objper);
// return objper;
}
@AuraEnabled
public static ObjectPermissions createObjectPermissions(ObjectPermissions objper) {
system.debug('objper'+objper);
insert objper;
return objper;
}
//To save/update a record
@AuraEnabled()
public static void updateObjectPermissions(String objper,String objprofilename,boolean objread,boolean objcreate,boolean objedit,boolean objdelete,boolean objview,boolean objmodify) {
system.debug('ObjectPermissions'+objper);
system.debug('objprofilename'+objprofilename);
ObjectPermissions obj = new ObjectPermissions();
obj.Id= objper;
obj.PermissionsRead=objread;
obj.PermissionsCreate= objcreate;
obj.PermissionsEdit=objedit;
obj.PermissionsDelete=objdelete;
obj.PermissionsViewAllRecords= objview;
obj.PermissionsModifyAllRecords=objmodify;
update obj;
system.debug('saved'+obj);
system.debug('saved'+objper);
}
@AuraEnabled()
public static void updateFieldPermissions1(String objFieldsId,boolean fieldRead,boolean fieldEdit) {
system.debug('FieldPermissions'+objFieldsId);
FieldPermissions fields = new FieldPermissions();
fields.Id= objFieldsId;
fields.PermissionsRead=fieldRead;
fields.PermissionsEdit=fieldEdit;
update fields;
system.debug('saved'+fields);
}
@AuraEnabled()
public static void updateFieldPermissions(String objFieldsId) {
system.debug('FieldPermissions'+objFieldsId);
List<fieldwrapper> wrapperList = (List<fieldwrapper>)JSON.deserialize(objFieldsId, List<fieldwrapper>.class);
// fieldwrapper wrapper=(fieldwrapper)JSON.deserialize(objFieldsId,fieldwrapper.class);
system.debug('wrapper:'+wrapperList);
List<FieldPermissions> fieldPermList = new List<FieldPermissions>();
if(wrapperList!=null)
{
for(fieldwrapper wrp :wrapperList )
{
FieldPermissions fields = new FieldPermissions();
fields.Id= wrp.fieldId;
fields.PermissionsRead=wrp.read;
fields.PermissionsEdit=wrp.edit;
fieldPermList.add(fields);
}
update fieldPermList;
system.debug('saved'+fieldPermList);
}
}
@AuraEnabled(Cacheable=true)
public static List<fieldwrapper> getfieldsrecord(String objectType,String getParentId){
system.debug('@@@@type'+objectType);
system.debug('@@@@parentIdtype'+getParentId);
List<fieldwrapper> wraplist5= new List<fieldwrapper>();
String query ='Select Id,SobjectType,Parent.Name,ParentId,Field, PermissionsEdit, PermissionsRead From FieldPermissions ';
{
query=query+'where SObjectType=:objectType AND ParentId=:getParentId ';
System.debug('@@query'+query);
for(FieldPermissions per:Database.query(query)){
fieldwrapper wra=New fieldwrapper();
wra.fieldId = per.Id;
wra.objecttype=per.SObjectType;
wra.objfields=per.Field;
wra.read=per.PermissionsRead;
wra.edit=per.PermissionsEdit;
wra.parentIds=per.ParentId;
wraplist5.add(wra);
System.debug('wraplist'+wraplist5);
}
return wraplist5;
}
@AuraEnabled(Cacheable=true)
public static List<wrapper> getfieldsrecord1(String objectType,String getParentId){
system.debug('@@@@type'+objectType);
system.debug('@@@@parentIdtype'+getParentId);
List<wrapper> wraplist5= new List<wrapper>();
List<wrapper> fieldList= new List<wrapper>();
List<wrapper> stdFieldList= new List<wrapper>();
Map<String,String> fieldAccessStdFldMapComp = new Map<String,String>();
Map<String,String> fieldAccessCusFldMapComp = new Map<String,String>();
for(Schema.SObjectField fl: Schema.getGlobalDescribe().get(objectType).getDescribe().fields.getMap().values())
{
Schema.DescribeFieldResult f = fl.getDescribe();
if(f.isPermissionable() && f.isCustom())
{
if(!fieldAccessCusFldMapComp.containsKey(f.getName()))
{
if(f.isCalculated() || f.isAutoNumber())
{
fieldAccessCusFldMapComp.put(objectType+'.'+f.getName(),'readonly' );
}
else
{
fieldAccessCusFldMapComp.put(objectType+'.'+f.getName(),'both' );
}
}
}
if(f.isPermissionable() && !f.isCustom())
{
if(!fieldAccessStdFldMapComp.containsKey(f.getName()))
{
if(f.isCalculated() || f.isAutoNumber())
{
fieldAccessStdFldMapComp.put(objectType+'.'+f.getName(),'readonly' );
}
else
{
fieldAccessStdFldMapComp.put(objectType+'.'+f.getName(),'both' );
}
}
}
}
system.debug('@@@@@fieldAccessMapComp'+fieldAccessStdFldMapComp);
String query ='Select Id,SobjectType,Parent.Name,ParentId,Field, PermissionsEdit, PermissionsRead From FieldPermissions ';
// if(objectType != 'None' )
// {
query=query+'where SObjectType=:objectType AND ParentId=:getParentId ';
System.debug('@@query'+query);
for(FieldPermissions per:Database.query(query)){
wrapper wra=New wrapper();
wra.fieldId = per.Id;
wra.objecttype=per.SObjectType;
wra.objfields=per.Field;
wra.read=per.PermissionsRead;
wra.edit=per.PermissionsEdit;
wra.parentIds=per.ParentId;
wraplist5.add(wra);
System.debug('wraplist'+wraplist5);
}
return wraplist5;
}
}
public class ObjectPermissionClass {
@AuraEnabled(Cacheable=true)
public static List<ObjectPermissions> objectPermission(){
List<ObjectPermissions> obj = new List<ObjectPermissions>();
obj = [SELECT Parent.label,Parent.Profile.Name, ParentId,Parent.Name,SObjectType,PermissionsRead,PermissionsCreate,PermissionsEdit,PermissionsDelete,PermissionsViewAllRecords,PermissionsModifyAllRecords FROM ObjectPermissions where parentId !=null and SObjectType = 'Account'];
System.debug('obj>>'+obj);
return obj;
}
public class wrapper{
@AuraEnabled
public String profilename{get;set;}
@AuraEnabled
public String parentname{get;set;}
@AuraEnabled
public String objecttype{get;set;}
@AuraEnabled
public Boolean read{get;set;}
@AuraEnabled
public Boolean create{get;set;}
@AuraEnabled
public Boolean edit{get;set;}
@AuraEnabled
public Boolean deleterec{get;set;}
@AuraEnabled
public Boolean viewall{get;set;}
@AuraEnabled
public Boolean modifyall{get;set;}
@AuraEnabled
public String objAccessId{get;set;}
@AuraEnabled
public String fieldId{get;set;}
@AuraEnabled
public String objfields{get;set;}
@AuraEnabled
public String profileId{get;set;}
@AuraEnabled
public String parentIds{get;set;}
@AuraEnabled
public String types{get;set;}
@AuraEnabled
public String parentnames{get;set;}
}
public class fieldwrapper{
@AuraEnabled
public String objecttype{get;set;}
@AuraEnabled
public Boolean read{get;set;}
@AuraEnabled
public Boolean edit{get;set;}
@AuraEnabled
public String parentIds{get;set;}
@AuraEnabled
public String fieldId{get;set;}
@AuraEnabled
public String objfields{get;set;}
}
@AuraEnabled(Cacheable=true)
public static List<wrapper> getprofilerecordRead(String objectType,String selectedbyType,String profileName,boolean readPermission,boolean createPermission,boolean editPermission,boolean deletePermission,boolean viewPermission,boolean modifyPermission){
system.debug('@@@@type'+objectType);
system.debug('@@@@profiletype'+profileName);
system.debug('@@@@type'+selectedbyType);
system.debug('@@@@read'+readPermission);
system.debug('@@@@create'+createPermission);
system.debug('@@@@edit'+editPermission);
system.debug('@@@@delete'+deletePermission);
system.debug('@@@@view'+viewPermission);
system.debug('@@@@modify'+modifyPermission);
List<wrapper> wraplist3= new List<wrapper>();
String query ='SELECT Id,Parent.Name,Parent.ProfileId,Parent.Profile.Name,ParentId, PermissionsRead,PermissionsCreate,SObjectType,PermissionsEdit,PermissionsDelete,PermissionsViewAllRecords,PermissionsModifyAllRecords from ObjectPermissions ';
String appendQuery = '';
if(objectType != 'None' && profileName!= 'None' )
{
query=query+'Where SObjectType=:objectType AND Parent.Profile.Name=:profileName AND Parent.Name!=null ';
}
else if(profileName != 'None')
{
query=query+'WHERE Parent.Profile.Name=:profileName ';
}
else if(objectType !='None' && profileName == 'None' && selectedbyType == 'Profile')
{
query=query+'Where SObjectType=:objectType And Parent.ProfileId != null ';
}
if(readPermission != null && readPermission ==true ){
appendQuery=appendQuery+'AND PermissionsRead=:readPermission ';
}
if(createPermission != null && createPermission ==true){
appendQuery=appendQuery+'AND PermissionsCreate=:createPermission ';
}
if(editPermission != null && editPermission ==true ){
appendQuery=appendQuery+'AND PermissionsEdit=:editPermission ';
}
if(deletePermission != null && deletePermission ==true ){
appendQuery=appendQuery+'AND PermissionsDelete=:deletePermission ';
}
if(viewPermission != null && viewPermission ==true ){
appendQuery=appendQuery+'AND PermissionsViewAllRecords=:viewPermission ';
}
if(modifyPermission != null && modifyPermission ==true ){
appendQuery=appendQuery+'AND PermissionsModifyAllRecords=:modifyPermission ';
}
query=query+appendQuery;
System.debug('@@query1'+query);
if(objectType != 'None' && profileName!= 'None' )
{
query=query+' Order By parent.profile.Name, SobjectType ';
}
else if(objectType !='None' && profileName == 'None' && selectedbyType == 'Profile' )
{
query=query+' Order By parent.profile.Name';
}
else if(profileName != 'None')
{
query=query+' Order By SObjectType ';
}
System.debug('@@query2'+query);
for(ObjectPermissions per:Database.query(query)){
wrapper wra=New wrapper();
wra.profilename=per.Parent.Profile.Name;
wra.profileId=per.Parent.ProfileId;
wra.parentname=per.Parent.Name;
wra.parentIds=per.ParentId;
wra.objecttype=per.SObjectType;
wra.read=per.PermissionsRead;
wra.create=per.PermissionsCreate;
wra.edit=per.PermissionsEdit;
wra.deleterec=per.PermissionsDelete;
wra.viewall=per.PermissionsViewAllRecords;
wra.modifyall=per.PermissionsModifyAllRecords;
wra.objAccessId =per.Id;
wraplist3.add(wra);
}
System.debug('wraplist'+wraplist3);
return wraplist3;
}
//Query to get object name and permission name and readcheck,createcheck,editcheck,deletecheck,viewcheck,modifycheck
@AuraEnabled(Cacheable=true)
// public static List<wrapper> getprofilerecordRead(boolean readPermission){
public static List<wrapper> getpermissionrecordRead(String objectType,String selectedbyType,String permissionName,boolean readPermission,boolean createPermission,boolean editPermission,boolean deletePermission,boolean viewPermission,boolean modifyPermission){
system.debug('@@@@type'+objectType);
system.debug('@@@@permissiontype'+permissionName);
system.debug('@@@@selectedbyType'+selectedbyType);
system.debug('@@@@read'+readPermission);
system.debug('@@@@create'+createPermission);
system.debug('@@@@edit'+editPermission);
system.debug('@@@@delete'+deletePermission);
system.debug('@@@@view'+viewPermission);
system.debug('@@@@modify'+modifyPermission);
List<wrapper> wraplist4= new List<wrapper>();
String query ='SELECT Id,Parent.Name,Parent.ProfileId,Parent.Profile.Name,ParentId, PermissionsRead,PermissionsCreate,SObjectType,PermissionsEdit,PermissionsDelete,PermissionsViewAllRecords,PermissionsModifyAllRecords from ObjectPermissions ';
String appendQuery = '';
if(objectType != 'None' && permissionName!= 'None' )
{
query=query+'Where SObjectType=:objectType AND ParentId=:permissionName AND Parent.Name!=null ';
}
else if(objectType !='None')
{
query=query+'Where SObjectType=:objectType AND Parent.Name!=null And Parent.ProfileId = null ';
}
else if(permissionName != 'None')
{
query=query+'WHERE ParentId=:permissionName AND Parent.Name!=null ';
}
// else if(objectType !='None' && permissionName == 'None' && selectedbyType == 'PermissionSet')
if(readPermission != null && readPermission ==true ){
appendQuery=appendQuery+'AND PermissionsRead=:readPermission ';
}
if(createPermission != null && createPermission ==true){
appendQuery=appendQuery+'AND PermissionsCreate=:createPermission ';
}
if(editPermission != null && editPermission ==true ){
appendQuery=appendQuery+'AND PermissionsEdit=:editPermission ';
}
if(deletePermission != null && deletePermission ==true ){
appendQuery=appendQuery+'AND PermissionsDelete=:deletePermission ';
}
if(viewPermission != null && viewPermission ==true ){
appendQuery=appendQuery+'AND PermissionsViewAllRecords=:viewPermission ';
}
if(modifyPermission != null && modifyPermission ==true ){
appendQuery=appendQuery+'AND PermissionsModifyAllRecords=:modifyPermission ';
}
query=query+appendQuery;
System.debug('@@query1'+query);
for(ObjectPermissions per:Database.query(query)){
System.debug('@@query2'+query);
wrapper wra=New wrapper();
wra.profilename=per.Parent.Profile.Name;
wra.profileId=per.Parent.ProfileId;
wra.parentname=per.Parent.Name;
wra.parentIds=per.ParentId;
wra.objecttype=per.SObjectType;
wra.read=per.PermissionsRead;
wra.create=per.PermissionsCreate;
wra.edit=per.PermissionsEdit;
wra.deleterec=per.PermissionsDelete;
wra.viewall=per.PermissionsViewAllRecords;
wra.modifyall=per.PermissionsModifyAllRecords;
wra.objAccessId =per.Id;
wraplist4.add(wra);
System.debug('wraplist'+wraplist4);
}
return wraplist4;
}
@AuraEnabled()
public static void createObjectPermissions1(Wrapper objper) {
system.debug('ObjectPermissions'+objper);
ObjectPermissions obj = new ObjectPermissions();
obj.Id= objper.objAccessId;
obj.PermissionsRead=objper.read;
obj.PermissionsCreate= objper.create;
obj.PermissionsEdit=objper.edit;
obj.PermissionsDelete=objper.deleterec;
obj.PermissionsViewAllRecords= objper.viewall;
obj.PermissionsModifyAllRecords=objper.modifyall;
update obj;
system.debug('saved'+objper);
// return objper;
}
@AuraEnabled
public static ObjectPermissions createObjectPermissions(ObjectPermissions objper) {
system.debug('objper'+objper);
insert objper;
return objper;
}
//To save/update a record
@AuraEnabled()
public static void updateObjectPermissions(String objper,String objprofilename,boolean objread,boolean objcreate,boolean objedit,boolean objdelete,boolean objview,boolean objmodify) {
system.debug('ObjectPermissions'+objper);
system.debug('objprofilename'+objprofilename);
ObjectPermissions obj = new ObjectPermissions();
obj.Id= objper;
obj.PermissionsRead=objread;
obj.PermissionsCreate= objcreate;
obj.PermissionsEdit=objedit;
obj.PermissionsDelete=objdelete;
obj.PermissionsViewAllRecords= objview;
obj.PermissionsModifyAllRecords=objmodify;
update obj;
system.debug('saved'+obj);
system.debug('saved'+objper);
}
@AuraEnabled()
public static void updateFieldPermissions1(String objFieldsId,boolean fieldRead,boolean fieldEdit) {
system.debug('FieldPermissions'+objFieldsId);
FieldPermissions fields = new FieldPermissions();
fields.Id= objFieldsId;
fields.PermissionsRead=fieldRead;
fields.PermissionsEdit=fieldEdit;
update fields;
system.debug('saved'+fields);
}
@AuraEnabled()
public static void updateFieldPermissions(String objFieldsId) {
system.debug('FieldPermissions'+objFieldsId);
List<fieldwrapper> wrapperList = (List<fieldwrapper>)JSON.deserialize(objFieldsId, List<fieldwrapper>.class);
// fieldwrapper wrapper=(fieldwrapper)JSON.deserialize(objFieldsId,fieldwrapper.class);
system.debug('wrapper:'+wrapperList);
List<FieldPermissions> fieldPermList = new List<FieldPermissions>();
if(wrapperList!=null)
{
for(fieldwrapper wrp :wrapperList )
{
FieldPermissions fields = new FieldPermissions();
fields.Id= wrp.fieldId;
fields.PermissionsRead=wrp.read;
fields.PermissionsEdit=wrp.edit;
fieldPermList.add(fields);
}
update fieldPermList;
system.debug('saved'+fieldPermList);
}
}
@AuraEnabled(Cacheable=true)
public static List<fieldwrapper> getfieldsrecord(String objectType,String getParentId){
system.debug('@@@@type'+objectType);
system.debug('@@@@parentIdtype'+getParentId);
List<fieldwrapper> wraplist5= new List<fieldwrapper>();
String query ='Select Id,SobjectType,Parent.Name,ParentId,Field, PermissionsEdit, PermissionsRead From FieldPermissions ';
{
query=query+'where SObjectType=:objectType AND ParentId=:getParentId ';
System.debug('@@query'+query);
for(FieldPermissions per:Database.query(query)){
fieldwrapper wra=New fieldwrapper();
wra.fieldId = per.Id;
wra.objecttype=per.SObjectType;
wra.objfields=per.Field;
wra.read=per.PermissionsRead;
wra.edit=per.PermissionsEdit;
wra.parentIds=per.ParentId;
wraplist5.add(wra);
System.debug('wraplist'+wraplist5);
}
return wraplist5;
}
@AuraEnabled(Cacheable=true)
public static List<wrapper> getfieldsrecord1(String objectType,String getParentId){
system.debug('@@@@type'+objectType);
system.debug('@@@@parentIdtype'+getParentId);
List<wrapper> wraplist5= new List<wrapper>();
List<wrapper> fieldList= new List<wrapper>();
List<wrapper> stdFieldList= new List<wrapper>();
Map<String,String> fieldAccessStdFldMapComp = new Map<String,String>();
Map<String,String> fieldAccessCusFldMapComp = new Map<String,String>();
for(Schema.SObjectField fl: Schema.getGlobalDescribe().get(objectType).getDescribe().fields.getMap().values())
{
Schema.DescribeFieldResult f = fl.getDescribe();
if(f.isPermissionable() && f.isCustom())
{
if(!fieldAccessCusFldMapComp.containsKey(f.getName()))
{
if(f.isCalculated() || f.isAutoNumber())
{
fieldAccessCusFldMapComp.put(objectType+'.'+f.getName(),'readonly' );
}
else
{
fieldAccessCusFldMapComp.put(objectType+'.'+f.getName(),'both' );
}
}
}
if(f.isPermissionable() && !f.isCustom())
{
if(!fieldAccessStdFldMapComp.containsKey(f.getName()))
{
if(f.isCalculated() || f.isAutoNumber())
{
fieldAccessStdFldMapComp.put(objectType+'.'+f.getName(),'readonly' );
}
else
{
fieldAccessStdFldMapComp.put(objectType+'.'+f.getName(),'both' );
}
}
}
}
system.debug('@@@@@fieldAccessMapComp'+fieldAccessStdFldMapComp);
String query ='Select Id,SobjectType,Parent.Name,ParentId,Field, PermissionsEdit, PermissionsRead From FieldPermissions ';
// if(objectType != 'None' )
// {
query=query+'where SObjectType=:objectType AND ParentId=:getParentId ';
System.debug('@@query'+query);
for(FieldPermissions per:Database.query(query)){
wrapper wra=New wrapper();
wra.fieldId = per.Id;
wra.objecttype=per.SObjectType;
wra.objfields=per.Field;
wra.read=per.PermissionsRead;
wra.edit=per.PermissionsEdit;
wra.parentIds=per.ParentId;
wraplist5.add(wra);
System.debug('wraplist'+wraplist5);
}
return wraplist5;
}
}
The below articles give a good insight into how to get started with writing test classes
https://salesforce.stackexchange.com/questions/244788/how-do-i-write-an-apex-unit-test
https://salesforce.stackexchange.com/questions/244794/how-do-i-increase-my-code-coverage-or-why-cant-i-cover-these-lines
Hope this helps! Thanks