public void ReturnFragmentType_ExplicitlyImplementedInterfaceMethod_ReturnsFragment() { Method sample = TestHelper.GetSample <ClassWithExplicitlyDeclaredMethodReturningFragment> ("InjectionCop.IntegrationTests.Utilities.InterfaceWithReturnFragment.MethodWithReturnFragment"); var returnFragment = FragmentUtility.ReturnFragmentType(sample); Assert.That(returnFragment, Is.EqualTo(Fragment.CreateNamed("ReturnFragmentType"))); }
public void ReturnFragmentType_ImplementedInterfaceMethod_ReturnsFragment() { Method sample = TestHelper.GetSample <ClassWithMethodReturningFragment> ("MethodWithReturnFragment"); var returnFragment = FragmentUtility.ReturnFragmentType(sample); Assert.That(returnFragment, Is.EqualTo(Fragment.CreateNamed("ReturnFragmentType"))); }
public void ReturnFragmentType_MethodWithAnnotatedReturn_ReturnsNull() { Method sample = TestHelper.GetSample <FragmentUtilitySample> ("ReturnFragment"); var returnFragment = FragmentUtility.ReturnFragmentType(sample); Assert.That(returnFragment, Is.EqualTo(Fragment.CreateNamed("ReturnFragmentType"))); }
public void ReturnFragmentType_NonAnnotatedMethod_ReturnsEmptyFragment() { Method sample = TestHelper.GetSample <FragmentUtilitySample> ("NoReturnFragment"); var returnFragment = FragmentUtility.ReturnFragmentType(sample); Assert.That(returnFragment, Is.EqualTo(Fragment.CreateEmpty())); }
private Fragment GetDelegateTypesReturnFragment(DelegateNode sourceDelegateType) { var returnFragment = Fragment.CreateEmpty(); foreach (Member member in sourceDelegateType.Members) { if (member.Name.Name == "Invoke") { Method invoke = (Method)member; returnFragment = FragmentUtility.ReturnFragmentType(invoke); } } return(returnFragment); }
public MethodGraphBuilder(Method method, IBlacklistManager blacklistManager, IProblemPipe problemPipe) { ArgumentUtility.CheckNotNull("method", method); _blacklistManager = ArgumentUtility.CheckNotNull("blacklistManager", blacklistManager); _problemPipe = ArgumentUtility.CheckNotNull("problemPipe", problemPipe); bool isInterfaceMethod = method.Body.Statements == null; if (!isInterfaceMethod) { _methodBody = method.Body; _referenceAndOutConditions = ReferenceAndOutConditions(method); _result = null; } else { _result = new MethodGraph(-1, new Dictionary <int, BasicBlock>()); } _returnFragment = FragmentUtility.ReturnFragmentType(method); }