2011-12-20 12 views
1

MVCのユニットテストを理解する上で問題があります。私は私のモデルを見てこれは外見だ:MVC 3テストモードとコントロールのユニットテスト

namespace UnifiedLibrary.Models 
{ 
    public class SCPublisherModel 
    { 
     [Display(Name = "Title")] 
     public string Title { get; set; } 

     [DataType(DataType.MultilineText)] 
     [Display(Name = "Description")] 
     public string Description { get; set; } 

     public bool Conform() 
     { 
      if (String.IsNullOrEmpty(Title)) 
       Title = Resources.ULResLocal.Sou.locDefaultTitle; 

      if (String.IsNullOrEmpty(Description)) 
      { 
       Description = Resources.ULResLocal.Sou.locDefaultDesc; 

      } 
      return true; 
     } 

     public bool Validate() 
     { 
      if (String.IsNullOrEmpty(Title)) 
       Title = Resources.ULResLocal.Sou.locDefaultTitle; 

      return true; 
     } 


    } 
} 


    public ActionResult Sou(string productID, string locale, string clienttoken, string Title, string Description) 
     { 
      ProviderID = (int)Providers.SoundCloud; 

      locale = Utilities.SetApplicationLocale(locale); 

      if (String.IsNullOrEmpty(clienttoken)) 
       return RedirectToAction("../Shared/Error"); 

       HttpCookie cookieAuthToken = this.ControllerContext.HttpContext.Request.Cookies[strCookieSoundCloudAuthToken]; 
     if (cookieAuthToken == null) 
      { 
       return RedirectToAction("../Login/LoginSoundCloud", new { productID = productID, locale = locale, clienttoken = clienttoken, 
        Title = Title, Description = Description}); 
      } 

      // create a model for soundcloud and store all known information 
      Models.SCPublisherModel model = new Models.SCPublisherModel(); 
      model.Title = Title; 
      model.Description = Description; 
      model.Conform(); 



      // create a view based on the updated model 
      return View(model); 
     } 

私もこのコントロールをチェックする必要があります。しかし、私はどのようにわからない。私はこの単体テストを使用しましたが、私は誤りがあります。

[TestMethod] 
     public void SoundCloudTest() 
     { 
      // Controllers that rely on App_GlobalResources or App_Local_Resources cannot be unit tested with rewriting these dependencies. 
      var controller = new PublishController(); 
      // Act 
      var SCModelTest = new SCPublisherModel() 
      { 
       Title = "Test 100", 

      }; 

      var result = controller.SoundCloud(SCModelTest) as ViewResult; 


      Assert.AreEqual(result.View, SCModelTest); 

      } 

あなたが記事を知っている場合。あなたは私にそれを提供することができますか? ありがとうございます。

答えて

0

変更

Assert.AreEqual(result.View, SCModelTest);

へ:

Assert.AreEqual(result.Model, SCModelTest);

関連する問題