Mercurial > altnet-hispano
comparison Agendas/trunk/src/Agendas.Tests/AgendaTests.cs @ 1:6bb4ab4c0611
Tests de Crud para repositorio de Vans
author | nelopauselli |
---|---|
date | Sat, 22 Jan 2011 19:50:32 -0300 |
parents | 3f7dbb633b71 |
children | c03560ae4762 |
comparison
equal
deleted
inserted
replaced
0:3f7dbb633b71 | 1:6bb4ab4c0611 |
---|---|
7 { | 7 { |
8 [TestFixture] | 8 [TestFixture] |
9 public class AgendaTests | 9 public class AgendaTests |
10 { | 10 { |
11 [Test] | 11 [Test] |
12 public void PublicarVan() | 12 public void Publicar_van() |
13 { | 13 { |
14 var publicador = new Mock<IPublicador>(); | 14 var publicador = new Mock<IPublicador>(); |
15 publicador.Setup(p => p.Publicar(It.IsAny<Evento>())).Verifiable(); | |
16 | |
17 var eventoRepository = new Mock<IEventoRepository>(); | 15 var eventoRepository = new Mock<IEventoRepository>(); |
18 | 16 |
19 var agenda = new Agenda(publicador.Object, eventoRepository.Object); | 17 var agenda = new Agenda(publicador.Object, null, eventoRepository.Object); |
20 | 18 |
21 var van = new Van(); | 19 var van = new Van(); |
22 agenda.Publicar(van); | 20 agenda.Publicar(van); |
23 | 21 |
24 publicador.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Exactly(1)); | 22 publicador.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Exactly(1)); |
23 eventoRepository.Verify(r => r.Save(It.IsAny<Evento>()), Times.Exactly(1)); | |
25 } | 24 } |
26 | 25 |
27 [Test] | 26 [Test] |
28 public void PublicarCafe() | 27 public void Publicar_cafe() |
29 { | 28 { |
30 var publicador = new Mock<IPublicador>(); | 29 var publicador = new Mock<IPublicador>(); |
31 publicador.Setup(p => p.Publicar(It.IsAny<Evento>())).Verifiable(); | |
32 | |
33 var eventoRepository = new Mock<IEventoRepository>(); | 30 var eventoRepository = new Mock<IEventoRepository>(); |
34 | 31 |
35 var agenda = new Agenda(publicador.Object, eventoRepository.Object); | 32 var agenda = new Agenda(publicador.Object, null, eventoRepository.Object); |
36 | 33 |
37 var cafe = new Cafe(); | 34 var cafe = new Cafe(); |
38 agenda.Publicar(cafe); | 35 agenda.Publicar(cafe); |
39 | 36 |
40 publicador.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Exactly(1)); | 37 publicador.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Exactly(1)); |
41 | 38 eventoRepository.Verify(r => r.Save(It.IsAny<Evento>()), Times.Exactly(1)); |
42 } | 39 } |
43 | 40 |
44 [Test] | 41 [Test] |
45 public void PublicarComposite() | 42 public void Publicar_van_multiples_publicadores() |
46 { | 43 { |
47 var publicador1 = new Mock<IPublicador>(); | 44 var publicador1 = new Mock<IPublicador>(); |
48 publicador1.Setup(p => p.Publicar(It.IsAny<Evento>())).Verifiable(); | |
49 | |
50 var publicador2 = new Mock<IPublicador>(); | 45 var publicador2 = new Mock<IPublicador>(); |
51 publicador2.Setup(p => p.Publicar(It.IsAny<Evento>())).Verifiable(); | |
52 | 46 |
53 var eventoRepository = new Mock<IEventoRepository>(); | 47 var eventoRepository = new Mock<IEventoRepository>(); |
54 | 48 |
55 var agenda = new Agenda(new CompositePublicador (new[] { publicador1.Object, publicador2.Object } ), eventoRepository.Object); | 49 var agenda = new Agenda(new CompositePublicador (new[] { publicador1.Object, publicador2.Object } ), null, eventoRepository.Object); |
56 | 50 |
57 var cafe = new Cafe(); | 51 var cafe = new Cafe(); |
58 agenda.Publicar(cafe); | 52 agenda.Publicar(cafe); |
59 | 53 |
60 publicador1.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Exactly(1)); | 54 publicador1.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Exactly(1)); |
61 publicador2.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Exactly(1)); | 55 publicador2.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Exactly(1)); |
62 } | 56 } |
57 | |
58 [Test] | |
59 public void Publicar_y_recordar_van() | |
60 { | |
61 var publicador1 = new Mock<IPublicador>(); | |
62 var publicador2 = new Mock<IPublicador>(); | |
63 var recordador1 = new Mock<IRecordador>(); | |
64 | |
65 var eventoRepository = new Mock<IEventoRepository>(); | |
66 | |
67 var agenda = new Agenda(new CompositePublicador(new[] { publicador1.Object, publicador2.Object }), recordador1.Object, eventoRepository.Object); | |
68 | |
69 var van = new Van(); | |
70 agenda.Publicar(van); | |
71 | |
72 agenda.Recordar(van); | |
73 | |
74 publicador1.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Exactly(1)); | |
75 publicador2.Verify(p => p.Publicar(It.IsAny<Evento>()), Times.Exactly(1)); | |
76 recordador1.Verify(r => r.Recordar(It.IsAny<Evento>()), Times.Exactly(1)); | |
77 | |
78 } | |
63 } | 79 } |
64 } | 80 } |