<?xml version="1.0" encoding="utf-8"?>
<!--
  Copyright (C) 2016 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.
  -->

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.android.printspooler.outofprocess.tests">

    <application>
        <uses-library android:name="android.test.runner" />

        <activity
            android:name="android.print.test.PrintDocumentActivity"
            android:theme="@style/NoAnimation" />

        <service
                android:name="android.print.test.services.FirstPrintService"
                android:permission="android.permission.BIND_PRINT_SERVICE">

            <intent-filter>
                <action android:name="android.printservice.PrintService" />
            </intent-filter>
            <meta-data
                    android:name="android.printservice"
                    android:resource="@xml/printservice">
            </meta-data>
        </service>

        <activity
                android:name="android.print.test.services.SettingsActivity"
                android:permission="android.permission.START_PRINT_SERVICE_CONFIG_ACTIVITY"
                android:theme="@style/NoAnimation"
                android:exported="true">
        </activity>

        <activity
                android:name="android.print.test.services.AddPrintersActivity"
                android:theme="@style/NoAnimation"
                android:exported="true">
        </activity>

    </application>

    <!-- This runs in its own process, hence it instruments itself -->
    <instrumentation android:name="androidx.test.runner.AndroidJUnitRunner"
            android:targetPackage="com.android.printspooler.outofprocess.tests"
            android:label="PrintSpooler Out of Process Test Cases">
    </instrumentation>

</manifest>
