public void StartSetsTheStartTime()
        {
            // given
            var target = new TestWebRequestTracerBase(logger, beacon, 17);

            mockTimingProvider.ProvideTimestampInMilliseconds().Returns(123456789L);

            // when starting web request tracing
            var obtained = target.Start();

            // then
            Assert.That(target.StartTime, Is.EqualTo(123456789L));
            Assert.That(obtained, Is.SameAs(target));
        }
        public void StartDoesNothingIfAlreadyStopped()
        {
            // given
            var target = new TestWebRequestTracerBase(beacon, action);

            mockTimingProvider.ProvideTimestampInMilliseconds().Returns(123456789L);
            target.Stop();

            // when starting web request tracing
            var obtained = target.Start();

            // then
            Assert.That(target.StartTime, Is.EqualTo(-1L));
            Assert.That(obtained, Is.SameAs(target));
        }