Allow EJs to set storage-not-low constraint.

Bug: 171305774
Test: atest CtsJobSchedulerTestCases
Change-Id: Id84aba746e8fbfd065935f3d420e6f0d134f049c
diff --git a/tests/JobScheduler/src/android/jobscheduler/MockJobService.java b/tests/JobScheduler/src/android/jobscheduler/MockJobService.java
index 964853c..8c188fc 100644
--- a/tests/JobScheduler/src/android/jobscheduler/MockJobService.java
+++ b/tests/JobScheduler/src/android/jobscheduler/MockJobService.java
@@ -467,7 +467,9 @@
             mExecutedPermCheckWrite = permCheckWrite;
             mExecutedReceivedWork = receivedWork;
             mExecutedErrorMessage = errorMsg;
-            mLatch.countDown();
+            if (mLatch != null) {
+                mLatch.countDown();
+            }
         }
 
         private void notifyWaitingForStop() {
diff --git a/tests/JobScheduler/src/android/jobscheduler/cts/JobInfoTest.java b/tests/JobScheduler/src/android/jobscheduler/cts/JobInfoTest.java
index bd4110d..26bda48 100644
--- a/tests/JobScheduler/src/android/jobscheduler/cts/JobInfoTest.java
+++ b/tests/JobScheduler/src/android/jobscheduler/cts/JobInfoTest.java
@@ -164,6 +164,7 @@
                 .setExpedited(true)
                 .setPersisted(true)
                 .setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY)
+                .setRequiresStorageNotLow(true)
                 .build();
         assertTrue(ji.isExpedited());
         // Confirm JobScheduler accepts the JobInfo object.
@@ -195,10 +196,6 @@
         assertBuildFails(failureMessage,
                 new JobInfo.Builder(JOB_ID, kJobServiceComponent)
                         .setExpedited(true)
-                        .setRequiresStorageNotLow(true));
-        assertBuildFails(failureMessage,
-                new JobInfo.Builder(JOB_ID, kJobServiceComponent)
-                        .setExpedited(true)
                         .setRequiresDeviceIdle(true));
         assertBuildFails(failureMessage,
                 new JobInfo.Builder(JOB_ID, kJobServiceComponent)