Bonjour.
Je travaille actuellement avec Spring et EasyMock(pour simuler des fonctionnements de services).
Nous avons ajouté une couche de sécurité avec Spring-scurity.
Désormais, lors du replay sur les objets EasyMock, une erreur survient sur les objets dont des méthodes ont été sécurisées. Elles indiquent que ce n'est pas un mock. (proxy #30 is not a mock).
Apparemment, le fait d'ajouter l'annotation fait qu'on ne peut plus mocker l'objet.
Je ne peux pas passer par une implémentation spécifique de l'interface non plus, car j'ai besoin de caster mon objet pour lui allouer des valeurs pour l'exécution, et une erreur CastClassException apparaît.
En résumé :
Quelqu'un sait comment régler ou contourner le problème sans enlever la sécurité ?
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 public Interface monInterface { void maMethode(); // ici si on utilise EasyMock c'est bon } public class TestI { @Test public test() { MonIterface inter = EasyMock.createMock(MonInterface.class); EasyMock.replay(inter); // ça fonctionne } } public Interface monInterface { @preAuthorize("toto") void maMethode(); // ici si on utilise EasyMock ko } public class TestI { @Test public test() { MonIterface inter = EasyMock.createMock(MonInterface.class); EasyMock.replay(inter); // KO => Not a Mock } }
Partager