예제 #1
0
        public void Maxtest()
        {
            //int
            Assert.AreEqual(Fast.QMax(0, -1), Def.Max(0, -1));
            Assert.AreEqual(Fast.QMax(0, 1), Def.Max(0, 1));
            Assert.AreEqual(Fast.QMax(-1, 1), Def.Max(-1, 1));

            Assert.AreEqual(Fast.QMax(0, 0), Def.Max(0, 0));
            Assert.AreEqual(Fast.QMax(-1, -1), Def.Max(-1, -1));
            Assert.AreEqual(Fast.QMax(1, 1), Def.Max(1, 1));

            Assert.AreEqual(Fast.QMax(int.MinValue + 1, int.MinValue), Def.Max(int.MinValue + 1, int.MinValue));
            Assert.AreEqual(Fast.QMax(int.MaxValue, int.MaxValue - 1), Def.Max(int.MaxValue, int.MaxValue - 1));

            //long

            Assert.AreEqual(Fast.QMax(0L, -1L), Def.Max(0L, -1L));
            Assert.AreEqual(Fast.QMax(0L, 1L), Def.Max(0L, 1L));
            Assert.AreEqual(Fast.QMax(-1L, 1L), Def.Max(-1L, 1L));

            Assert.AreEqual(Fast.QMax(0L, 0L), Def.Max(0L, 0L));
            Assert.AreEqual(Fast.QMax(-1L, -1L), Def.Max(-1L, -1L));
            Assert.AreEqual(Fast.QMax(1L, 1L), Def.Max(1L, 1L));

            Assert.AreEqual(Fast.QMax(long.MinValue + 1L, long.MinValue), Def.Max(long.MinValue + 1L, long.MinValue));
            Assert.AreEqual(Fast.QMax(long.MaxValue, long.MaxValue - 1L), Def.Max(long.MaxValue, long.MaxValue - 1L));

            //short
            Assert.AreEqual(Fast.QMax((short)0, (short)-1), Def.Max((short)0, (short)-1));
            Assert.AreEqual(Fast.QMax((short)0, (short)1), Def.Max((short)0, (short)1));
            Assert.AreEqual(Fast.QMax((short)-1, (short)1), Def.Max((short)-1, (short)1));

            Assert.AreEqual(Fast.QMax((short)0, (short)0), Def.Max((short)0, (short)0));
            Assert.AreEqual(Fast.QMax((short)-1, (short)-1), Def.Max((short)-1, (short)-1));
            Assert.AreEqual(Fast.QMax((short)1, (short)1), Def.Max((short)1, (short)1));

            Assert.AreEqual(Fast.QMax((short)(short.MinValue + 1), short.MinValue), Def.Max((short)(short.MinValue + 1), short.MinValue));
            Assert.AreEqual(Fast.QMax(short.MaxValue, (short)(short.MaxValue - 1)), Def.Max(short.MaxValue, (short)(short.MaxValue - 1)));
        }