Inheritance: WindowsPhoneTestFramework.Server.DeviceController.ParsedApplicationDefinition
        public override UninstallationResult Uninstall(ApplicationDefinition applicationDefinition)
        {
            var adbDefinition = new AdbApplicationDefinition(applicationDefinition);

            // first uninstall the stub package
            Uninstall(adbDefinition.StubPackageName);

            // then uninstall the app package
            return(Uninstall(adbDefinition.PackageName));
        }
        public override InstallationResult Install(ApplicationDefinition applicationDefinition)
        {
            var adbDefinition = new AdbApplicationDefinition(applicationDefinition);

            // first install the stub
            var installStubResult = Install(adbDefinition.StubPackagePath);

            if (installStubResult != InstallationResult.Success)
            {
                InvokeTrace("TODO!");
            }

            var installMainResult = Install(adbDefinition.PackagePath);

            return(installMainResult);
        }
        public override StartResult Start(ApplicationDefinition applicationDefinition)
        {
            var adbDefinition = new AdbApplicationDefinition(applicationDefinition);

            /*
             * ExecuteAdb("-s {0} shell am start -a {1} -n {2}/{3}",
             *              _configuration.RunningEmulatorAdbName,
             *              adbDefinition.Action,
             *              adbDefinition.PackageName,
             *              adbDefinition.ActivityClassName);
             */

            // TODO - check return here?
            ExecuteAdb(DoNotWait,
                       "-s {0} shell am instrument -w {1}/android.test.InstrumentationTestRunner",
                       _configuration.RunningEmulatorAdbName,
                       adbDefinition.StubPackageName);

            InvokeTrace("Not currently checking the start response!");

            return(StartResult.Success);
        }
        public override StartResult Start(ApplicationDefinition applicationDefinition)
        {
            var adbDefinition = new AdbApplicationDefinition(applicationDefinition);
            /*
            ExecuteAdb("-s {0} shell am start -a {1} -n {2}/{3}",
                            _configuration.RunningEmulatorAdbName,
                            adbDefinition.Action,
                            adbDefinition.PackageName,
                            adbDefinition.ActivityClassName);
             */

            // TODO - check return here?
            ExecuteAdb(DoNotWait,
                       "-s {0} shell am instrument -w {1}/android.test.InstrumentationTestRunner",
                       _configuration.RunningEmulatorAdbName,
                       adbDefinition.StubPackageName);

            InvokeTrace("Not currently checking the start response!");

            return StartResult.Success;
        }
        public override UninstallationResult Uninstall(ApplicationDefinition applicationDefinition)
        {
            var adbDefinition = new AdbApplicationDefinition(applicationDefinition);

            // first uninstall the stub package
            Uninstall(adbDefinition.StubPackageName);

            // then uninstall the app package
            return Uninstall(adbDefinition.PackageName);
        }
        public override InstallationResult Install(ApplicationDefinition applicationDefinition)
        {
            var adbDefinition = new AdbApplicationDefinition(applicationDefinition);

            // first install the stub
            var installStubResult = Install(adbDefinition.StubPackagePath);
            if (installStubResult != InstallationResult.Success)
                InvokeTrace("TODO!");

            var installMainResult = Install(adbDefinition.PackagePath);
            return installMainResult;
        }