Add unit test for issue 64563

Editor#putString(key, null) should be equivalent to
Editor#remove(key).

bug: https://code.google.com/p/android/issues/detail?id=64563
Change-Id: I0398d8760a1de9a24eaa0a27bd3a7ccdae54715e
diff --git a/tests/tests/content/src/android/content/cts/SharedPreferencesTest.java b/tests/tests/content/src/android/content/cts/SharedPreferencesTest.java
index 35584bb..2354926 100644
--- a/tests/tests/content/src/android/content/cts/SharedPreferencesTest.java
+++ b/tests/tests/content/src/android/content/cts/SharedPreferencesTest.java
@@ -16,10 +16,6 @@
 
 package android.content.cts;
 
-import com.android.cts.stub.R;
-
-import dalvik.annotation.BrokenTest;
-
 import android.app.QueuedWork;
 import android.content.Context;
 import android.content.ContextWrapper;
@@ -28,7 +24,6 @@
 import android.preference.PreferenceManager;
 import android.test.AndroidTestCase;
 import android.util.Log;
-
 import java.io.File;
 import java.io.FileInputStream;
 import java.io.FileOutputStream;
@@ -93,6 +88,19 @@
         assertEquals("default", prefs.getString(key, "default"));
     }
 
+    public void testPutNullRemovesKey() {
+        SharedPreferences prefs = getPrefs();
+        prefs.edit().putString("test-key", "test-value").commit();
+        assertEquals("test-value", prefs.getString("test-key", null));
+
+        SharedPreferences.Editor editor = prefs.edit().putString("test-key", null);
+        assertEquals("test-value", prefs.getString("test-key", null));
+        editor.commit();
+
+        assertNull(prefs.getString("test-key", null));
+        assertFalse(prefs.contains("test-key"));
+    }
+
     private abstract class RedundantWriteTest {
         // Do some initial operation on editor.  No commit needed.
         public abstract void setUp(SharedPreferences.Editor editor);