annotate Agendas/trunk/src/Agendas.Repositories.Tests/PersonaCrud.cs @ 282:bc8dfbde0523

#123: Patrocinadores de las vans: Se verifica que para publicar una Van, debe tener al menos un Patrocinador.
author juanjose.montesdeocaarbos
date Mon, 26 Dec 2011 14:21:44 -0300
parents 1ca7c39ad38b
children
rev   line source
178
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
1 using System;
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
2 using System.Collections.Generic;
178
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
3 using System.Linq;
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
4 using Agendas.Repositories.Tests.Infraestructure;
178
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
5 using AltNetHispano.Agendas.Domain;
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
6 using AltNetHispano.Agendas.Domain.Repositories;
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
7 using AltNetHispano.Agendas.Domain.Services;
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
8 using NUnit.Framework;
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
9
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
10 namespace Agendas.Repositories.Tests
178
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
11 {
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
12 public abstract class PersonaCrud<T> where T : IInfraestrutureFactory, new()
178
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
13 {
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
14 private readonly IPersonaRepository _personaRepository;
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
15 private readonly Func<IDisposable> _requestEmulator;
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
16 private readonly PersonaService _personaService;
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
17 private readonly IEventoRepository _eventoRepository;
178
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
18
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
19 protected PersonaCrud()
178
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
20 {
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
21 var infraestrutureFactory = new T();
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
22
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
23 _eventoRepository = infraestrutureFactory.GetEventoRepository();
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
24 _personaRepository = infraestrutureFactory.GetPonenteRepository();
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
25 _requestEmulator = infraestrutureFactory.GetRequestEmulator();
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
26
209
a36a76bd6ec3 Se soluciona ticket 173. Se agrega eliminación de personas siempre y cuando no esté asociada a ninguna van.
alabra
parents: 180
diff changeset
27 _personaService = new PersonaService(_personaRepository, _eventoRepository);
178
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
28 }
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
29
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
30 [Test]
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
31 public void CreateAdministrador()
178
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
32 {
219
b9850b647a4e Agregando alta de ponente durante la carga del evento
nelopauselli
parents: 209
diff changeset
33 Guid id;
178
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
34 using (_requestEmulator.Invoke())
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
35 {
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
36 var r = CreatePersona("Nelo Pauselli", "nelopauselli", "nelopauselli@gmail.com", "http://nelopauselli.blogspot.com",
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
37 null);
219
b9850b647a4e Agregando alta de ponente durante la carga del evento
nelopauselli
parents: 209
diff changeset
38 Assert.AreEqual("Nelo Pauselli", r.Nombre);
b9850b647a4e Agregando alta de ponente durante la carga del evento
nelopauselli
parents: 209
diff changeset
39 Assert.AreNotEqual(Guid.Empty, r.Id);
b9850b647a4e Agregando alta de ponente durante la carga del evento
nelopauselli
parents: 209
diff changeset
40
b9850b647a4e Agregando alta de ponente durante la carga del evento
nelopauselli
parents: 209
diff changeset
41 id = r.Id;
178
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
42 }
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
43
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
44 using (_requestEmulator.Invoke())
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
45 {
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
46 var persona = _personaRepository.GetByNombre("Nelo Pauselli");
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
47 Assert.IsNotNull(persona);
219
b9850b647a4e Agregando alta de ponente durante la carga del evento
nelopauselli
parents: 209
diff changeset
48 Assert.AreEqual(id, persona.Id);
178
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
49 }
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
50 }
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
51
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
52 private ResultadoAdd CreatePersona(string nombre, string twitter, string mail, string blog, IEnumerable<string> roles)
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
53 {
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
54 return _personaService.Add(nombre, twitter, mail, blog, roles);
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
55 }
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
56
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
57 [Test]
178
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
58 public void ReadAdministrador()
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
59 {
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
60 Guid personaId;
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
61 using (_requestEmulator.Invoke())
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
62 {
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
63 var r = CreatePersona("Nelo Pauselli", "nelopauselli", "nelopauselli@gmail.com", "http://nelopauselli.blogspot.com",
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
64 null);
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
65 personaId = r.Id;
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
66 }
178
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
67
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
68 using (_requestEmulator.Invoke())
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
69 {
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
70 var persona = _personaRepository.Get(personaId);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
71
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
72 Assert.IsNotNull(persona);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
73 Assert.AreEqual("Nelo Pauselli", persona.Nombre);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
74 Assert.AreEqual("nelopauselli", persona.Twitter);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
75 Assert.AreEqual("nelopauselli@gmail.com", persona.Mail);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
76 Assert.AreEqual("http://nelopauselli.blogspot.com", persona.Blog);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
77
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
78 Assert.IsTrue(persona.Cuentas.Any());
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
79 Assert.AreEqual("nelopauselli", persona.Cuentas.First().LogonName);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
80 Assert.AreEqual(IdentityProviderEnum.Twitter, persona.Cuentas.First().IdentityProvider);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
81
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
82 Assert.IsTrue(persona.Roles.Any());
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
83 Assert.IsTrue(persona.Roles.Contains(Roles.Usuario));
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
84 Assert.IsTrue(persona.Roles.Contains(Roles.Administrador));
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
85 }
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
86 }
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
87
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
88 [Test]
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
89 public void CreateUsuario()
178
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
90 {
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
91 using (_requestEmulator.Invoke())
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
92 {
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
93 CreatePersona("Pablo Morales", "pablomorales", "pablomorales@gmail.com", "http://pablomorales.blogspot.com",
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
94 new[] {Roles.Usuario});
178
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
95 }
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
96
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
97 using (_requestEmulator.Invoke())
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
98 {
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
99 var persona = _personaRepository.GetByNombre("Pablo Morales");
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
100 Assert.IsNotNull(persona);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
101 }
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
102 }
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
103
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
104 [Test]
178
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
105 public void ReadUsuario()
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
106 {
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
107 Guid personaId;
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
108 using (_requestEmulator.Invoke())
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
109 {
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
110 var r = CreatePersona("Pablo Morales", "pablomorales", "pablomorales@gmail.com", "http://pablomorales.blogspot.com",
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
111 new[] {Roles.Usuario});
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
112 personaId = r.Id;
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
113 }
178
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
114
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
115 using (_requestEmulator.Invoke())
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
116 {
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
117 var persona = _personaRepository.Get(personaId);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
118
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
119 Assert.IsNotNull(persona);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
120 Assert.AreEqual("Pablo Morales", persona.Nombre);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
121 Assert.AreEqual("pablomorales", persona.Twitter);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
122 Assert.AreEqual("pablomorales@gmail.com", persona.Mail);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
123 Assert.AreEqual("http://pablomorales.blogspot.com", persona.Blog);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
124
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
125 Assert.IsTrue(persona.Cuentas.Any());
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
126 Assert.AreEqual("pablomorales", persona.Cuentas.First().LogonName);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
127 Assert.AreEqual(IdentityProviderEnum.Twitter, persona.Cuentas.First().IdentityProvider);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
128
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
129 Assert.IsTrue(persona.Roles.Any());
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
130 Assert.IsTrue(persona.Roles.Contains(Roles.Usuario));
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
131 Assert.IsFalse(persona.Roles.Contains(Roles.Administrador));
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
132 }
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
133 }
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
134
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
135 [Test]
178
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
136 public void Update()
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
137 {
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
138 Guid personaId;
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
139 using (_requestEmulator.Invoke())
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
140 {
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
141 var r = CreatePersona("Nelo Pauselli", "nelopauselli", "nelopauselli@gmail.com", "http://nelopauselli.blogspot.com",
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
142 null);
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
143 personaId = r.Id;
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
144 }
178
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
145
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
146 using (_requestEmulator.Invoke())
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
147 {
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
148 var persona = _personaRepository.Get(personaId);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
149 Assert.IsNotNull(persona);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
150
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
151 persona.Nombre = "Nelo Mariano Pauselli";
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
152 }
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
153
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
154 using (_requestEmulator.Invoke())
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
155 {
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
156 var persona = _personaRepository.Get(personaId);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
157
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
158 Assert.IsNotNull(persona);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
159 Assert.AreEqual("Nelo Mariano Pauselli", persona.Nombre);
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
160 }
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
161 }
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
162
267
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
163 [Test]
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
164 [Ignore]
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
165 public void UpdateDuplicatePersona()
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
166 {
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
167 Guid personaNeloId;
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
168 using (_requestEmulator.Invoke())
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
169 {
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
170 var r = CreatePersona("Nelo Pauselli", "nelopauselli", "nelopauselli@gmail.com", "http://nelopauselli.blogspot.com",
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
171 null);
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
172 personaNeloId = r.Id;
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
173 }
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
174 Guid personaJorgeId;
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
175 using (_requestEmulator.Invoke())
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
176 {
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
177 var r = CreatePersona("Jorge Gamba", "jorgegamba", "jorgegamba@gmail.com", "http://jorgegamba.com/",
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
178 null);
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
179 personaJorgeId = r.Id;
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
180 }
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
181
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
182 using (_requestEmulator.Invoke())
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
183 {
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
184 var persona = _personaRepository.Get(personaNeloId);
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
185 Assert.IsNotNull(persona);
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
186
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
187 persona.Nombre = "Jorge Gamba";
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
188 persona.Mail = "jorgegamba@gmail.com";
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
189 persona.Twitter = "jorgegamba";
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
190 persona.Blog = "http://jorgegamba.com/";
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
191 }
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
192 }
1ca7c39ad38b Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
juanjose.montesdeocaarbos
parents: 255
diff changeset
193
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
194 [Test]
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
195 public void Delete()
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
196 {
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
197 Guid personaId;
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
198 using (_requestEmulator.Invoke())
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
199 {
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
200 var r = CreatePersona("Nelo Pauselli", "nelopauselli", "nelopauselli@gmail.com",
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
201 "http://nelopauselli.blogspot.com", null);
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
202 personaId = r.Id;
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
203 }
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
204
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
205 using (_requestEmulator.Invoke())
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
206 {
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
207 var persona = _personaRepository.Get(personaId);
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
208 Assert.IsNotNull(persona);
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
209 _personaService.Delete(personaId);
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
210 }
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
211 using (_requestEmulator.Invoke())
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
212 {
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
213 var persona = _personaRepository.Get(personaId);
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
214 Assert.IsNull(persona);
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
215 }
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents: 219
diff changeset
216 }
255
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
217
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
218 [Test]
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
219 public void GetAllPersonaSortByName()
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
220 {
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
221 using (_requestEmulator.Invoke())
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
222 {
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
223 CreatePersona("Pablo Morales", "pablomorales", "pablomorales@gmail.com",
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
224 "http://pablomorales.blogspot.com",
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
225 new[] {Roles.Usuario});
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
226 }
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
227
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
228 using (_requestEmulator.Invoke())
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
229 {
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
230 CreatePersona("Nelo Pauselli", "nelopauselli", "nelopauselli@gmail.com",
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
231 "http://nelopauselli.blogspot.com",
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
232 null);
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
233 }
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
234
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
235 using (_requestEmulator.Invoke())
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
236 {
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
237 CreatePersona("Jorge Gamba", "jorgegamba", "jorgegamba@gmail.com",
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
238 "http://nelopauselli.blogspot.com",
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
239 null);
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
240 }
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
241
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
242 using (_requestEmulator.Invoke())
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
243 {
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
244 var personas = _personaRepository.GetAll();
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
245 var primeraPersona = personas[0];
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
246 var segundaPersona = personas[1];
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
247 var terceraPersona = personas[2];
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
248
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
249 Assert.AreEqual("Jorge Gamba", primeraPersona.Nombre);
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
250 Assert.AreEqual("Nelo Pauselli", segundaPersona.Nombre);
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
251 Assert.AreEqual("Pablo Morales", terceraPersona.Nombre);
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
252 }
50442a103281 Ticket #190: Que el listado de Personas venga ordenado por Nombre.
juanjose.montesdeocaarbos
parents: 222
diff changeset
253 }
178
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
254 }
33e57fd1a6c9 Roles: en dominio y autoregistración
nelopauselli
parents:
diff changeset
255 }