Example #1
0
        /// <summary>
        /// Mains the specified arguments.
        /// </summary>
        /// <param name="args">The arguments.</param>
        static void Main(string[] args)
        {
            CombinedWriter writer;
            var            oldOut = Console.Out;

            try
            {
                writer = new CombinedWriter("./DynamicsConnectivityValidator.log", false, Encoding.Unicode, 0x400, Console.Out);
            }
            catch (Exception e)
            {
                Console.WriteLine("Cannot open DynamicsConnectivityValidator.log for writing");
                Console.WriteLine(e.Message);
                return;
            }

            Console.SetOut(writer);
            System.Net.ServicePointManager.ServerCertificateValidationCallback +=
                (se, cert, chain, sslerror) =>
            {
                return(true);
            };

            var success = true;

            writer.Write("Dynamics Connectivity validation starting...");
            var crtManager = new DynamicsRuntimeManager();

            if (crtManager.CommerceRuntime == null)
            {
                success = false;
                writer.Write("Failed to create CommerceRuntime");
            }

            if (success)
            {
                try
                {
                    writer.Write("Validating the Channel manager...");
                    success = ChannelValidation(crtManager, writer);

                    writer.Write("Validating the Catalog manager...");
                    success = success && CatalogValidation(crtManager, writer);

                    writer.Write("Validating the Customer manager...");
                    success = success && CreateUser(crtManager, writer);

                    if (success)
                    {
                        writer.Write("Validating the Order manager...");
                        success = CreateOrder(crtManager, writer);
                    }
                }
                catch (Exception e)
                {
                    writer.Write(e.Message);
                    writer.Write(e.InnerException);
                    return;
                }
            }

            writer.Write(success
                ? "Dynamics Connectivity validation succeeded"
                : "Dynamics Connectivity validation failed");

            Console.SetOut(oldOut);
            writer.Close();
        }