Mercurial > altnet-hispano
annotate Agendas/trunk/src/Agendas.Tests/PropuestasTests.cs @ 51:4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
author | nelopauselli |
---|---|
date | Sat, 14 May 2011 12:15:15 -0300 |
parents | 3ebe89c88caa |
children | 7b3a32bbdfa0 |
rev | line source |
---|---|
20 | 1 using System; |
2 using System.Collections.Generic; | |
3 using System.Linq; | |
4 using AltNetHispano.Agendas.Domain; | |
5 using AltNetHispano.Agendas.Domain.Exceptions; | |
6 using AltNetHispano.Agendas.Domain.Repositories; | |
7 using Moq; | |
8 using NUnit.Framework; | |
9 | |
10 namespace AltNetHispano.Agendas.Tests | |
11 { | |
12 [TestFixture] | |
13 public class PropuestasTests : TestBase | |
14 { | |
15 [Test] | |
51
4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
nelopauselli
parents:
50
diff
changeset
|
16 public void Proponer_evento_correctamente() |
20 | 17 { |
50
3ebe89c88caa
Agregando propiedad al Evento sobre el Usuario que lo crea o que realizó la
nelopauselli
parents:
45
diff
changeset
|
18 var agenda = new Agenda(null, null, DefaultEventoRepository, DefaultPonenteRepository); |
26 | 19 agenda.Proponer("Van propuesta", null); |
20 | 20 |
21 IList<Evento> eventosPropuestos = agenda.GetEventosPropuestos(); | |
22 Assert.IsNotNull(eventosPropuestos); | |
23 Assert.AreEqual(1, eventosPropuestos.Count); | |
24 Assert.AreEqual("Van propuesta", eventosPropuestos[0].Titulo); | |
25 } | |
26 | |
27 [Test] | |
28 public void Verificar_propuesta_separada_de_publicacion() | |
29 { | |
50
3ebe89c88caa
Agregando propiedad al Evento sobre el Usuario que lo crea o que realizó la
nelopauselli
parents:
45
diff
changeset
|
30 var agenda = new Agenda(null, null, DefaultEventoRepository, DefaultPonenteRepository); |
20 | 31 |
26 | 32 agenda.Proponer("Van propuesta", null); |
24 | 33 agenda.Publicar("Van publicada", "jjmontes", DateTime.Now); |
20 | 34 |
35 IList<Evento> eventosPropuestos = agenda.GetEventosPropuestos(); | |
36 IList<Evento> eventosPublicados = agenda.GetEventosPublicados(); | |
37 | |
38 Assert.AreEqual(1, eventosPropuestos.Count); | |
39 Assert.AreEqual(1, eventosPublicados.Count); | |
40 } | |
41 | |
42 [Test] | |
51
4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
nelopauselli
parents:
50
diff
changeset
|
43 public void Intentar_proponer_evento_sin_titulo() |
20 | 44 { |
45 var repository = new Mock<IEventoRepository>(); | |
46 | |
50
3ebe89c88caa
Agregando propiedad al Evento sobre el Usuario que lo crea o que realizó la
nelopauselli
parents:
45
diff
changeset
|
47 var agenda = new Agenda(null, null, repository.Object, DefaultPonenteRepository); |
26 | 48 |
49 Assert.Throws<ValidationException>(() => agenda.Proponer(string.Empty, null)); | |
20 | 50 |
51 repository.Verify(p => p.Save(It.IsAny<Evento>()), Times.Exactly(0)); | |
52 } | |
53 | |
54 [Test] | |
51
4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
nelopauselli
parents:
50
diff
changeset
|
55 public void Intentar_agendar_evento_propuesto_sin_indicar_fecha() |
20 | 56 { |
50
3ebe89c88caa
Agregando propiedad al Evento sobre el Usuario que lo crea o que realizó la
nelopauselli
parents:
45
diff
changeset
|
57 var agenda = new Agenda(null, null, DefaultEventoRepository, DefaultPonenteRepository); |
20 | 58 |
59 { | |
26 | 60 agenda.Proponer("Van propuesta", null); |
20 | 61 } |
62 | |
63 { | |
64 var van = agenda.GetEventosPropuestos().FirstOrDefault(); | |
65 Assert.IsNotNull(van); | |
51
4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
nelopauselli
parents:
50
diff
changeset
|
66 //TODO: creo que nos equivocamos en los parametros que le pasamos según el nombre del test |
4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
nelopauselli
parents:
50
diff
changeset
|
67 Assert.Throws<ValidationException>(() => agenda.Publicar(van.Titulo, string.Empty, van.Fecha)); |
20 | 68 } |
69 } | |
70 | |
71 [Test] | |
51
4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
nelopauselli
parents:
50
diff
changeset
|
72 public void Intentar_agendar_evento_propuesto_sin_indicar_ponente() |
20 | 73 { |
50
3ebe89c88caa
Agregando propiedad al Evento sobre el Usuario que lo crea o que realizó la
nelopauselli
parents:
45
diff
changeset
|
74 var agenda = new Agenda(null, null, DefaultEventoRepository, DefaultPonenteRepository); |
20 | 75 |
76 { | |
26 | 77 agenda.Proponer("Van propuesta", null); |
20 | 78 } |
79 | |
80 { | |
81 var van = agenda.GetEventosPropuestos().FirstOrDefault(); | |
82 Assert.IsNotNull(van); | |
83 | |
38
3c5657d99727
Cambio de setters de las propiedades a private
nelo@MTEySS.neluz.int
parents:
29
diff
changeset
|
84 van.Actualizar(null, DateTime.Today.AddDays(5)); |
24 | 85 Assert.Throws<ValidationException>(() => agenda.Publicar(van.Titulo, string.Empty, van.Fecha)); |
20 | 86 } |
87 } | |
29
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
88 |
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
89 [Test] |
51
4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
nelopauselli
parents:
50
diff
changeset
|
90 public void Crear_modificar_y_publicar_evento_propuesto() |
29
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
91 { |
50
3ebe89c88caa
Agregando propiedad al Evento sobre el Usuario que lo crea o que realizó la
nelopauselli
parents:
45
diff
changeset
|
92 var agenda = new Agenda(null, null, DefaultEventoRepository, DefaultPonenteRepository); |
29
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
93 |
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
94 agenda.Proponer("Van", null); |
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
95 { |
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
96 IList<Evento> eventosPropuestos = agenda.GetEventosPropuestos(); |
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
97 IList<Evento> eventosPublicados = agenda.GetEventosPublicados(); |
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
98 |
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
99 Assert.AreEqual(1, eventosPropuestos.Count); |
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
100 Assert.AreEqual(0, eventosPublicados.Count); |
45 | 101 |
102 var evento = eventosPropuestos.FirstOrDefault(); | |
103 agenda.ModificarPropuesta(evento.Id, "Van 2", "otro ponente"); | |
104 | |
105 eventosPropuestos = agenda.GetEventosPropuestos(); | |
106 Assert.AreEqual(1, eventosPropuestos.Count); | |
107 | |
108 evento = eventosPropuestos.FirstOrDefault(); | |
109 Assert.AreEqual("Van 2", evento.Titulo); | |
110 Assert.AreEqual("otro ponente", evento.Ponente.Nombre); | |
29
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
111 } |
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
112 |
45 | 113 agenda.Publicar("Van 2", "jjmontes", DateTime.Now); |
29
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
114 { |
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
115 IList<Evento> eventosPropuestos = agenda.GetEventosPropuestos(); |
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
116 IList<Evento> eventosPublicados = agenda.GetEventosPublicados(); |
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
117 |
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
118 Assert.AreEqual(0, eventosPropuestos.Count); |
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
119 Assert.AreEqual(1, eventosPublicados.Count); |
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
120 } |
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
121 } |
016b9b9b8d3a
Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta
nelo@MTEySS.neluz.int
parents:
26
diff
changeset
|
122 |
51
4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
nelopauselli
parents:
50
diff
changeset
|
123 [Test] |
4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
nelopauselli
parents:
50
diff
changeset
|
124 public void Intentar_proponer_evento_sin_usuario_autenticado() |
4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
nelopauselli
parents:
50
diff
changeset
|
125 { |
4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
nelopauselli
parents:
50
diff
changeset
|
126 var agenda = new Agenda(null, null, DefaultEventoRepository, DefaultPonenteRepository); |
45 | 127 |
51
4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
nelopauselli
parents:
50
diff
changeset
|
128 SetCurrentUser(null); |
45 | 129 |
51
4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
nelopauselli
parents:
50
diff
changeset
|
130 Assert.Throws<UsuarioNoAutenticadoException>(() => agenda.Proponer("Inmortalidad de la meduza.", null)); |
4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
nelopauselli
parents:
50
diff
changeset
|
131 } |
45 | 132 |
51
4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
nelopauselli
parents:
50
diff
changeset
|
133 [Test] |
4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
nelopauselli
parents:
50
diff
changeset
|
134 public void Intentar_obtener_un_evento_inexistente() |
4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
nelopauselli
parents:
50
diff
changeset
|
135 { |
4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
nelopauselli
parents:
50
diff
changeset
|
136 var idEventoNoExistente = new Guid("99999999999999999999999999999999"); |
45 | 137 |
51
4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
nelopauselli
parents:
50
diff
changeset
|
138 var agenda = new Agenda(null, null, DefaultEventoRepository, DefaultPonenteRepository); |
45 | 139 |
51
4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
nelopauselli
parents:
50
diff
changeset
|
140 Assert.IsNull(agenda.GetEvento(idEventoNoExistente)); |
4a63a73e38e4
Cambio de nombres de test intentando describir mejor lo que verifican
nelopauselli
parents:
50
diff
changeset
|
141 } |
45 | 142 } |
20 | 143 } |