Makes a test mapping for statsd so that unit tests run on presubmit.
Changes to make the tests pass:
1. Require root. This is needed to write to disk, since the tests don't
run as statsd's uid
2. Remove AndroidTest.xml file in favor of the autogenerated one.
3. Remove a check in StatsService.test for getUidFromArgs. The test
checked a failure case where we passed a number bigger than INT32_MAX.
However, on a 32 bit device, strtol will return INT32_MAX when an
overflow happens, since it returns a 32 bit number on a 32 bit device.
4. Refactor a lot of e2e tests to sort dimensions, ensuring that the
dimensions are always in order, instead of relying on implicit ordering
of hashing, which can change.
5. Change a long to an int64 in TestActivationsPersistAcrossSystemServerRestart
Test: statsd_test
Bug: 129613474
Change-Id: I80dfa3bfd50ebe6d2c8c0c3ba201f3ad06b68910
Bug: 153596226
Test: Device boots up and connects to wifi networks.
Test: Manual inspection of classes included in framework-wifi &
service-wifi using dexdump
Change-Id: Ic31cdae62761110eeb4834a588b36328de19adb8
SystemPartitions does not have the /apex mount. We need to do an
explicit check for it when recording the system server jars.
Test: DexManagerTests, manual
Bug: 148774920
Change-Id: I9c92866304d98144cb82f39b3c768948dcf284ea
Add logic for dexopt-ing system server dex files. The files
are managed by the DexManager and need special dexopt
arguments.
As such, they have a dedicated dexopt path, that can be
initiated from DexManager. (The arguments are what we currently
use in ZygoteInit#performSystemServerDexOpt)
Test: adb shell cmd package dexopt android
presubmits
Bug: 148774920
Change-Id: If0c0457f8045e8f475815136fb5ae2f340eb6661
When starting a non-resizeable activity while in split-mode it is
important the non-resizeable activity causing the dismisal of the split
end up on top. This change allows the callers of dismiss split to
specify which stack will be topmost.
Fixes: 152943129
Test: atest testNonResizeableWhenAlreadyInSplitScreenPrimary testNonResizeableWhenAlreadyInSplitScreenSecondary
Change-Id: Iefba54183273f1d075fbeacdcd87133eb1f2e3ad
when a app call setMode to set mode to non MODE_NORMAL modes many times with different audio managers in the same process, in this case the "pid" parameters are the same and the "cb" parameters are not the same, then the parameter "cb" registered and the "mCb" in hdlr are not the same, then NoSuchElementException will happen, and when the app was cleared in recent tasks the audio mode will not be reseted to MODE_NORMAL by expected flow.
Bug: 153649105
Test: AudioManagerTest#testAccessMode, CallDetailsTest#testSetVoipAudioMode
Test: manual cell and voip call
Signed-off-by: wumin3 <wumin3@xiaomi.com>
Change-Id: Ifb8c66372a8e994edcea628cad7dc2a7ee4763a6
Merged-In: Ifb8c66372a8e994edcea628cad7dc2a7ee4763a6
1) Refactor ParcelableConference - too many optional params
2) Add a new call direction parameter for external multiparty
call scenarios, where a conference is assigned a direction.
Bug: 153595501
Test: atest TelecomUnitTests TeleServiceTests
Change-Id: Icb576a07b9a7a81e228babfea53474be83da7593
- Attempting to set the visiblity when the task org is set can happen too
early and cause the app to not draw and preventing taskAppeared().
Instead, move this to setHasBeenVisible() to be in line with other
cases in the system where we defer setting visibility until the apps
are good to go. However, if we do this, we also need the first draw
(including the starting window) to trigger setHasBeenVisible() to
ensure the task org can hide it in time (the task org will also want
to receive the task as soon as possible). As a result of moving it out
of when the task org is set on the task the PIP transition then also
has to defer setting the visibility of the activity until the first
draw.
- Also fix a case where we are dispatching task info change before
taskAppeared(). There's a brief period where the task has an organizer
set, but the task org state has not added that task yet or sent
taskAppeared() because it has not yet drawn. But in that state, config
changes still happen causing a task info changed call to the task org.
Bug: 152809695
Bug: 152134460
Test: Open a bubble, ensure that we don't see the task in fullscreen
first. Enter pip, ensure that we don't see flash of the task
before SysUI can fade it in.
Test: atest PipAnimationControllerTest
Test: atest TaskOrganizerTests
Test: atest SplitScreenTests
Change-Id: I7d2ca2a2e538f07c73fff79686e040c159c1dce3
- If the task is previously not visible or has no visible children at
the point when we start controlling it in the task org, hide the task
until we send taskAppeared to ensure that the task org can reparent
and show it otherwise we could see a flash of the task.
This happens mainly from two cases:
- when starting a new task with a given win mode, we show it and wait
for first draw before notifying the task org
- when transitioning into pip from swipe up, the activity is hidden
and when it requests to enter pip is made visible again
Since we are hiding the task w/ the pending transaction, we also need
to defer all task org callbacks until that's applied to ensure proper
lifecycle of the calls.
- Also skip app transitions for task org tasks for now
This reverts commit d2fb07e4f632af9ab16667c58b1c1d40711f1544.
Bug: 152809695
Bug: 152134460
Test: Open a bubble, ensure that we don't see the task in fullscreen
first. Enter pip, ensure that we don't see flash of the task
before SysUI can fade it in.
Test: atest PipAnimationControllerTest
Test: atest TaskOrganizerTests
Test: atest SplitScreenTests
Change-Id: I9f1fc5931df1d69a7086c02b633347162cda94bf
Each player, with a separate pacakge name, needs to register a listener
with its own LocalMediaManager object constructed with that package
name.
An issue with this change is that it assumes that the app package for
the player never changes, which is a bad assumption for the mini player.
Luckily, the mini player doesn't show an output switcher, currently.
Fixes: 152469562
Test: manual -- play demo app and switch output to cast device. Verify
that media player shows name of cast device.
Test: manual -- while casting, play music from another app. Verify that
the media player shows phone speaker while the cast app shows cast
device.
Change-Id: Ica508d1b2f1dc51a28027604418c2a4f8d64aa13
Also, add a commit cool-off period such that any new commits
of the same data blob from the same committer will be treated
as if they occurred at the earlier commit time. This is to
ensure apps don't keep on committing the same blob and prevent
deletion of it.
Bug: 151378266
Test: atest --test-mapping apex/blobstore
Change-Id: I44b3fddbc465b7d6f00f40b299b91d3d84740989
Add tests to ensure that 1) an APK-in-APEX can overlay a /system APK
2) an APK-in-APEX can be overlaid be a /system APK. This is done
by installing the overlay APK or the target APK inside a test APEX.
Bug: 147731966
Test: atest OverlayRemountedTest
Change-Id: Id2c331f124994f55cd936b98ec2f27c9d3265424
There is a key signing problem in general-tests so move all overlays
to device-tests.
Bug: 141998755
Bug: 153631240
Bug: 153630797
Test: atest InstallOverlayTests
Change-Id: Ic8274031c8bd0aca5a6b7ccfee53b047334ab060
This exposes errors directly, which mirrors what PackageParser
used to do. Just a leftover TODO from the refactor.
Bug: 153472626
Test: manual install broken APK and check the error is logged
Change-Id: I06804ad7396196e28ce2177a671d4eef3958e1d6