Ejemplo n.º 1
0
        public void MethodTimeShouldBeMoreOrEqualThanSleepTime()
        {
            ITracer tracer = new MethodTracer();
            ClassWithSleepMethod classWithSleepMethod = new ClassWithSleepMethod(tracer);

            classWithSleepMethod.MethodWithSleep();
            TraceResult traceResult = tracer.GetTraceResult();

            Assert.True(traceResult.Threads[0].Methods[0].Time >= 100);
        }
Ejemplo n.º 2
0
        public void ShouldReturnCorrectThreadId()
        {
            ITracer tracer = new MethodTracer();
            ClassWithSleepMethod classWithSleepMethod = new ClassWithSleepMethod(tracer);
            int threadId = Thread.CurrentThread.ManagedThreadId;

            classWithSleepMethod.MethodWithSleep();
            TraceResult traceResult = tracer.GetTraceResult();

            Assert.Equal(threadId, traceResult.Threads[0].Id);
        }
Ejemplo n.º 3
0
        public void RunThreeThreads()
        {
            ClassWithSleepMethod test = new ClassWithSleepMethod(tracer);

            List <Thread> threadList = new List <Thread>();

            for (int i = 0; i < 3; i++)
            {
                threadList.Add(new Thread(test.MethodWithSleep));
                threadList.Last().Start();
            }

            foreach (var thread in threadList)
            {
                thread.Join();
            }
        }