Exemplo n.º 1
0
        public static void CreateUnequalTestObjects(out Object1[] l, out Object1[] r, int len)
        {
            l = new Object1[len];
            r = new Object1[len];

            for (int i = 0; i < len; i++)
            {
                int valueL = (i & (i + 1)) == 0 ? 42 : i;
                int valueR = i;

                string stringL = "test" + valueL;
                string stringR = "test" + valueR;

                l[i] = new Object1(valueL, stringL);
                r[i] = new Object1(valueR, stringR);
            }
        }
Exemplo n.º 2
0
        private static void TestEqualsMethodGenerator()
        {
            EqualsMethodGenerator cg = new EqualsMethodGenerator();
            Expression <Func <Object1, Object1, bool> > expression = cg.GenerateEqualsMethodExpressionRecurse <Object1>();

            Func <Object1, Object1, bool> EqualsMethod = expression.Compile();

            Object1 oL = new Object1(3, "string value");
            Object1 oR = new Object1(3, "string value");

            Console.WriteLine("Should be true:\n\r");
            Console.WriteLine("oL.Equals(oR):        " + oL.Equals(oR));
            Console.WriteLine("oL == oR:             " + (oL == oR));
            Console.WriteLine("equalMethod(oL, oR):  " + EqualsMethod(oL, oR));

            oL = new Object1(3, "string value L");
            oR = new Object1(3, "string value R");

            Console.WriteLine("\n\rShould be false:\n\r");
            Console.WriteLine("oL.Equals(oR):        " + oL.Equals(oR));
            Console.WriteLine("oL == oR:             " + (oL == oR));
            Console.WriteLine("equalMethod(oL, oR):  " + EqualsMethod(oL, oR));
        }