annotate Agendas/trunk/src/Agendas.Repositories.Tests/TestsHelper.cs @ 267:1ca7c39ad38b

Se agrega test (en estado Ignore) que muestra que en el repositorio, una Persona con Twitter existente genera excepción.
author juanjose.montesdeocaarbos
date Tue, 25 Oct 2011 23:23:26 -0300
parents 51faeabfb9d9
children bc8dfbde0523
rev   line source
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
1 using System;
235
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents: 222
diff changeset
2 using Agendas.NHibernate;
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
3 using AltNetHispano.Agendas.Domain;
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
4 using AltNetHispano.Agendas.Domain.Repositories;
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
5
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
6 namespace Agendas.Repositories.Tests
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
7 {
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
8 public class TestsHelper
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
9 {
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
10 private readonly IPersonaRepository _repository;
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
11
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
12 public TestsHelper(IPersonaRepository repository)
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
13 {
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
14 _repository = repository;
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
15 }
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
16
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
17 public Guid GetOrCreatePonente(string nombre)
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
18 {
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
19 var persona = _repository.GetByNombre(nombre);
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
20 if (persona == null)
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
21 {
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
22 persona = new Persona(nombre) { Twitter = nombre.Replace(" ", string.Empty).ToLower() };
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
23 _repository.Save(persona);
235
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents: 222
diff changeset
24
237
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 235
diff changeset
25 if (_repository is AltNetHispano.Agendas.Repositories.NHibernate.PersonaRepository)
51faeabfb9d9 Todos los tests en verde quitando al ponente principal
nelopauselli
parents: 235
diff changeset
26 NhHelper.GetSessionFactory().GetCurrentSession().Flush();
222
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
27 }
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
28 return persona.Id;
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
29 }
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
30
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
31 }
68b09c30b0d2 Separando los test de persistencia en un proyecto aparte
nelopauselli
parents:
diff changeset
32 }