You need to sign in to do that
Don't have an account?
Jonathan Wolff 7
Very urgent: Working test class for ContentDocument Trigger
Hello, I build a trigger, but nobody could help me with the test class. I have a picklist called Dokumentenklasse that is on Content Version. In this picklist there are 3 values ('Geschäftsbrief', 'Vertragsdokument' and 'Wichtige Dokumentation oder Entscheidung') when these values are selected the file can't be deleted.
Please help me with the code of the testclass and try it out too. I had 0% with the last classes I used. The trigger code:
trigger DokumentenklasseDelete on ContentDocument (before delete) {
map<id,ContentDocument> documentMap = new map<id,ContentDocument>([SELECT id,(SELECT Id,FileType,Dokumentenklasse__c from ContentVersions) from ContentDocument where id IN :trigger.old]);
for(ContentDocument con : Trigger.old){
List<ContentVersion> versionList = documentMap.get(con.Id).ContentVersions;
if (versionList.size() > 0) {
for (contentVersion cv : versionList) {
if(cv.Dokumentenklasse__c =='Geschäftsbrief' || cv.Dokumentenklasse__c == 'Vertragsdokument' || cv.Dokumentenklasse__c == 'Wichtige Dokumentation oder Entscheidung' ) {
con.adderror('ERROR: Dokumente der Dokumentenklassen "Geschäftsbrief", "Vertragsdokument", "Wichtige Dokumentation oder Entscheidung" dürfen aus rechtlichen Gründen vor Ablauf der Aufbewahrungsfrist nicht gelöscht werden.');
}
}
}
} }
Please help me with the code of the testclass and try it out too. I had 0% with the last classes I used. The trigger code:
trigger DokumentenklasseDelete on ContentDocument (before delete) {
map<id,ContentDocument> documentMap = new map<id,ContentDocument>([SELECT id,(SELECT Id,FileType,Dokumentenklasse__c from ContentVersions) from ContentDocument where id IN :trigger.old]);
for(ContentDocument con : Trigger.old){
List<ContentVersion> versionList = documentMap.get(con.Id).ContentVersions;
if (versionList.size() > 0) {
for (contentVersion cv : versionList) {
if(cv.Dokumentenklasse__c =='Geschäftsbrief' || cv.Dokumentenklasse__c == 'Vertragsdokument' || cv.Dokumentenklasse__c == 'Wichtige Dokumentation oder Entscheidung' ) {
con.adderror('ERROR: Dokumente der Dokumentenklassen "Geschäftsbrief", "Vertragsdokument", "Wichtige Dokumentation oder Entscheidung" dürfen aus rechtlichen Gründen vor Ablauf der Aufbewahrungsfrist nicht gelöscht werden.');
}
}
}
} }
Please try the below test class:
Thanks,
Maharajan.C