Mercurial > altnet-hispano
comparison Agendas/trunk/src/Agendas.Tests/AgendaTests.cs @ 9:c90492faf268
Se implementa seguridad a través del constructor y no como parámetro
Se valida autenticación al Publicar.
author | juanjose.montesdeocaarbos |
---|---|
date | Sat, 12 Feb 2011 12:22:36 -0300 |
parents | cae27d7eb697 |
children | 9d6b28a696d1 |
comparison
equal
deleted
inserted
replaced
8:cae27d7eb697 | 9:c90492faf268 |
---|---|
16 { | 16 { |
17 [Test] | 17 [Test] |
18 public void Publicar_cafe() | 18 public void Publicar_cafe() |
19 { | 19 { |
20 var publicador = new Mock<IPublicador>(); | 20 var publicador = new Mock<IPublicador>(); |
21 | 21 var seguridad = new Mock<ISeguridad>(); |
22 var agenda = new Agenda(publicador.Object, null, null); | 22 var agenda = new Agenda(publicador.Object, null, seguridad.Object); |
23 | 23 |
24 var cafe = EventoObjectMother.GetCafeValidoParaPublicar(); | 24 var cafe = EventoObjectMother.GetCafeValidoParaPublicar(); |
25 seguridad.Setup(s => s.GetPrincipal()).Returns(SeguridadObjectMother.GetGenericPrincipalAutenticadoSinRoles()); | |
25 agenda.Publicar(cafe); | 26 agenda.Publicar(cafe); |
26 | 27 |
27 publicador.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Exactly(1)); | 28 publicador.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Exactly(1)); |
28 } | 29 } |
29 | 30 |
30 [Test] | 31 [Test] |
31 public void Publicar_van() | 32 public void Publicar_van_con_usuario_autenticado() |
32 { | 33 { |
34 var seguridad = new Mock<ISeguridad>(); | |
33 var publicador = new Mock<IPublicador>(); | 35 var publicador = new Mock<IPublicador>(); |
34 | 36 |
35 var agenda = new Agenda(publicador.Object, null, null); | 37 var agenda = new Agenda(publicador.Object, null, seguridad.Object); |
36 | 38 |
37 var van = EventoObjectMother.GetVanValidaParaPublicar(); | 39 var van = EventoObjectMother.GetVanValidaParaPublicar(); |
38 | 40 |
41 seguridad.Setup(s => s.GetPrincipal()).Returns(SeguridadObjectMother.GetGenericPrincipalAutenticadoSinRoles()); | |
39 agenda.Publicar(van); | 42 agenda.Publicar(van); |
40 Assert.AreEqual(1, agenda.GetEventosPublicados().Count); | 43 Assert.AreEqual(1, agenda.GetEventosPublicados().Count); |
41 | 44 |
42 publicador.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Exactly(1)); | 45 publicador.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Exactly(1)); |
43 } | 46 } |
47 | |
48 [Test] | |
49 public void Publicar_van_sin_usuario_autenticado() { | |
50 var seguridad = new Mock<ISeguridad>(); | |
51 var publicador = new Mock<IPublicador>(); | |
52 | |
53 var agenda = new Agenda(publicador.Object, null, seguridad.Object); | |
54 | |
55 var van = EventoObjectMother.GetVanValidaParaPublicar(); | |
56 | |
57 seguridad.Setup(s => s.GetPrincipal()).Returns(SeguridadObjectMother.GetGenericPrincipalSinAutenticar()); | |
58 | |
59 Assert.Throws<ValidationException>(() => agenda.Publicar(van)); | |
60 } | |
44 | 61 |
45 [Test] | 62 [Test] |
46 public void Error_al_publicar_van() | 63 public void Error_al_publicar_van() |
47 { | 64 { |
48 var publicador = new Mock<IPublicador>(); | 65 var publicador = new Mock<IPublicador>(); |