Exemplo n.º 1
0
        public List <Interval <T, D> > GetIntervals(D time, StubMode mode)
        {
            Build();

            List <Interval <T, D> > stubedIntervals;

            switch (mode)
            {
            case StubMode.Contains:
                stubedIntervals = head.Stab(time, ContainConstrains.None);
                break;

            case StubMode.ContainsStart:
                stubedIntervals = head.Stab(time, ContainConstrains.IncludeStart);
                break;

            case StubMode.ContainsStartThenEnd:
                stubedIntervals = head.Stab(time, ContainConstrains.IncludeStart);
                if (stubedIntervals.Count == 0)
                {
                    stubedIntervals = head.Stab(time, ContainConstrains.IncludeEnd);
                }
                break;

            default:
                throw new ArgumentException("Invalid StubMode " + mode, "mode");
            }

            return(stubedIntervals);
        }
Exemplo n.º 2
0
 public XElement Render()
 {
     return(new XElement(NodeName,
                         new XAttribute(StubModeName, StubMode.ToString()),
                         new XElement(DescrName, Description),
                         TypeMap.Render(),
                         new XElement(CallsName,
                                      Calls.Select(c => c.Render()).ToArray())));
 }
Exemplo n.º 3
0
        public List <T> Get(D time, StubMode mode)
        {
            List <Interval <T, D> > intervals = GetIntervals(time, mode);
            List <T> result = new List <T>();

            foreach (Interval <T, D> interval in intervals)
            {
                result.Add(interval.Data);
            }
            return(result);
        }
Exemplo n.º 4
0
        public CallInfo FindCall(IMethodInvocation invocationInfo)
        {
            switch (StubMode)
            {
            case StubModeType.MethodName:
                return(FindCallByName(invocationInfo.MethodBase));

            case StubModeType.MethodSignature:
                return(FindCallBySignature(invocationInfo.MethodBase));

            case StubModeType.MethodArguments:
                return(FindCallByArguments(invocationInfo));

            default:
                throw new InvalidOperationException("Unknown StubMode: " + StubMode.ToString());
            }
        }