예제 #1
0
        public void StopTimerTest()
        {
            CodeTimer timer = new CodeTimer(typeof(CodeTimerTest), "StopTimerTest", true);

            Assert.Equal("stop", timer.Stop().SubeventName);
            long elapsed = timer.ElapsedTime;

            Assert.True(timer.Started);
            Assert.False(timer.Running);
            Assert.Equal(elapsed, timer.ElapsedTime);
            Assert.True(timer.ElapsedTime > 0);
            Assert.Null(timer.Stop());
        }
예제 #2
0
        public void GetJournalTextTest()
        {
            CodeTimer timer = new CodeTimer(typeof(CodeTimerTest), "GetJournalTextTest", true);

            timer.Stop();
            Assert.NotNull(timer.GetJournalText());
        }
예제 #3
0
        public void TimerEventTest()
        {
            CodeTimer timer = new CodeTimer(typeof(CodeTimerTest), "TimerEventTest", true);

            Assert.Equal("testEvent", timer.Event("testEvent").SubeventName);
            timer.Stop();
        }
예제 #4
0
        public bool Query(string value)
        {
            _rootLogger.Debug($"Query for {value}");
            using var timer = new CodeTimer();
            var hashes  = ComputeHashes(value);
            var results = hashes.Select(hash => SafeAccess(hash));

            timer.Stop();
            _rootLogger.Debug($"Query for {value} took {timer}"); //TODO - Expose Timing Metrics to Result
            return(results.Aggregate(true, (b, b1) => b && b1));
        }
예제 #5
0
        public void TimerConstructorTest()
        {
            CodeTimer timer = new CodeTimer(typeof(CodeTimerTest), "TimerConstructorTest");

            ICheckpoint[] checkpoints = new ICheckpoint[] { timer.Start(), timer.Stop() };
            foreach (ICheckpoint checkpoint in checkpoints)
            {
                Assert.Equal(checkpoint.ClassName, typeof(CodeTimerTest).FullName);
                Assert.Equal(checkpoint.EventName, "TimerConstructorTest");
            }
        }
예제 #6
0
        public void StartTimerTest()
        {
            CodeTimer timer = new CodeTimer(typeof(CodeTimerTest), "StartTimerTest");

            Assert.Equal(0, timer.ElapsedTime);
            Assert.Equal("start", timer.Start().SubeventName);
            Assert.Null(timer.Start());
            Assert.True(timer.Started);
            Assert.True(timer.Running);
            long elapsed = timer.ElapsedTime;

            Thread.Sleep(1000);
            Assert.True(timer.ElapsedTime > 0);
            Assert.NotEqual(elapsed, timer.ElapsedTime);
            timer.Stop();
        }
예제 #7
0
        public void StartedTest()
        {
            CodeTimer timer = new CodeTimer(typeof(CodeTimerTest), "StartedTest");

            Assert.False(timer.Started);
            timer.Start();
            Assert.True(timer.Started);
            timer.Stop();
            Assert.True(timer.Started);

            timer = new CodeTimer(typeof(CodeTimerTest), "StartedTest2");
            Assert.False(timer.Started);
            timer.Start();
            Assert.True(timer.Started);
            timer.Fail();
            Assert.True(timer.Started);
        }
예제 #8
0
        public void RunningTest()
        {
            CodeTimer timer = new CodeTimer(typeof(CodeTimerTest), "RunningTest");

            Assert.False(timer.Running);
            timer.Start();
            Assert.True(timer.Running);
            timer.Stop();
            Assert.False(timer.Running);

            timer = new CodeTimer(typeof(CodeTimerTest), "RunningTest2");
            Assert.False(timer.Running);
            timer.Start();
            Assert.True(timer.Running);
            timer.Fail();
            Assert.False(timer.Running);
        }
예제 #9
0
        public void Insert(params string[] values)
        {
            if (_hashFunctions.Count == 0)
            {
                throw new ArgumentNullException("Hash Functions is empty!");
            }

            using var timer = new CodeTimer();
            foreach (var value in values)
            {
                foreach (var computeHash in ComputeHashes(value))
                {
                    _rootLogger.Debug($"Inserting hashvalue: {computeHash} for {value}");
                    _bitArray[computeHash] = true;
                }
            }
            timer.Stop();
            _rootLogger.Debug($"Insert of {values.Length} took {timer}");
        }
예제 #10
0
        public void SpeedTest()
        {
            List <TestClass> bigList = new List <TestClass>();
            CryptoRandom     random  = new CryptoRandom("{A:10}");

            for (int i = 0; i < 100000; i++)
            {
                bigList.Add(new TestClass(i, random.Generate(), DateTime.Now));
            }

            CodeTimer timer = CodeTimer.Start();

            MultiLevelComparer <TestClass> comparer = new MultiLevelComparer <TestClass>();

            comparer.AddColumn("Id", SortDirection.Ascending);
            comparer.AddColumn("Name", SortDirection.Descending);
            bigList.Sort(comparer);

            Console.WriteLine("Sorted in {0} ms", CodeTimer.Stop(timer).TotalMilliseconds);
        }
예제 #11
0
 public void ThreadedTearDown()
 {
     CodeTimer.WriteMilliseconds(Timer);
     CodeTimer.Stop(Timer);
     ;
 }