Example #1
0
        public ITestResultsProvider CreateProvider(int providerId, bool withTracking)
        {
            ITestResultsProvider resultsProvider = null;

            switch (providerId)
            {
            case TOOL_DATA_READER:
                resultsProvider = new OriginalProvider();
                break;

            case TOOL_LINQ_2_SQL:
                resultsProvider = new Linq2SqlProvider(withTracking);
                break;

            case TOOL_LINQ_2_SQL_COMPILED:
                resultsProvider = new Linq2SqlCompiledProvider(withTracking);
                break;

            case TOOL_ENTITY_FRAMEWORK:
                resultsProvider = new EntityFrameworkProvider(withTracking);
                break;

            case TOOL_ENTITY_FRAMEWORK_COMPILED:
                resultsProvider = new EntityFrameworkCompiledProvider(withTracking);
                break;

            case TOOL_ENTITY_FRAMEWORK_ENTITYSQL:
                resultsProvider = new EntityFrameworkEntitySqlProvider(withTracking);
                break;
            }

            return(resultsProvider);
        }
Example #2
0
        static void Main(string[] args)
        {
            //http://merle-amber.blogspot.ru/2008/11/net-orm-1.html

            ITestResultsProvider provider = null;

            if (args.Length == 0)
            {
                return;
            }
            bool useTracking = args.Length > 1 && bool.TryParse(args[1], out useTracking) ? useTracking : true;

            switch (args[0])
            {
            case "ado":
                provider = new OriginalProvider();
                break;

            case "linq":
                provider = new Linq2SqlProvider(useTracking);
                break;

            case "ef":
                provider = new EntityFrameworkProvider(useTracking);
                break;

            case "ar":
                provider = null;     //new ActiveRecordProvider();
                break;

            default:
                break;
            }
            if (provider == null)
            {
                return;
            }

            TestInitialization(provider);
            Console.Out.WriteLine(string.Format("Use tracking: {0}", useTracking.ToString()));
            DateTime testBegin = DateTime.Now;

            // TODO: Uncomment necessary test or few of them
            //RunTest(provider, TestType.Orders);
            RunTest(provider, TestType.OrdersMultiple);
            //RunTest(provider, TestType.CustomerProducts);
            RunTest(provider, TestType.CustomerProductsMultiple);
            //RunTest(provider, TestType.CustomerProductsComplex);
            RunTest(provider, TestType.CustomerProductsComplexMultiple);
            //RunTest(provider, TestType.CustomerProductsMixed);
            //RunTest(provider, TestType.CustomerModify);

            TimeSpan passedTime = DateTime.Now - testBegin;

            Console.Out.WriteLine("Overall spent time: " + passedTime.TotalMilliseconds);
            //Console.ReadKey();
        }