Produced by Araxis Merge on 4/7/2019 7:13:55 PM Eastern Daylight Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.
# | Location | File | Last Modified |
---|---|---|---|
1 | MHLTH_CLOZ_MOD _SRC.zip\MHLTH_CLOZ_MOD _SRC\Releases\ClozMod_Build5_.zip\Va.Gov.Nccc.Registry.Tests\Account | AccountControllerTests.cs | Mon Mar 4 20:33:52 2019 UTC |
2 | MHLTH_CLOZ_MOD _SRC.zip\MHLTH_CLOZ_MOD _SRC\Releases\ClozMod_Build5_.zip\Va.Gov.Nccc.Registry.Tests\Account | AccountControllerTests.cs | Thu Apr 4 19:05:19 2019 UTC |
Description | Between Files 1 and 2 |
|
---|---|---|
Text Blocks | Lines | |
Unchanged | 26 | 1430 |
Changed | 25 | 50 |
Inserted | 0 | 0 |
Removed | 0 | 0 |
Whitespace | |
---|---|
Character case | Differences in character case are significant |
Line endings | Differences in line endings (CR and LF characters) are ignored |
CR/LF characters | Not shown in the comparison detail |
No regular expressions were active.
1 | using Micr osoft.Visu alStudio.T estTools.U nitTesting ; | |
2 | using Syst em.Threadi ng.Tasks; | |
3 | using Syst em.Web.Mvc ; | |
4 | using Va.G ov.Nccc.Re gistry.Con trollers; | |
5 | using Va.G ov.Nccc.Re gistry.Mod els.Home; | |
6 | using Syst em.Diagnos tics.CodeA nalysis; | |
7 | using Moq; | |
8 | using Va.G ov.Nccc.Da ta.Common. Repository ; | |
9 | using Va.G ov.Nccc.Da ta.Common. RegistryUs ers; | |
10 | using Va.G ov.Nccc.Da ta.Common. Results; | |
11 | using Va.G ov.Nccc.Da ta.Common. Prescriber s; | |
12 | using Va.G ov.Nccc.Da ta.Common. EmailAddre sses; | |
13 | using Va.G ov.Nccc.Re gistry.Mod els.Common ; | |
14 | using Va.G ov.Nccc.Da ta.Common. PhoneNumbe rs; | |
15 | using Va.G ov.Nccc.Da ta.Common. Facilities ; | |
16 | using Syst em.Collect ions.Gener ic; | |
17 | ||
18 | namespace Va.Gov.Ncc c.Registry .Tests.Acc ount | |
19 | { | |
20 | [Exclu deFromCode Coverage] | |
21 | [TestC lass()] | |
22 | [TestC ategory("A ccount")] | |
23 | public class Acc ountContro llerTests | |
24 | { | |
25 | Ac countContr oller cont rollerSyst emUnderTes t; | |
26 | Lo ginViewMod el modelTo BePassedTo SystemUnde rTest; | |
27 | Mo ck<IReposi tory> mock NcccReposi tory; | |
28 | Mo ck<IRegist ryUsersRep ository> m ockIRegist ryUserRepo sitory; | |
29 | Mo ck<IPrescr ibersRepos itory> moc kIPrescrib erReposito ry; | |
30 | ||
31 | [T estInitial ize] | |
32 | pu blic void TestInit() | |
33 | { | |
34 | // Mock out our us er reposit ory (a fak e concrete instance) | |
35 | mockIReg istryUserR epository = new Mock <IRegistry UsersRepos itory>(Moc kBehavior. Loose); | |
36 | mockIPre scriberRep ository = new Mock<I Prescriber sRepositor y>(MockBeh avior.Loos e); | |
37 | ||
38 | // Mock out our la rger repos itory (tha t collects all the r epositorie s) | |
39 | mockNccc Repository = new Moc k<IReposit ory>(MockB ehavior.Lo ose); | |
40 | ||
41 | // Set u p the meth od for the larger re pository t hat calls the smalle r reposito ry | |
42 | mockNccc Repository .Setup(x = > x.Users) .Returns(m ockIRegist ryUserRepo sitory.Obj ect); | |
43 | mockNccc Repository .Setup(x = > x.Prescr ibers).Ret urns(mockI Prescriber Repository .Object); | |
44 | ||
45 | // Creat e a concre te instanc e of the s ystem we w ill be tes ting | |
46 | controll erSystemUn derTest = new Accoun tControlle r(mockNccc Repository .Object); | |
47 | ||
48 | // Pass a concrete ViewModel to the co ntroller | |
49 | modelToB ePassedToS ystemUnder Test = new LoginView Model(); | |
50 | } | |
51 | ||
52 | [T estMethod( )] | |
53 | pu blic async Task Acco untControl lerUserSig nIn() | |
54 | { | |
55 | // Arran ge | |
56 | // Happe ns mostly in TestIni t | |
57 | ||
58 | // Act | |
59 | ActionRe sult resul t = await controller SystemUnde rTest.Sign In(modelTo BePassedTo SystemUnde rTest); | |
60 | ||
61 | // Asser t | |
62 | Assert.I sNotNull(r esult); | |
63 | Assert.I sInstanceO fType(resu lt, typeof (ActionRes ult)); | |
64 | Assert.I sInstanceO fType(resu lt, typeof (RedirectT oRouteResu lt)); | |
65 | ||
66 | } | |
67 | ||
68 | [T estMethod( )] | |
69 | pu blic async Task Acco untControl lerFacilit ySignIn() | |
70 | { | |
71 | // Arran ge | |
72 | // Happe ns mostly in TestIni t | |
73 | ||
74 | // Act | |
75 | ActionRe sult resul t = await controller SystemUnde rTest.Faci litySignIn (modelToBe PassedToSy stemUnderT est); | |
76 | ||
77 | // Asser t | |
78 | Assert.I sNotNull(r esult); | |
79 | Assert.I sInstanceO fType(resu lt, typeof (ActionRes ult)); | |
80 | Assert.I sInstanceO fType(resu lt, typeof (RedirectT oRouteResu lt)); | |
81 | ||
82 | } | |
83 | ||
84 | [T estMethod( )] | |
85 | pu blic async Task Regi sterUser_M odelStateI nvalid() | |
86 | { | |
87 | // Arran ge | |
88 | Register ViewModel registerVi ewModel = new Regist erViewMode l | |
89 | { | |
90 | }; | |
91 | ||
92 | controll erSystemUn derTest.Mo delState.A ddModelErr or("EmailA ddress", " Email is r equired"); | |
93 | ||
94 | // Act | |
95 | ActionRe sult resul t = await controller SystemUnde rTest.Regi sterUser(r egisterVie wModel); | |
96 | ||
97 | // Asser t | |
98 | Assert.I sNotNull(r esult); | |
99 | Assert.I sInstanceO fType(resu lt, typeof (ViewResul t)); | |
100 | var view Result = r esult as V iewResult; | |
101 | Assert.A reEqual("R egister", viewResult .ViewName) ; | |
102 | } | |
103 | ||
104 | [T estMethod( )] | |
105 | pu blic async Task Regi sterUser_U serFound_A ctive() | |
106 | { | |
107 | // Arran ge | |
108 | mockIReg istryUserR epository. Setup(x => x.AnyWith Email(It.I sAny<strin g>())).Ret urnsAsync( new ItemRe sult<Regis tryUser> | |
109 | { | |
110 | Item = new Reg istryUser | |
111 | { | |
112 | EmailAddre ss = " PII ", | |
113 | RegistryUs erStatus = new Regis tryUserSta tus { Valu e = Regist ryUserStat usValue.Ac tive }, | |
114 | Active = t rue | |
115 | } | |
116 | }); | |
117 | ||
118 | Register ViewModel registerVi ewModel = new Regist erViewMode l | |
119 | { | |
120 | EmailAddre ss = " PII " | |
121 | }; | |
122 | ||
123 | // Act | |
124 | ActionRe sult resul t = await controller SystemUnde rTest.Regi sterUser(r egisterVie wModel); | |
125 | Redirect ToRouteRes ult redire ctResult = result as RedirectT oRouteResu lt; | |
126 | ||
127 | // Asser t | |
128 | Assert.I sNotNull(r esult); | |
129 | Assert.I sInstanceO fType(resu lt, typeof (ActionRes ult)); | |
130 | Assert.I sInstanceO fType(resu lt, typeof (RedirectT oRouteResu lt)); | |
131 | Assert.A reEqual(re directResu lt.RouteVa lues["Acti on"], "Sig nIn"); | |
132 | } | |
133 | ||
134 | [T estMethod( )] | |
135 | pu blic async Task Regi sterUser_U serFound_I nActive() | |
136 | { | |
137 | // Arran ge | |
138 | mockIReg istryUserR epository. Setup(x => x.AnyWith Email(It.I sAny<strin g>())).Ret urnsAsync( new ItemRe sult<Regis tryUser> | |
139 | { | |
140 | Item = new Reg istryUser | |
141 | { | |
142 | EmailAddre ss = " PII ", | |
143 | RegistryUs erStatus = new Regis tryUserSta tus { Valu e = Regist ryUserStat usValue.In active }, | |
144 | Active = f alse | |
145 | } | |
146 | }); | |
147 | ||
148 | Register ViewModel registerVi ewModel = new Regist erViewMode l | |
149 | { | |
150 | EmailAddre ss = " PII " | |
151 | }; | |
152 | ||
153 | // Act | |
154 | ActionRe sult resul t = await controller SystemUnde rTest.Regi sterUser(r egisterVie wModel); | |
155 | Redirect ToRouteRes ult redire ctResult = result as RedirectT oRouteResu lt; | |
156 | ||
157 | // Asser t | |
158 | Assert.I sNotNull(r esult); | |
159 | Assert.I sInstanceO fType(resu lt, typeof (ActionRes ult)); | |
160 | Assert.I sInstanceO fType(resu lt, typeof (RedirectT oRouteResu lt)); | |
161 | Assert.A reEqual(re directResu lt.RouteVa lues["Acti on"], "Sig nIn"); | |
162 | } | |
163 | ||
164 | [T estMethod( )] | |
165 | pu blic async Task Regi sterUser_U serNotFoun d_EmailAdd ressFound_ BelongsToA Prescriber _CreateUse rSuccess() | |
166 | { | |
167 | // Arran ge | |
168 | mockIReg istryUserR epository. Setup(x => x.AnyWith Email(It.I sAny<strin g>())).Ret urnsAsync( new ItemRe sult<Regis tryUser> | |
169 | { | |
170 | Item = null | |
171 | }); | |
172 | ||
173 | mockIPre scriberRep ository.Se tup(x => x .GetEmailA ddress(It. IsAny<stri ng>())).Re turns(new ItemResult <EmailAddr ess> | |
174 | { | |
175 | Item = new Ema ilAddress | |
176 | { | |
177 | Address = " PII ", | |
178 | Prescriber = new Pre scriber | |
179 | { | |
180 | } | |
181 | } | |
182 | }); | |
183 | ||
184 | mockIReg istryUserR epository. Setup(x => x.Registe rUser(It.I sAny<Regis tryUser>() )).Returns Async(new ItemResult <RegistryU ser> | |
185 | { | |
186 | Item = new Reg istryUser | |
187 | { | |
188 | EmailAddre ss = " PII ", | |
189 | RegistryUs erStatus = new Regis tryUserSta tus { Valu e = Regist ryUserStat usValue.Ne w }, | |
190 | Active = f alse | |
191 | }, | |
192 | Succ ess = true | |
193 | }); | |
194 | ||
195 | Register ViewModel registerVi ewModel = new Regist erViewMode l | |
196 | { | |
197 | Firs tName = "T est", | |
198 | Last Name = "Us er", | |
199 | EmailAddre ss = " PII ", | |
200 | Pres criberOpti on = Presc riberOptio nValue.Pre scriber, | |
201 | Phon eNumber = new PhoneN umberViewM odel | |
202 | { | |
203 | PhoneNumbe rType = Ph oneNumberT ypeValue.H ome, | |
204 | Number = " 0001234567 ", | |
205 | Extension = "123" | |
206 | } | |
207 | }; | |
208 | ||
209 | // Act | |
210 | ActionRe sult resul t = await controller SystemUnde rTest.Regi sterUser(r egisterVie wModel); | |
211 | Redirect ToRouteRes ult redire ctResult = result as RedirectT oRouteResu lt; | |
212 | ||
213 | // Asser t | |
214 | Assert.I sNotNull(r esult); | |
215 | Assert.I sInstanceO fType(resu lt, typeof (ActionRes ult)); | |
216 | Assert.I sInstanceO fType(resu lt, typeof (RedirectT oRouteResu lt)); | |
217 | Assert.A reEqual(re directResu lt.RouteVa lues["Acti on"], "Sig nIn"); | |
218 | } | |
219 | ||
220 | [T estMethod( )] | |
221 | pu blic async Task Regi sterUser_U serNotFoun d_EmailAdd ressFound_ BelongsToA Prescriber _CreateUse rFailed() | |
222 | { | |
223 | // Arran ge | |
224 | mockIReg istryUserR epository. Setup(x => x.AnyWith Email(It.I sAny<strin g>())).Ret urnsAsync( new ItemRe sult<Regis tryUser> | |
225 | { | |
226 | Item = null | |
227 | }); | |
228 | ||
229 | mockIPre scriberRep ository.Se tup(x => x .GetEmailA ddress(It. IsAny<stri ng>())).Re turns(new ItemResult <EmailAddr ess> | |
230 | { | |
231 | Item = new Ema ilAddress | |
232 | { | |
233 | Address = " PII ", | |
234 | Prescriber = new Pre scriber | |
235 | { | |
236 | } | |
237 | } | |
238 | }); | |
239 | ||
240 | mockIReg istryUserR epository. Setup(x => x.Registe rUser(It.I sAny<Regis tryUser>() )).Returns Async(new ItemResult <RegistryU ser> | |
241 | { | |
242 | Item = new Reg istryUser | |
243 | { | |
244 | EmailAddre ss = " PII ", | |
245 | RegistryUs erStatus = new Regis tryUserSta tus { Valu e = Regist ryUserStat usValue.Ne w }, | |
246 | Active = f alse | |
247 | }, | |
248 | Succ ess = fals e | |
249 | }); | |
250 | ||
251 | Register ViewModel registerVi ewModel = new Regist erViewMode l | |
252 | { | |
253 | Firs tName = "T est", | |
254 | Last Name = "Us er", | |
255 | EmailAddre ss = " PII ", | |
256 | Pres criberOpti on = Presc riberOptio nValue.Pre scriber, | |
257 | Phon eNumber = new PhoneN umberViewM odel | |
258 | { | |
259 | PhoneNumbe rType = Ph oneNumberT ypeValue.H ome, | |
260 | Number = " 0001234567 ", | |
261 | Extension = "123" | |
262 | } | |
263 | }; | |
264 | ||
265 | // Act | |
266 | ActionRe sult resul t = await controller SystemUnde rTest.Regi sterUser(r egisterVie wModel); | |
267 | Redirect ToRouteRes ult redire ctResult = result as RedirectT oRouteResu lt; | |
268 | ||
269 | // Asser t | |
270 | Assert.I sNotNull(r esult); | |
271 | Assert.I sInstanceO fType(resu lt, typeof (ActionRes ult)); | |
272 | Assert.I sInstanceO fType(resu lt, typeof (RedirectT oRouteResu lt)); | |
273 | Assert.A reEqual(re directResu lt.RouteVa lues["Acti on"], "Sig nIn"); | |
274 | } | |
275 | ||
276 | [T estMethod( )] | |
277 | pu blic async Task Regi sterUser_U serNotFoun d_EmailAdd ressNotFou nd_Prescri berOptionP rescriber_ CreateUser Success() | |
278 | { | |
279 | // Arran ge | |
280 | mockIReg istryUserR epository. Setup(x => x.AnyWith Email(It.I sAny<strin g>())).Ret urnsAsync( new ItemRe sult<Regis tryUser> | |
281 | { | |
282 | Item = null | |
283 | }); | |
284 | ||
285 | mockIPre scriberRep ository.Se tup(x => x .GetEmailA ddress(It. IsAny<stri ng>())).Re turns(new ItemResult <EmailAddr ess> | |
286 | { | |
287 | Item = null | |
288 | }); | |
289 | ||
290 | mockIReg istryUserR epository. Setup(x => x.Registe rUser(It.I sAny<Regis tryUser>() )).Returns Async(new ItemResult <RegistryU ser> | |
291 | { | |
292 | Item = new Reg istryUser | |
293 | { | |
294 | EmailAddre ss = " PII ", | |
295 | RegistryUs erStatus = new Regis tryUserSta tus { Valu e = Regist ryUserStat usValue.Ne w }, | |
296 | Active = f alse | |
297 | }, | |
298 | Succ ess = true | |
299 | }); | |
300 | ||
301 | Register ViewModel registerVi ewModel = new Regist erViewMode l | |
302 | { | |
303 | Firs tName = "T est", | |
304 | Last Name = "Us er", | |
305 | EmailAddre ss = " PII ", | |
306 | Pres criberOpti on = Presc riberOptio nValue.Pre scriber, | |
307 | Phon eNumber = new PhoneN umberViewM odel | |
308 | { | |
309 | PhoneNumbe rType = Ph oneNumberT ypeValue.H ome, | |
310 | Number = " 0001234567 ", | |
311 | Extension = "123" | |
312 | } | |
313 | }; | |
314 | ||
315 | // Act | |
316 | ActionRe sult resul t = await controller SystemUnde rTest.Regi sterUser(r egisterVie wModel); | |
317 | ||
318 | // Asser t | |
319 | Assert.I sNotNull(r esult); | |
320 | Assert.I sInstanceO fType(resu lt, typeof (ViewResul t)); | |
321 | var view Result = r esult as V iewResult; | |
322 | Assert.A reEqual("R egister", viewResult .ViewName) ; | |
323 | Assert.I sInstanceO fType(view Result.Mod el, typeof (RegisterV iewModel)) ; | |
324 | var view ResultMode l = viewRe sult.Model as Regist erViewMode l; | |
325 | Assert.A reEqual(vi ewResultMo del.Curren tTab, 2); | |
326 | } | |
327 | ||
328 | [T estMethod( )] | |
329 | pu blic async Task Regi sterUser_U serNotFoun d_EmailAdd ressNotFou nd_Prescri berOptionP rescriber_ CreateUser Failed() | |
330 | { | |
331 | // Arran ge | |
332 | mockIReg istryUserR epository. Setup(x => x.AnyWith Email(It.I sAny<strin g>())).Ret urnsAsync( new ItemRe sult<Regis tryUser> | |
333 | { | |
334 | Item = null | |
335 | }); | |
336 | ||
337 | mockIPre scriberRep ository.Se tup(x => x .GetEmailA ddress(It. IsAny<stri ng>())).Re turns(new ItemResult <EmailAddr ess> | |
338 | { | |
339 | Item = null | |
340 | }); | |
341 | ||
342 | mockIReg istryUserR epository. Setup(x => x.Registe rUser(It.I sAny<Regis tryUser>() )).Returns Async(new ItemResult <RegistryU ser> | |
343 | { | |
344 | Item = new Reg istryUser | |
345 | { | |
346 | EmailAddre ss = " PII ", | |
347 | RegistryUs erStatus = new Regis tryUserSta tus { Valu e = Regist ryUserStat usValue.Ne w }, | |
348 | Active = f alse | |
349 | }, | |
350 | Succ ess = fals e | |
351 | }); | |
352 | ||
353 | Register ViewModel registerVi ewModel = new Regist erViewMode l | |
354 | { | |
355 | Firs tName = "T est", | |
356 | Last Name = "Us er", | |
357 | EmailAddre ss = " PII ", | |
358 | Pres criberOpti on = Presc riberOptio nValue.Pre scriber, | |
359 | Phon eNumber = new PhoneN umberViewM odel | |
360 | { | |
361 | PhoneNumbe rType = Ph oneNumberT ypeValue.H ome, | |
362 | Number = " 0001234567 ", | |
363 | Extension = "123" | |
364 | } | |
365 | }; | |
366 | ||
367 | // Act | |
368 | ActionRe sult resul t = await controller SystemUnde rTest.Regi sterUser(r egisterVie wModel); | |
369 | Redirect ToRouteRes ult redire ctResult = result as RedirectT oRouteResu lt; | |
370 | ||
371 | // Asser t | |
372 | Assert.I sNotNull(r esult); | |
373 | Assert.I sInstanceO fType(resu lt, typeof (ActionRes ult)); | |
374 | Assert.I sInstanceO fType(resu lt, typeof (RedirectT oRouteResu lt)); | |
375 | Assert.A reEqual(re directResu lt.RouteVa lues["Acti on"], "Sig nIn"); | |
376 | } | |
377 | ||
378 | [T estMethod( )] | |
379 | pu blic async Task Regi sterUser_U serNotFoun d_EmailAdd ressNotFou nd_Prescri berOptionN onPrescrib er_Registe rOptionNcc c_CreateUs erSuccess( ) | |
380 | { | |
381 | // Arran ge | |
382 | mockIReg istryUserR epository. Setup(x => x.AnyWith Email(It.I sAny<strin g>())).Ret urnsAsync( new ItemRe sult<Regis tryUser> | |
383 | { | |
384 | Item = null | |
385 | }); | |
386 | ||
387 | mockIPre scriberRep ository.Se tup(x => x .GetEmailA ddress(It. IsAny<stri ng>())).Re turns(new ItemResult <EmailAddr ess> | |
388 | { | |
389 | Item = null | |
390 | }); | |
391 | ||
392 | mockIReg istryUserR epository. Setup(x => x.Registe rUser(It.I sAny<Regis tryUser>() )).Returns Async(new ItemResult <RegistryU ser> | |
393 | { | |
394 | Item = new Reg istryUser | |
395 | { | |
396 | EmailAddre ss = " PII ", | |
397 | RegistryUs erStatus = new Regis tryUserSta tus { Valu e = Regist ryUserStat usValue.Ne w }, | |
398 | Active = t rue | |
399 | }, | |
400 | Succ ess = true | |
401 | }); | |
402 | ||
403 | Register ViewModel registerVi ewModel = new Regist erViewMode l | |
404 | { | |
405 | Firs tName = "T est", | |
406 | Last Name = "Us er", | |
407 | EmailAddre ss = " PII ", | |
408 | Pres criberOpti on = Presc riberOptio nValue.Non Prescriber , | |
409 | Regi sterOption = Registe rOptionVal ue.Nccc, | |
410 | Phon eNumber = new PhoneN umberViewM odel | |
411 | { | |
412 | PhoneNumbe rType = Ph oneNumberT ypeValue.H ome, | |
413 | Number = " 0001234567 ", | |
414 | Extension = "123" | |
415 | } | |
416 | }; | |
417 | ||
418 | // Act | |
419 | ActionRe sult resul t = await controller SystemUnde rTest.Regi sterUser(r egisterVie wModel); | |
420 | Redirect ToRouteRes ult redire ctResult = result as RedirectT oRouteResu lt; | |
421 | ||
422 | // Asser t | |
423 | Assert.I sNotNull(r esult); | |
424 | Assert.I sInstanceO fType(resu lt, typeof (ActionRes ult)); | |
425 | Assert.I sInstanceO fType(resu lt, typeof (RedirectT oRouteResu lt)); | |
426 | Assert.A reEqual(re directResu lt.RouteVa lues["Acti on"], "Sig nIn"); | |
427 | } | |
428 | ||
429 | [T estMethod( )] | |
430 | pu blic async Task Regi sterUser_U serNotFoun d_EmailAdd ressNotFou nd_Prescri berOptionN onPrescrib er_Registe rOptionNcc c_CreateUs erFailed() | |
431 | { | |
432 | // Arran ge | |
433 | mockIReg istryUserR epository. Setup(x => x.AnyWith Email(It.I sAny<strin g>())).Ret urnsAsync( new ItemRe sult<Regis tryUser> | |
434 | { | |
435 | Item = null | |
436 | }); | |
437 | ||
438 | mockIPre scriberRep ository.Se tup(x => x .GetEmailA ddress(It. IsAny<stri ng>())).Re turns(new ItemResult <EmailAddr ess> | |
439 | { | |
440 | Item = null | |
441 | }); | |
442 | ||
443 | mockIReg istryUserR epository. Setup(x => x.Registe rUser(It.I sAny<Regis tryUser>() )).Returns Async(new ItemResult <RegistryU ser> | |
444 | { | |
445 | Item = new Reg istryUser | |
446 | { | |
447 | EmailAddre ss = " PII ", | |
448 | RegistryUs erStatus = new Regis tryUserSta tus { Valu e = Regist ryUserStat usValue.Ne w }, | |
449 | Active = t rue | |
450 | }, | |
451 | Succ ess = fals e | |
452 | }); | |
453 | ||
454 | Register ViewModel registerVi ewModel = new Regist erViewMode l | |
455 | { | |
456 | Firs tName = "T est", | |
457 | Last Name = "Us er", | |
458 | EmailAddre ss = " PII ", | |
459 | Pres criberOpti on = Presc riberOptio nValue.Non Prescriber , | |
460 | Regi sterOption = Registe rOptionVal ue.Nccc, | |
461 | Phon eNumber = new PhoneN umberViewM odel | |
462 | { | |
463 | PhoneNumbe rType = Ph oneNumberT ypeValue.H ome, | |
464 | Number = " 0001234567 ", | |
465 | Extension = "123" | |
466 | } | |
467 | }; | |
468 | ||
469 | // Act | |
470 | ActionRe sult resul t = await controller SystemUnde rTest.Regi sterUser(r egisterVie wModel); | |
471 | Redirect ToRouteRes ult redire ctResult = result as RedirectT oRouteResu lt; | |
472 | ||
473 | // Asser t | |
474 | Assert.I sNotNull(r esult); | |
475 | Assert.I sInstanceO fType(resu lt, typeof (ActionRes ult)); | |
476 | Assert.I sInstanceO fType(resu lt, typeof (RedirectT oRouteResu lt)); | |
477 | Assert.A reEqual(re directResu lt.RouteVa lues["Acti on"], "Sig nIn"); | |
478 | } | |
479 | ||
480 | [T estMethod( )] | |
481 | pu blic async Task Regi sterUser_U serNotFoun d_EmailAdd ressNotFou nd_Prescri berOptionN onPrescrib er_Registe rOptionFac ility_HasR equestedFa cilities_C reateUserS uccess() | |
482 | { | |
483 | // Arran ge | |
484 | mockIReg istryUserR epository. Setup(x => x.AnyWith Email(It.I sAny<strin g>())).Ret urnsAsync( new ItemRe sult<Regis tryUser> | |
485 | { | |
486 | Item = null | |
487 | }); | |
488 | ||
489 | mockIPre scriberRep ository.Se tup(x => x .GetEmailA ddress(It. IsAny<stri ng>())).Re turns(new ItemResult <EmailAddr ess> | |
490 | { | |
491 | Item = null | |
492 | }); | |
493 | ||
494 | mockIReg istryUserR epository. Setup(x => x.Registe rUser(It.I sAny<Regis tryUser>() )).Returns Async(new ItemResult <RegistryU ser> | |
495 | { | |
496 | Item = new Reg istryUser | |
497 | { | |
498 | EmailAddre ss = " PII ", | |
499 | RegistryUs erStatus = new Regis tryUserSta tus { Valu e = Regist ryUserStat usValue.Ne w }, | |
500 | Active = t rue | |
501 | }, | |
502 | Succ ess = true | |
503 | }); | |
504 | ||
505 | Register ViewModel registerVi ewModel = new Regist erViewMode l | |
506 | { | |
507 | Firs tName = "T est", | |
508 | Last Name = "Us er", | |
509 | EmailAddre ss = " PII ", | |
510 | Pres criberOpti on = Presc riberOptio nValue.Non Prescriber , | |
511 | Regi sterOption = Registe rOptionVal ue.Facilit y, | |
512 | Phon eNumber = new PhoneN umberViewM odel | |
513 | { | |
514 | PhoneNumbe rType = Ph oneNumberT ypeValue.H ome, | |
515 | Number = " 0001234567 ", | |
516 | Extension = "123" | |
517 | }, | |
518 | Requ estedFacil ities = ne w List<Fac ility> | |
519 | { | |
520 | new Facili ty | |
521 | { | |
522 | Statio nName = "P arent Faci lity 1", | |
523 | ShortN ame = "PF1 ", | |
524 | Statio nNumber = 100 | |
525 | }, | |
526 | new Facili ty | |
527 | { | |
528 | Statio nName = "P arent Faci lity 2", | |
529 | ShortN ame = "PF2 ", | |
530 | Statio nNumber = 200 | |
531 | } | |
532 | } | |
533 | }; | |
534 | ||
535 | // Act | |
536 | ActionRe sult resul t = await controller SystemUnde rTest.Regi sterUser(r egisterVie wModel); | |
537 | Redirect ToRouteRes ult redire ctResult = result as RedirectT oRouteResu lt; | |
538 | ||
539 | // Asser t | |
540 | Assert.I sNotNull(r esult); | |
541 | Assert.I sInstanceO fType(resu lt, typeof (ActionRes ult)); | |
542 | Assert.I sInstanceO fType(resu lt, typeof (RedirectT oRouteResu lt)); | |
543 | Assert.A reEqual(re directResu lt.RouteVa lues["Acti on"], "Sig nIn"); | |
544 | } | |
545 | ||
546 | [T estMethod( )] | |
547 | pu blic async Task Regi sterUser_U serNotFoun d_EmailAdd ressNotFou nd_Prescri berOptionN onPrescrib er_Registe rOptionFac ility_HasR equestedFa cilities_C reateUserF ailed() | |
548 | { | |
549 | // Arran ge | |
550 | mockIReg istryUserR epository. Setup(x => x.AnyWith Email(It.I sAny<strin g>())).Ret urnsAsync( new ItemRe sult<Regis tryUser> | |
551 | { | |
552 | Item = null | |
553 | }); | |
554 | ||
555 | mockIPre scriberRep ository.Se tup(x => x .GetEmailA ddress(It. IsAny<stri ng>())).Re turns(new ItemResult <EmailAddr ess> | |
556 | { | |
557 | Item = null | |
558 | }); | |
559 | ||
560 | mockIReg istryUserR epository. Setup(x => x.Registe rUser(It.I sAny<Regis tryUser>() )).Returns Async(new ItemResult <RegistryU ser> | |
561 | { | |
562 | Item = new Reg istryUser | |
563 | { | |
564 | EmailAddre ss = " PII ", | |
565 | RegistryUs erStatus = new Regis tryUserSta tus { Valu e = Regist ryUserStat usValue.Ne w }, | |
566 | Active = t rue | |
567 | }, | |
568 | Succ ess = fals e | |
569 | }); | |
570 | ||
571 | Register ViewModel registerVi ewModel = new Regist erViewMode l | |
572 | { | |
573 | Firs tName = "T est", | |
574 | Last Name = "Us er", | |
575 | EmailAddre ss = " PII ", | |
576 | Pres criberOpti on = Presc riberOptio nValue.Non Prescriber , | |
577 | Regi sterOption = Registe rOptionVal ue.Facilit y, | |
578 | Phon eNumber = new PhoneN umberViewM odel | |
579 | { | |
580 | PhoneNumbe rType = Ph oneNumberT ypeValue.H ome, | |
581 | Number = " 0001234567 ", | |
582 | Extension = "123" | |
583 | }, | |
584 | Requ estedFacil ities = ne w List<Fac ility> | |
585 | { | |
586 | new Facili ty | |
587 | { | |
588 | Statio nName = "P arent Faci lity 1", | |
589 | ShortN ame = "PF1 ", | |
590 | Statio nNumber = 100 | |
591 | }, | |
592 | new Facili ty | |
593 | { | |
594 | Statio nName = "P arent Faci lity 2", | |
595 | ShortN ame = "PF2 ", | |
596 | Statio nNumber = 200 | |
597 | } | |
598 | } | |
599 | }; | |
600 | ||
601 | // Act | |
602 | ActionRe sult resul t = await controller SystemUnde rTest.Regi sterUser(r egisterVie wModel); | |
603 | Redirect ToRouteRes ult redire ctResult = result as RedirectT oRouteResu lt; | |
604 | ||
605 | // Asser t | |
606 | Assert.I sNotNull(r esult); | |
607 | Assert.I sInstanceO fType(resu lt, typeof (ActionRes ult)); | |
608 | Assert.I sInstanceO fType(resu lt, typeof (RedirectT oRouteResu lt)); | |
609 | Assert.A reEqual(re directResu lt.RouteVa lues["Acti on"], "Sig nIn"); | |
610 | } | |
611 | ||
612 | [T estMethod( )] | |
613 | pu blic async Task Regi sterUser_U serNotFoun d_EmailAdd ressNotFou nd_Prescri berOptionN onPrescrib er_Registe rOptionFac ility_NoRe questedFac ilities() | |
614 | { | |
615 | // Arran ge | |
616 | mockIReg istryUserR epository. Setup(x => x.AnyWith Email(It.I sAny<strin g>())).Ret urnsAsync( new ItemRe sult<Regis tryUser> | |
617 | { | |
618 | Item = null | |
619 | }); | |
620 | ||
621 | mockIPre scriberRep ository.Se tup(x => x .GetEmailA ddress(It. IsAny<stri ng>())).Re turns(new ItemResult <EmailAddr ess> | |
622 | { | |
623 | Item = null | |
624 | }); | |
625 | ||
626 | Register ViewModel registerVi ewModel = new Regist erViewMode l | |
627 | { | |
628 | Firs tName = "T est", | |
629 | Last Name = "Us er", | |
630 | EmailAddre ss = " PII ", | |
631 | Pres criberOpti on = Presc riberOptio nValue.Non Prescriber , | |
632 | Regi sterOption = Registe rOptionVal ue.Facilit y, | |
633 | Phon eNumber = new PhoneN umberViewM odel | |
634 | { | |
635 | PhoneNumbe rType = Ph oneNumberT ypeValue.H ome, | |
636 | Number = " 0001234567 ", | |
637 | Extension = "123" | |
638 | }, | |
639 | Requ estedFacil ities = nu ll | |
640 | }; | |
641 | ||
642 | // Act | |
643 | ActionRe sult resul t = await controller SystemUnde rTest.Regi sterUser(r egisterVie wModel); | |
644 | ||
645 | // Asser t | |
646 | Assert.I sNotNull(r esult); | |
647 | Assert.I sInstanceO fType(resu lt, typeof (ViewResul t)); | |
648 | var view Result = r esult as V iewResult; | |
649 | Assert.A reEqual("R egister", viewResult .ViewName) ; | |
650 | Assert.I sInstanceO fType(view Result.Mod el, typeof (RegisterV iewModel)) ; | |
651 | var view ResultMode l = viewRe sult.Model as Regist erViewMode l; | |
652 | Assert.A reEqual(vi ewResultMo del.Curren tTab, 3); | |
653 | } | |
654 | ||
655 | [T estMethod( )] | |
656 | pu blic async Task Regi sterUser_U serNotFoun d_EmailAdd ressNotFou nd_Prescri berOptionN onPrescrib er_Registe rOptionNon e() | |
657 | { | |
658 | // Arran ge | |
659 | mockIReg istryUserR epository. Setup(x => x.AnyWith Email(It.I sAny<strin g>())).Ret urnsAsync( new ItemRe sult<Regis tryUser> | |
660 | { | |
661 | Item = null | |
662 | }); | |
663 | ||
664 | mockIPre scriberRep ository.Se tup(x => x .GetEmailA ddress(It. IsAny<stri ng>())).Re turns(new ItemResult <EmailAddr ess> | |
665 | { | |
666 | Item = null | |
667 | }); | |
668 | ||
669 | Register ViewModel registerVi ewModel = new Regist erViewMode l | |
670 | { | |
671 | Firs tName = "T est", | |
672 | Last Name = "Us er", | |
673 | EmailAddre ss = " PII ", | |
674 | Pres criberOpti on = Presc riberOptio nValue.Non Prescriber , | |
675 | Regi sterOption = Registe rOptionVal ue.None, | |
676 | Phon eNumber = new PhoneN umberViewM odel | |
677 | { | |
678 | PhoneNumbe rType = Ph oneNumberT ypeValue.H ome, | |
679 | Number = " 0001234567 ", | |
680 | Extension = "123" | |
681 | }, | |
682 | Requ estedFacil ities = nu ll | |
683 | }; | |
684 | ||
685 | // Act | |
686 | ActionRe sult resul t = await controller SystemUnde rTest.Regi sterUser(r egisterVie wModel); | |
687 | ||
688 | // Asser t | |
689 | Assert.I sNotNull(r esult); | |
690 | Assert.I sInstanceO fType(resu lt, typeof (ViewResul t)); | |
691 | var view Result = r esult as V iewResult; | |
692 | Assert.A reEqual("R egister", viewResult .ViewName) ; | |
693 | Assert.I sInstanceO fType(view Result.Mod el, typeof (RegisterV iewModel)) ; | |
694 | var view ResultMode l = viewRe sult.Model as Regist erViewMode l; | |
695 | Assert.A reEqual(vi ewResultMo del.Curren tTab, 3); | |
696 | } | |
697 | ||
698 | [T estMethod( )] | |
699 | pu blic async Task Regi sterUser_U serNotFoun d_EmailAdd ressNotFou nd_Prescri berOptionN one() | |
700 | { | |
701 | // Arran ge | |
702 | mockIReg istryUserR epository. Setup(x => x.AnyWith Email(It.I sAny<strin g>())).Ret urnsAsync( new ItemRe sult<Regis tryUser> | |
703 | { | |
704 | Item = null | |
705 | }); | |
706 | ||
707 | mockIPre scriberRep ository.Se tup(x => x .GetEmailA ddress(It. IsAny<stri ng>())).Re turns(new ItemResult <EmailAddr ess> | |
708 | { | |
709 | Item = null | |
710 | }); | |
711 | ||
712 | Register ViewModel registerVi ewModel = new Regist erViewMode l | |
713 | { | |
714 | Firs tName = "T est", | |
715 | Last Name = "Us er", | |
716 | EmailAddre ss = " PII ", | |
717 | Pres criberOpti on = Presc riberOptio nValue.Non e, | |
718 | Phon eNumber = new PhoneN umberViewM odel | |
719 | { | |
720 | PhoneNumbe rType = Ph oneNumberT ypeValue.H ome, | |
721 | Number = " 0001234567 ", | |
722 | Extension = "123" | |
723 | }, | |
724 | Requ estedFacil ities = nu ll | |
725 | }; | |
726 | ||
727 | // Act | |
728 | ActionRe sult resul t = await controller SystemUnde rTest.Regi sterUser(r egisterVie wModel); | |
729 | ||
730 | // Asser t | |
731 | Assert.I sNotNull(r esult); | |
732 | Assert.I sInstanceO fType(resu lt, typeof (ViewResul t)); | |
733 | var view Result = r esult as V iewResult; | |
734 | Assert.A reEqual("R egister", viewResult .ViewName) ; | |
735 | Assert.I sInstanceO fType(view Result.Mod el, typeof (RegisterV iewModel)) ; | |
736 | var view ResultMode l = viewRe sult.Model as Regist erViewMode l; | |
737 | Assert.A reEqual(vi ewResultMo del.Curren tTab, 2); | |
738 | } | |
739 | } | |
740 | } |
Araxis Merge (but not the data content of this report) is Copyright © 1993-2016 Araxis Ltd (www.araxis.com). All rights reserved.