Tel Test Script: Remove temp hack for VT test. Add Setting test case.

1. Remove temporary hack for VT tests.
2. Add SL4A APIs to bring inCallUI to foreground and show home screen.
3. Bring inCallUI to foreground after answer call.
4. Add VT setting test case.
5. Update VT test suite.

Change-Id: I0bdd42d43ca9428c1ddf30d9e85e353b11c92f82
diff --git a/Common/src/com/googlecode/android_scripting/facade/SettingsFacade.java b/Common/src/com/googlecode/android_scripting/facade/SettingsFacade.java
index 9e6e597..860aeb3 100644
--- a/Common/src/com/googlecode/android_scripting/facade/SettingsFacade.java
+++ b/Common/src/com/googlecode/android_scripting/facade/SettingsFacade.java
@@ -20,6 +20,7 @@
 import android.app.Service;
 import android.app.admin.DevicePolicyManager;
 import android.content.Context;
+import android.content.Intent;
 import android.media.AudioManager;
 import android.os.PowerManager;
 import android.os.SystemClock;
@@ -30,6 +31,7 @@
 import com.android.internal.widget.LockPatternUtils;
 import com.googlecode.android_scripting.BaseApplication;
 import com.googlecode.android_scripting.FutureActivityTaskExecutor;
+import com.googlecode.android_scripting.Log;
 import com.googlecode.android_scripting.future.FutureActivityTask;
 import com.googlecode.android_scripting.jsonrpc.RpcReceiver;
 import com.googlecode.android_scripting.rpc.Rpc;
@@ -44,6 +46,7 @@
 public class SettingsFacade extends RpcReceiver {
 
     private final Service mService;
+    private final AndroidFacade mAndroidFacade;
     private final AudioManager mAudio;
     private final PowerManager mPower;
     private final AlarmManager mAlarm;
@@ -57,6 +60,7 @@
     public SettingsFacade(FacadeManager manager) {
         super(manager);
         mService = manager.getService();
+        mAndroidFacade = manager.getReceiver(AndroidFacade.class);
         mAudio = (AudioManager) mService.getSystemService(Context.AUDIO_SERVICE);
         mPower = (PowerManager) mService.getSystemService(Context.POWER_SERVICE);
         mAlarm = (AlarmManager) mService.getSystemService(Context.ALARM_SERVICE);
@@ -251,6 +255,20 @@
         mAlarm.setTimeZone(timeZone);
     }
 
+    @Rpc(description = "Show Home Screen")
+    public void showHomeScreen() {
+        Intent intent = new Intent(Intent.ACTION_MAIN);
+        intent.addCategory(Intent.CATEGORY_HOME);
+        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+        try {
+            mAndroidFacade.startActivityIntent(intent, false);
+        } catch (RuntimeException e) {
+            Log.d("showHomeScreen RuntimeException" + e);
+        } catch (Exception e){
+            Log.d("showHomeScreen exception" + e);
+        }
+    }
+
     @Override
     public void shutdown() {
         // Nothing to do yet.
diff --git a/Common/src/com/googlecode/android_scripting/facade/tele/TelecomManagerFacade.java b/Common/src/com/googlecode/android_scripting/facade/tele/TelecomManagerFacade.java
index 09eb1a5..54e460a 100644
--- a/Common/src/com/googlecode/android_scripting/facade/tele/TelecomManagerFacade.java
+++ b/Common/src/com/googlecode/android_scripting/facade/tele/TelecomManagerFacade.java
@@ -33,6 +33,7 @@
 import com.googlecode.android_scripting.facade.FacadeManager;
 import com.googlecode.android_scripting.jsonrpc.RpcReceiver;
 import com.googlecode.android_scripting.rpc.Rpc;
+import com.googlecode.android_scripting.rpc.RpcDefault;
 import com.googlecode.android_scripting.rpc.RpcOptional;
 import com.googlecode.android_scripting.rpc.RpcParameter;
 
@@ -112,6 +113,15 @@
         return modeStr;
     }
 
+    @Rpc(description = "Bring incallUI to foreground.")
+    public void telecomShowInCallScreen(
+            @RpcParameter(name = "showDialpad")
+            @RpcOptional
+            @RpcDefault("false")
+            Boolean showDialpad) {
+        mTelecomManager.showInCallScreen(showDialpad);
+    }
+
     @Rpc(description = "Get the list of PhoneAccountHandles with calling capability.")
     public List<PhoneAccountHandle> telecomGetEnabledPhoneAccounts() {
         mEnabledAccountHandles = mTelecomManager.getCallCapablePhoneAccounts();