private Action <string[]> GetFrameworkEqualsAction(TestFrameworkIdentifier testFrameworkIdentifier)
        {
            switch (testFrameworkIdentifier)
            {
            case TestFrameworkIdentifier.MsTest: return(CreateEqualsActionForMsTest());

            case TestFrameworkIdentifier.xUnit: return(CreateEqualsActionForNUnit());

            case TestFrameworkIdentifier.xUnit2: return(CreateEqualsActionForXUnit2());

            case TestFrameworkIdentifier.nUnit: return(CreateEqualsActionForNUnit());

            default:
                throw new ArgumentOutOfRangeException(nameof(testFrameworkIdentifier), testFrameworkIdentifier, null);
            }
        }
 public MultiTestFrameworkAsserter(TestFrameworkIdentifier testFrameworkIdentifier)
 {
     _equalsAction = new Lazy <Action <string[]> >(() => GetFrameworkEqualsAction(testFrameworkIdentifier));
 }