Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 38174301 authored by David Drysdale's avatar David Drysdale
Browse files

Secretkeeper: improve VTS tests

- Look for either /default or /nonsecure instances.
- Only run a `deleteAll()` test on a /nonsecure instance.
- Delete IDs on client drop to ensure a consistent state.
- Use a config that ensures tests are run single-threaded, to ensure a
  consistent state.
- Shift to using types not raw arrays.
- Add a macro for common test setup.
- Add helper methods to reduce the amount of copy-pasta in the VTS
  tests.
- Use these helpers to create some additional tests.

Test: VtsSecretkeeperTargetTest
Bug: 291224769
Change-Id: Icff0bba1bcdd66b18398ed4b64ebd2c6bc0de7e7
parent 1357b92d
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ rust_test {
        "general-tests",
        "vts",
    ],
    test_config: "AndroidTest.xml",
    rustlibs: [
        "libsecretkeeper_comm_nostd",
        "libsecretkeeper_core_nostd",
@@ -36,6 +37,7 @@ rust_test {
        "libbinder_rs",
        "libcoset",
        "liblog_rust",
        "liblogger",
    ],
    require_root: true,
}
+31 −0
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2023 The Android Open Source Project

     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License.
-->
<configuration description="Config for Secretkeeper VTS tests.">
  <target_preparer class="com.android.tradefed.targetprep.RootTargetPreparer"/>

  <target_preparer class="com.android.tradefed.targetprep.PushFilePreparer">
    <option name="push-file" key="VtsSecretkeeperTargetTest" value="/data/local/tmp/VtsSecretkeeperTargetTest" />
  </target_preparer>

  <test class="com.android.tradefed.testtype.rust.RustBinaryTest" >
    <option name="test-device-path" value="/data/local/tmp" />
    <option name="module-name" value="VtsSecretkeeperTargetTest" />
    <!-- Rust tests are run in parallel by default. Run these ones
         single-threaded, so that one test's secrets don't affect
         the behaviour of a different test. -->
    <option name="native-test-flag" value="--test-threads=1" />
  </test>
</configuration>
+183 −285

File changed.

Preview size limit exceeded, changes collapsed.