static void Main(string[] args) { //抽象工厂 // CreateHumanTest(); //简单抽线工厂 //CreateHumanSimple(); //多个工厂模式 // CreateMultiFactory(); //工厂实现单例 //SingletonFactory.getSingleton() .doSomeThing(); //工厂用作缓存对象 //FactoryCacheTest(); //Console.WriteLine("time=" + DateTime.Now.Ticks); //Creator creator = new ConcreteCreator(); //Product product = creator.createProduct< ConcreteProduct1>(); //product.method2(); //Console.WriteLine("time=" + DateTime.Now.Ticks); //原型模式demo // Client.TestFunc(); //深浅拷贝的demo //TestClone clone1 = new TestClone(); //TestClone clone2 = new TestClone(); //clone1.testStr.Add("name1"); //clone2.testStr.Add("name1"); //Console.WriteLine("clone1=" + clone1.testStr.Count+ // ",clone2=" + clone2.testStr.Count // + ",clone1.num=" + clone1.number // + ",clone3.num=" + clone2.number // +clone1.Equals(clone2) // ); //命令模式demo //TestClient.testFunc(); //责任链模式 //HandlerDemo.main(); //策略模式 //StrategyDemo.main(); //迭代器模式 //IteratorDemo.main(); //观察者模式 //ObserverDemo.main(); //访问者模式 //VisitorDemo.main(); //解释器模式 //ExpressionDemo.main(); //享元模式 //FlyweightDemo.main(); //桥梁模式 //BridgeDemo.main();没有输出 //建造者模式 BuilderDemo.main(); Console.ReadLine(); }
static void Main(string[] args) { BuilderDemo.FirstDemo(); BuilderDemo.SecondDemo(); }
static void Main(string[] args) { Console.ForegroundColor = ConsoleColor.DarkBlue; Console.BackgroundColor = ConsoleColor.White; Console.Write("\n Demonstration of Mock Repo"); Console.Write("\n ============================\n"); Console.ResetColor(); //fetch the to be built files in the repo to buildstorage RepoMock repo = new RepoMock(); repo.CopyDirectory(repo.storagePath, repo.receivePath); Console.ForegroundColor = ConsoleColor.Blue; Console.BackgroundColor = ConsoleColor.White; Console.Write("\nRepo Send build projects to build server"); Console.ResetColor(); Console.Write("\n\n"); Console.ForegroundColor = ConsoleColor.DarkGreen; Console.BackgroundColor = ConsoleColor.White; Console.Write("\n Building .csproj files "); Console.Write("\n =========================\n\n"); Console.ResetColor(); //starting building process and catch build exception BuilderDemo builder = new BuilderDemo(); try { builder.BuildCsproj(); } catch (Exception ex) { Console.ForegroundColor = ConsoleColor.DarkRed; Console.BackgroundColor = ConsoleColor.White; Console.Write("\n\n An error occured while trying to build the csproj file.\n Details: {0}\n\n", ex.Message); Console.ResetColor(); } Console.Write("\n The TestHarness asked the BuildServer for the Dll files"); DllLoaderExec testharness = new DllLoaderExec(); //fetch the alreay built dll files to the testers testharness.getFiles("*.dll"); foreach (string file in testharness.files) { Console.Write("\n \"{0}\"", file); } foreach (string file in testharness.files) { string fileName = Path.GetFileName(file); Console.Write("\n sending \"{0}\" to \"{1}\"", fileName, testharness.TestreceivePath); testharness.sendFile(file); } Console.Write("\n\n"); Console.Write("\n Demonstrating Robust Test Loader"); Console.Write("\n ==================================\n"); DllLoaderExec.testersLocation = Path.GetFullPath(DllLoaderExec.testersLocation); Console.Write("\n Loading Test Modules from:\n {0}\n", DllLoaderExec.testersLocation); // run load and tests string result = testharness.loadAndExerciseTesters(); Console.Write("\n\n {0}", result); Console.Write("\n\n"); }