Bonjour,
j'explique rapidement mon problème.
J'ai fais un modèle de message en visualforce. J'ai utilisé une classe apex pour pouvoir afficher ce que je voulais.
Je dois maintenant faire la classe de test.
Je bloque à 41%. J'ai essayé certaines choses (j'en ai laissé en commentaire dans mon code) mais sans succès.
Voici la classe apex (en rouge, ce qui n'est pas couvert par le test) :
Et, la classe de test :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51 public class CaseCommentClass { private final List<CaseComment> cComment1; private final List<CaseComment> cComment2; public Id caseId {get; set;} public List<CaseComment> getCaseComment1() { if(caseId != NULL){ List<CaseComment> cComment1= [ SELECT CommentBody, CreatedDate, CreatedBy.Name FROM CaseComment WHERE ParentId = :caseId AND IsPublished = True ORDER BY CreatedDate DESC LIMIT 1 ]; if(cComment1!=NULL && cComment1.size()>0) return cComment1; } return NULL; } public List<CaseComment> getCaseComment2() { if(caseId != NULL){ List<CaseComment> cComment2= [ SELECT CommentBody, CreatedDate, CreatedBy.Name FROM CaseComment WHERE ParentId = :caseId AND IsPublished = True ORDER BY CreatedDate DESC LIMIT 20 ]; if(cComment2!=NULL && cComment2.size()>0) return cComment2; } return NULL; } }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47 @isTest public class Test_CCE_Modele_Message { public static testMethod void TestCCE_Modele_Message() { //INSERER LES DONNEES // Initialisation du RecordType de la Ressource INEO à créer Id RessourceRTId = [select Id from RecordType where SobjectType = 'Ressource_INEO__c' and DeveloperName = 'Support'].Id; //Il faut insérer une Ressource_INEO__c Ressource_INEO__c MaRessource = new Ressource_INEO__c (Name='MaRessource', RO__c=FALSE, RecordTypeId = RessourceRTId); insert MaRessource; // Initialisation RecordType des Sites INEO à créer Id SiteRTId = [select Id from RecordType where SobjectType = 'Site__c' and DeveloperName = 'Client_DOS'].Id; //Il faut insérer un Site__c rattaché à un RecordType Site__c MonSite = new Site__c(name='Site Client', RecordTypeId = SiteRTId); insert MonSite; //Il faut insérer un Compte__c rattaché à un Site Account MonCompte = new Account(Name='MonCompte', Site_INEO__c=MonSite.id); insert MonCompte; Case MaRequete = new Case(AccountId = MonCompte.id, Subject='tutu', Ressource_INEO__c = MaRessource.id); insert MaRequete; //Inutile : cela ne change rien //List<CaseComment> cComment1 = new List<CaseComment>(); //cComment1.add(new CaseComment(CommentBody='test1', ParentId = MaRequete.id , IsPublished = true)); //insert cComment1; //List<CaseComment> cComment2 = new List<CaseComment>(); //cComment2.add(new CaseComment(CommentBody='test2', ParentId = MaRequete.id, IsPublished = true)); //insert cComment2; ApexPages.StandardController sc = new ApexPages.StandardController(MaRequete); CaseCommentClass ccc = new CaseCommentClass(); Test.startTest(); ccc.getCaseComment1(); ccc.getCaseComment2(); //Stop le test Test.stopTest(); } }
C'est fou quand même, je mets plus de temps à faire la classe de test que le reste...
Pourriez-vous m'aider, m'expliquer ? Afin que je réussisse cette classe.
Merci.
Dedex
Partager