2016-10-05 11 views
0

は、だから私は、これらのnugetパッケージがインストールされている: このMSpecテストでNullReferenceExceptionが発生するのはなぜですか?

Nuget

は、これらの文献で最高潮に達する:

References

私はNCrunchを使用しています。このクラスでは

namespace GlobPatternMatching.Tests 
{ 
    using FluentAssertions; 

    using Machine.Fakes; 
    using Machine.Specifications; 

    [Subject(typeof(GlobMatching))] 
    public class When_Given_Literal : WithSubject<GlobMatching> 
    { 
     private static string pattern = "path"; 

     private static string[] result; 

     private Establish context =>() => 
      { 
       pattern = "path"; 
      }; 

     private Because of =>() => result = Subject.GetGlobs(pattern); 

     private It should_return_path_in_the_array =() => 
      { 
       result[0].Should().Be("path"); 
      }; 
    } 
} 

:私は、このスペックを持ってまっすぐ

namespace GlobPatternMatching 
{ 
    using System; 

    public class GlobMatching 
    { 
     public string[] GetGlobs(string pattern) 
     { 
      return pattern.Split(new[] { '/' }, StringSplitOptions.RemoveEmptyEntries); 
     } 
    } 
} 

TDD'ingは、私がnull参照の例外を取得します。私がデバッグするとき、私はこの方法を踏むことができず、すべてのスペッククラスのフィールドはヌルです.....

私は何かが欠けているようには感じませんが、もしあなたが私がここで間違っていたものを見て、考えてみると、それは良いことになるでしょう。私は、あなたが問題が何であったか信じられないでしょう...

答えて

2

を最新のVS2015、NCrunchなどを使用しています...

private Establish context =>() => 
{ 
    pattern = "path"; 
}; 

private Because of =>() => result = Subject.GetGlobs(pattern); 

私は=>代わりの=を入れてきました....

// ----------------------\/------- 
private Establish context =() => 
{ 
    pattern = "path"; 
}; 

// ----------------\/------------  
private Because of =() => result = Subject.GetGlobs(pattern); 
関連する問題