First Unit Tests! ASP.NET MVC with Repositories causing errors -


i new unit testing, starting on first set of tests today. using library justmock telerik. though unit testing information good. having bit of trouble interface service passes through method. below membershipcontroller.register(model) method...

    [captchavalidator]     [httppost]     public actionresult register(models.membership.registration model)     {         // mesure, truncate spaces given          system.text.regularexpressions.regex.replace(model.email, @"\s", "");          if (modelstate.isvalid)         {             // attempt register user , return applicable status has             // result.             var createstatus = membershipservice.registermember(model.email, model.password);              // if member able created successfully, log them in , begin             // authentication portion of registration, otherwise, display registration             // errors , return view.             if (createstatus == membership.membercreatestatus.success)             {                 formsauthentication.signin(model.email, false /* createpersistentcookie */);                 return redirecttoaction("success");             }             else             {                 modelstate.addmodelerror("", membership.validator.errorcodetostring(createstatus));             }         }          // if got far, failed, redisplay form         return view(model);     } 

and here paltry test trying run...

    [testmethod]     public void register_post_returnsredirectonsuccess()     {         // arrange         var controller = mock.create<web.controllers.membershipcontroller>();          var repository = mock.create<membership.imembershipservice>();          mock.arrange(() => repository.registermember("acceptible@email.com", "acceptiblepassword")).returns(membership.membercreatestatus.success);          // model         var model = new web.models.membership.registration         {             email = "acceptible@email.com",             password = "acceptiblepassword",             confirmpassword = "acceptiblepassword"         };          // act         var result = controller.register(model);          // assert         assert.isinstanceoftype(result, typeof(redirecttorouteresult));      } 

the test fails because membershipservice resolving null. i'm not sure here. first forray unit testing aspect of asp.net mvc. can give me advice?

i using ninject inject imembershipservice through constructor. implemented class membershipservice. code runs fine when run it, unit tests fail.

i don't see passing repository anywhere controller. have imembershipservice parameter in controller's constructor can pass in when needed or use mvc's service locator grab ninject instance , pass in.

:)


Comments

Popular posts from this blog

apache - Add omitted ? to URLs -

redirect - bbPress Forum - rewrite to wwww.mysite prohibits login -

php - How can I stop spam on my custom forum/blog? -