예제 #1
0
        public static string GetStorageCardPath(IDeviceEmulatorManagerVMID device)
        {
            XmlDocument configuration   = OpenConfiguration(device);
            XmlNode     storageCardNode = GetOrCreateStorageCardNode(configuration);

            return(storageCardNode.InnerText);
        }
예제 #2
0
        private static XmlDocument OpenConfiguration(IDeviceEmulatorManagerVMID device)
        {
            XmlDocument doc = new XmlDocument();

            doc.LoadXml(device.GetConfiguration());

            return(doc);
        }
예제 #3
0
 private static void ConfigureStorageCard(IDeviceEmulatorManagerVMID emulator, string storageCardPath)
 {
     if (!String.IsNullOrEmpty(storageCardPath))
     {
         emulator.Connect();
         EmulatorHelper.SetStorageCardPath(emulator, storageCardPath);
         emulator.Shutdown(SaveState);
     }
 }
예제 #4
0
        public static void SetStorageCardPath(IDeviceEmulatorManagerVMID device, string path)
        {
            XmlDocument configuration   = OpenConfiguration(device);
            XmlNode     storageCardNode = GetOrCreateStorageCardNode(configuration);

            storageCardNode.InnerText = path;

            device.SetConfiguration(configuration.InnerXml);
        }
예제 #5
0
        private static IDeviceEmulatorManagerVMID FindDevice(IEnumManagerSDKs enumSDKs, string id)
        {
            try
            {
                while (true)
                {
                    IDeviceEmulatorManagerVMID device = FindDevice(enumSDKs.EnumerateVMIDs(), id);
                    if (device != null)
                    {
                        return(device);
                    }
                    enumSDKs.MoveNext();
                }
            }
            catch (COMException)
            {
            }

            return(null);
        }
예제 #6
0
        public static IDeviceEmulatorManagerVMID FindDevice(IDeviceEmulatorManager manager, string id)
        {
            try
            {
                while (true)
                {
                    IDeviceEmulatorManagerVMID device = FindDevice(manager.EnumerateSDKs(), id);
                    if (device != null)
                    {
                        return(device);
                    }
                    manager.MoveNext();
                }
            }
            catch (COMException)
            {
            }

            return(null);
        }
예제 #7
0
        private static IDeviceEmulatorManagerVMID FindDevice(IEnumVMIDs deviceEnumerator, string id)
        {
            try
            {
                while (true)
                {
                    IDeviceEmulatorManagerVMID virtualDevice = deviceEnumerator.GetVMID();
                    if (virtualDevice.get_VMID() == id)
                    {
                        return(virtualDevice);
                    }
                    deviceEnumerator.MoveNext();
                }
            }
            catch (COMException)
            {
            }

            return(null);
        }
예제 #8
0
        static int Main(string[] args)
        {
            Arguments arguments = new Arguments(args);

            string targetFrameworkVersion = arguments["version"];

            if (targetFrameworkVersion == null)
            {
                targetFrameworkVersion = "2.0";
            }

            string db4oDistPath = arguments["dir.dll.compact"];

            if (db4oDistPath == null)
            {
                Help();
                return(InvalidProgramParameters);
            }

            string cfAppName = arguments["app.name"];

            if (string.IsNullOrEmpty(cfAppName))
            {
                Help();
                return(InvalidProgramParameters);
            }

            string deployFileFilter = AppendExtraFilterForDeploy(arguments["deploy.extra.files"]);
            int    ret;

            try
            {
                Console.Error.WriteLine("CompactFrameworkTestHelper v1.2 - Copyright (C) 2009 Versant Inc.\r\n");
                Console.Error.WriteLine("\tCF App: {0}", cfAppName);
                Console.Error.WriteLine("\tCF Target Version: {0}", targetFrameworkVersion);
                Console.Error.WriteLine("\tFolder: {0}", db4oDistPath);
                Console.Error.WriteLine("\tDeployed File Types: {0}", deployFileFilter);
                Console.Error.WriteLine("\tArguments: {0}", arguments["app.args"] ?? "no argument");

                ConfigureEmulator(arguments["dir.storagecard"]);

                Device device = EmulatorHelper.GetDevice();
                device.Connect();

                DeployDotNetFramework(device, targetFrameworkVersion);

                try
                {
                    EmulatorHelper.CopyFiles(device.GetFileDeployer(), Path.Combine(db4oDistPath, "*"), DeviceTestPath, deployFileFilter);

                    RemoteProcess process = device.GetRemoteProcess();
                    if (process.Start(DeviceTestPath + cfAppName, "\"" + arguments["app.args"] ?? String.Empty + "\""))
                    {
                        ret = WaitToFinishOrTimeout(process, new TimeSpan(0, 5, 0, 0));

                        EmulatorHelper.PublishTestLog(device.GetFileDeployer(), db4oDistPath);
                        if (ret != 0)
                        {
                            Console.Error.WriteLine("{0} returned: {1}", cfAppName, ret);
                        }
                    }
                    else
                    {
                        Console.Error.WriteLine("Failled to start application '{0}' in emulator", cfAppName);
                        ret = FailedLaunchingTests;
                    }
                }
                finally
                {
                    device.Disconnect();
                    IDeviceEmulatorManagerVMID virtualDevice = EmulatorHelper.GetVirtualDevice();
                    virtualDevice.Shutdown(DoNotSaveState);
                }
            }
            catch (Exception ex)
            {
                Console.Error.WriteLine("Error running {0}\r\n{1}", cfAppName, ex);
                ret = ExceptionRunningTests;
            }

            return(ret);
        }
예제 #9
0
        private static void ConfigureEmulator(string storageCard)
        {
            IDeviceEmulatorManagerVMID emulator = EmulatorHelper.GetVirtualDevice();

            ConfigureStorageCard(emulator, storageCard);
        }
예제 #10
0
        public static void SetStorageCardPath(IDeviceEmulatorManagerVMID device, string path)
        {
            XmlDocument configuration = OpenConfiguration(device);
            XmlNode storageCardNode = GetOrCreateStorageCardNode(configuration);

            storageCardNode.InnerText = path;

            device.SetConfiguration(configuration.InnerXml);
        }
예제 #11
0
        private static XmlDocument OpenConfiguration(IDeviceEmulatorManagerVMID device)
        {
            XmlDocument doc = new XmlDocument();
            doc.LoadXml(device.GetConfiguration());

            return doc;
        }
예제 #12
0
        public static string GetStorageCardPath(IDeviceEmulatorManagerVMID device)
        {
            XmlDocument configuration = OpenConfiguration(device);
            XmlNode storageCardNode = GetOrCreateStorageCardNode(configuration);

            return storageCardNode.InnerText;
        }
예제 #13
0
파일: Program.cs 프로젝트: Galigator/db4o
	    private static void ConfigureStorageCard(IDeviceEmulatorManagerVMID emulator, string storageCardPath)
	    {
            if (!String.IsNullOrEmpty(storageCardPath))
            {
                emulator.Connect();
                EmulatorHelper.SetStorageCardPath(emulator, storageCardPath);
                emulator.Shutdown(SaveState);
            }
	    }