Mercurial > altnet-hispano
comparison Agendas/trunk/src/Agendas.Tests/Cruds/PatrocinadorCrud.cs @ 137:2d1adbaf0373
CRUD de Patrocinador
author | nelopauselli |
---|---|
date | Thu, 28 Jul 2011 09:26:24 -0300 |
parents | |
children | 62791999ad01 |
comparison
equal
deleted
inserted
replaced
136:462a78196d11 | 137:2d1adbaf0373 |
---|---|
1 using System; | |
2 using System.Drawing; | |
3 using System.IO; | |
4 using System.Linq; | |
5 using AltNetHispano.Agendas.Domain; | |
6 using AltNetHispano.Agendas.Domain.Repositories; | |
7 using NUnit.Framework; | |
8 | |
9 namespace AltNetHispano.Agendas.Tests.Cruds | |
10 { | |
11 public class PatrocinadorCrud | |
12 { | |
13 private readonly IPatrocinadorRepository _patrocinadorRepository; | |
14 private readonly Func<IDisposable> _requestEmulator; | |
15 private byte[] _logo; | |
16 | |
17 public PatrocinadorCrud(Func<IPatrocinadorRepository> createPatrocinadorRepository, Func<IDisposable> requestEmulator) | |
18 { | |
19 _patrocinadorRepository = createPatrocinadorRepository.Invoke(); | |
20 _requestEmulator = requestEmulator; | |
21 } | |
22 | |
23 public Guid Create() | |
24 { | |
25 using (_requestEmulator.Invoke()) | |
26 { | |
27 var patrocinador = new Patrocinador("APRESS"); | |
28 | |
29 var image = Image.FromFile("images/apress.gif"); | |
30 var ms = new MemoryStream(); | |
31 image.Save(ms, image.RawFormat); | |
32 _logo = ms.ToArray(); | |
33 | |
34 patrocinador.Logo = _logo; | |
35 | |
36 _patrocinadorRepository.Save(patrocinador); | |
37 return patrocinador.Id; | |
38 } | |
39 } | |
40 | |
41 public void Read() | |
42 { | |
43 Guid patrocinadorId = Create(); | |
44 | |
45 using (_requestEmulator.Invoke()) | |
46 { | |
47 var patrocinador = _patrocinadorRepository.Get(patrocinadorId); | |
48 | |
49 Assert.IsNotNull(patrocinador); | |
50 Assert.AreEqual("APRESS", patrocinador.Nombre); | |
51 Assert.IsNotNull(patrocinador.Logo); | |
52 Assert.AreEqual(_logo, patrocinador.Logo); | |
53 } | |
54 } | |
55 | |
56 public void Update() | |
57 { | |
58 Guid patrocinadorId = Create(); | |
59 | |
60 using (_requestEmulator.Invoke()) | |
61 { | |
62 var patrocinador = _patrocinadorRepository.Get(patrocinadorId); | |
63 Assert.IsNotNull(patrocinador); | |
64 | |
65 patrocinador.Nombre = "Apress"; | |
66 } | |
67 | |
68 using (_requestEmulator.Invoke()) | |
69 { | |
70 var patrocinador = _patrocinadorRepository.Get(patrocinadorId); | |
71 | |
72 Assert.IsNotNull(patrocinador); | |
73 Assert.AreEqual("Apress", patrocinador.Nombre); | |
74 } | |
75 } | |
76 | |
77 public void Delete() | |
78 { | |
79 Guid patrocinadorId = Create(); | |
80 | |
81 using (_requestEmulator.Invoke()) | |
82 { | |
83 var patrocinador = _patrocinadorRepository.Get(patrocinadorId); | |
84 Assert.IsNotNull(patrocinador); | |
85 | |
86 _patrocinadorRepository.Delete(patrocinador); | |
87 } | |
88 | |
89 using (_requestEmulator.Invoke()) | |
90 { | |
91 var patrocinador = _patrocinadorRepository.Get(patrocinadorId); | |
92 Assert.IsNull(patrocinador); | |
93 } | |
94 } | |
95 } | |
96 } |