Feedback

C# - Workaround für [ExpectedException(typeof(ContractException)]

Veröffentlicht von am 13.10.2009
(2 Bewertungen)
Schreibt man Unit Tests für Methoden die mit CodeContracts ausgestattet sind ( http://msdn.microsoft.com/en-us/devlabs/dd491992.aspx ), kann man das Attribut [ExpectedException(typeof(ContractException)] nicht verwenden weil ContractException internal ist. Dieses Snippet stellt eine funktionierende Alternative dar.
Weitere Infos unter
http://dotnet-forum.de/forums/t/1916.aspx
      [TestMethod]      
      public void $GiveMeSomeName$()
      {
         var target = new $ClassUnderTest()$;         
         try
         {
            target.$MethodUnderTest()$;
         }
         catch(Exception exc)
         {            
            Assert.IsTrue(exc.GetType().Name == "ContractException");
            return;
         }
         Assert.Fail("ContractException has not been thrown.");
      }

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!