public void TestSingle()
        {
            TestSingle(0.0f);
            TestSingle(-0.0f);
            TestSingle(1.0f);
            TestSingle(-1.0f);
            TestSingle(Single.MaxValue);
            TestSingle(Single.MinValue);
            TestSingle(Single.NaN);
            TestSingle(Single.NegativeInfinity);
            TestSingle(Single.PositiveInfinity);
            var        sw   = Stopwatch.StartNew();
            TestRandom rand = new TestRandom();

            for (int i = 0; i < 1000; i++)
            {
                TestSingle(rand.NextSingle());
            }
            sw.Stop();
            Console.WriteLine("Single: {0:0.###} msec/object", sw.ElapsedMilliseconds / 1000.0);
        }
        public void TestAsSingle()
        {
            TestAsSingle(0.0f);
            TestAsSingle(-0.0f);
            TestAsSingle(1.0f);
            TestAsSingle(-1.0f);
            TestAsSingle(Single.MaxValue);
            TestAsSingle(Single.MinValue);
            TestAsSingle(Single.NaN);
            TestAsSingle(Single.NegativeInfinity);
            TestAsSingle(Single.PositiveInfinity);

#if !SILVERLIGHT
            var        sw   = Stopwatch.StartNew();
            TestRandom rand = new TestRandom();
            for (int i = 0; i < 1000; i++)
            {
                TestAsSingle(rand.NextSingle());
            }
            sw.Stop();
            Console.WriteLine("Single: {0:#,0.###} usec/object", GetMicroseconds(sw));
#endif // !SILVERLIGHT
        }
		public void TestAsSingle()
		{
			TestAsSingle( 0.0f );
			TestAsSingle( -0.0f );
			TestAsSingle( 1.0f );
			TestAsSingle( -1.0f );
			TestAsSingle( Single.MaxValue );
			TestAsSingle( Single.MinValue );
			TestAsSingle( Single.NaN );
			TestAsSingle( Single.NegativeInfinity );
			TestAsSingle( Single.PositiveInfinity );
			var sw = Stopwatch.StartNew();
			TestRandom rand = new TestRandom();
			for ( int i = 0; i < 100000; i++ )
			{
				TestAsSingle( rand.NextSingle() );
			}
			sw.Stop();
			Console.WriteLine( "Single: {0:#,0.###} usec/object", sw.Elapsed.Ticks / 1000000.0 );
		}