Exemple #1
0
        public Fixture()
        {
            Hub    = Substitute.For <IHub>();
            Tracer = new TransactionTracer(Hub, "foo", "bar")
            {
                IsSampled = true
            };
            _scope = new Scope
            {
                Transaction = Tracer
            };

            var logger = Substitute.For <IDiagnosticLogger>();

            logger.IsEnabled(Arg.Any <SentryLevel>()).Returns(true);

            Options = new SentryOptions
            {
                TracesSampleRate = 1.0,
                Debug            = true,
                DiagnosticLogger = logger
            };
            Hub.GetSpan().ReturnsForAnyArgs(_ => Spans?.LastOrDefault(s => !s.IsFinished) ?? Tracer);
            Hub.CaptureEvent(Arg.Any <SentryEvent>(), Arg.Any <Scope>()).Returns(_ =>
            {
                Spans.LastOrDefault(s => !s.IsFinished)?.Finish(SpanStatus.InternalError);
                return(SentryId.Empty);
            });
            Hub.When(hub => hub.ConfigureScope(Arg.Any <Action <Scope> >()))
            .Do(callback => callback.Arg <Action <Scope> >().Invoke(_scope));
        }
Exemple #2
0
 void DeleteSpan(object parameter)
 {
     if (Spans.Count > 1)
     {
         Spans.Remove(Spans.LastOrDefault());
         SelectedSpan = Spans.LastOrDefault();
     }
 }
Exemple #3
0
        /// <inheritdoc />
        public override TextSpan <CultureSpecificCharacterBufferRange> GetPrecedingText(int textSourceCharacterIndexLimit)
        {
            Debug.WriteLine($"{nameof(GetPrecedingText)}: {textSourceCharacterIndexLimit}");
            var span = Spans.FirstOrDefault(z => z.Value.StartIndex + z.Value.Length == textSourceCharacterIndexLimit);

            if (span != null)
            {
                return(new TextSpan <CultureSpecificCharacterBufferRange>(span.Length, new CultureSpecificCharacterBufferRange(CultureInfo.CurrentUICulture, new CharacterBufferRange(TextBuffer, span.Value.StartIndex, span.Length))));
            }

            span = Spans.LastOrDefault(z => z.Value.StartIndex < textSourceCharacterIndexLimit);
            var offset = (span.Value.StartIndex + span.Value.Length);

            return(new TextSpan <CultureSpecificCharacterBufferRange>(offset - textSourceCharacterIndexLimit, new CultureSpecificCharacterBufferRange(CultureInfo.CurrentUICulture, new CharacterBufferRange(TextBuffer, offset, offset - textSourceCharacterIndexLimit))));
        }
Exemple #4
0
 void AddSpan(object parameter)
 {
     Spans.Add(new Span(Spans.LastOrDefault()));
 }