Search in sources :

Example 11 with PackageProviderKey

use of com.android.server.location.LocationRequestStatistics.PackageProviderKey in project platform_frameworks_base by android.

the class LocationRequestStatisticsTest method testSinglePackage_stopAndRestart.

/**
     * Tests that adding a single package works correctly when it is stopped and restarted.
     */
public void testSinglePackage_stopAndRestart() {
    mStatistics.startRequesting(PACKAGE1, PROVIDER1, INTERVAL1);
    mStatistics.stopRequesting(PACKAGE1, PROVIDER1);
    mStatistics.startRequesting(PACKAGE1, PROVIDER1, INTERVAL1);
    assertEquals(1, mStatistics.statistics.size());
    PackageProviderKey key = mStatistics.statistics.keySet().iterator().next();
    assertEquals(PACKAGE1, key.packageName);
    assertEquals(PROVIDER1, key.providerName);
    PackageStatistics stats = mStatistics.statistics.values().iterator().next();
    verifyStatisticsTimes(stats);
    assertEquals(INTERVAL1, stats.getFastestIntervalMs());
    assertEquals(INTERVAL1, stats.getSlowestIntervalMs());
    assertTrue(stats.isActive());
    mStatistics.stopRequesting(PACKAGE1, PROVIDER1);
    assertFalse(stats.isActive());
}
Also used : PackageStatistics(com.android.server.location.LocationRequestStatistics.PackageStatistics) PackageProviderKey(com.android.server.location.LocationRequestStatistics.PackageProviderKey)

Example 12 with PackageProviderKey

use of com.android.server.location.LocationRequestStatistics.PackageProviderKey in project platform_frameworks_base by android.

the class LocationRequestStatisticsTest method testSinglePackage_multipleIntervals.

/**
     * Tests that adding a single package works correctly when multiple intervals are used.
     */
public void testSinglePackage_multipleIntervals() {
    mStatistics.startRequesting(PACKAGE1, PROVIDER1, INTERVAL1);
    mStatistics.startRequesting(PACKAGE1, PROVIDER1, INTERVAL2);
    assertEquals(1, mStatistics.statistics.size());
    PackageProviderKey key = mStatistics.statistics.keySet().iterator().next();
    assertEquals(PACKAGE1, key.packageName);
    assertEquals(PROVIDER1, key.providerName);
    PackageStatistics stats = mStatistics.statistics.values().iterator().next();
    verifyStatisticsTimes(stats);
    assertEquals(INTERVAL1, stats.getFastestIntervalMs());
    assertTrue(stats.isActive());
    mStatistics.stopRequesting(PACKAGE1, PROVIDER1);
    assertTrue(stats.isActive());
    mStatistics.stopRequesting(PACKAGE1, PROVIDER1);
    assertFalse(stats.isActive());
}
Also used : PackageStatistics(com.android.server.location.LocationRequestStatistics.PackageStatistics) PackageProviderKey(com.android.server.location.LocationRequestStatistics.PackageProviderKey)

Example 13 with PackageProviderKey

use of com.android.server.location.LocationRequestStatistics.PackageProviderKey in project platform_frameworks_base by android.

the class LocationRequestStatisticsTest method testMultiplePackages.

/**
     * Tests that adding multiple packages works correctly.
     */
public void testMultiplePackages() {
    mStatistics.startRequesting(PACKAGE1, PROVIDER1, INTERVAL1);
    mStatistics.startRequesting(PACKAGE1, PROVIDER2, INTERVAL1);
    mStatistics.startRequesting(PACKAGE1, PROVIDER2, INTERVAL2);
    mStatistics.startRequesting(PACKAGE2, PROVIDER1, INTERVAL1);
    assertEquals(3, mStatistics.statistics.size());
    PackageProviderKey key1 = new PackageProviderKey(PACKAGE1, PROVIDER1);
    PackageStatistics stats1 = mStatistics.statistics.get(key1);
    verifyStatisticsTimes(stats1);
    assertEquals(INTERVAL1, stats1.getSlowestIntervalMs());
    assertEquals(INTERVAL1, stats1.getFastestIntervalMs());
    assertTrue(stats1.isActive());
    PackageProviderKey key2 = new PackageProviderKey(PACKAGE1, PROVIDER2);
    PackageStatistics stats2 = mStatistics.statistics.get(key2);
    verifyStatisticsTimes(stats2);
    assertEquals(INTERVAL2, stats2.getSlowestIntervalMs());
    assertEquals(INTERVAL1, stats2.getFastestIntervalMs());
    assertTrue(stats2.isActive());
    PackageProviderKey key3 = new PackageProviderKey(PACKAGE2, PROVIDER1);
    PackageStatistics stats3 = mStatistics.statistics.get(key3);
    verifyStatisticsTimes(stats3);
    assertEquals(INTERVAL1, stats3.getSlowestIntervalMs());
    assertEquals(INTERVAL1, stats3.getFastestIntervalMs());
    assertTrue(stats3.isActive());
    mStatistics.stopRequesting(PACKAGE1, PROVIDER1);
    assertFalse(stats1.isActive());
    assertTrue(stats2.isActive());
    assertTrue(stats3.isActive());
    mStatistics.stopRequesting(PACKAGE1, PROVIDER2);
    assertFalse(stats1.isActive());
    assertTrue(stats2.isActive());
    assertTrue(stats3.isActive());
    mStatistics.stopRequesting(PACKAGE1, PROVIDER2);
    assertFalse(stats2.isActive());
    mStatistics.stopRequesting(PACKAGE2, PROVIDER1);
    assertFalse(stats1.isActive());
    assertFalse(stats2.isActive());
    assertFalse(stats3.isActive());
}
Also used : PackageStatistics(com.android.server.location.LocationRequestStatistics.PackageStatistics) PackageProviderKey(com.android.server.location.LocationRequestStatistics.PackageProviderKey)

Example 14 with PackageProviderKey

use of com.android.server.location.LocationRequestStatistics.PackageProviderKey in project android_frameworks_base by crdroidandroid.

the class LocationRequestStatisticsTest method testSinglePackage_multipleIntervals.

/**
     * Tests that adding a single package works correctly when multiple intervals are used.
     */
public void testSinglePackage_multipleIntervals() {
    mStatistics.startRequesting(PACKAGE1, PROVIDER1, INTERVAL1);
    mStatistics.startRequesting(PACKAGE1, PROVIDER1, INTERVAL2);
    assertEquals(1, mStatistics.statistics.size());
    PackageProviderKey key = mStatistics.statistics.keySet().iterator().next();
    assertEquals(PACKAGE1, key.packageName);
    assertEquals(PROVIDER1, key.providerName);
    PackageStatistics stats = mStatistics.statistics.values().iterator().next();
    verifyStatisticsTimes(stats);
    assertEquals(INTERVAL1, stats.getFastestIntervalMs());
    assertTrue(stats.isActive());
    mStatistics.stopRequesting(PACKAGE1, PROVIDER1);
    assertTrue(stats.isActive());
    mStatistics.stopRequesting(PACKAGE1, PROVIDER1);
    assertFalse(stats.isActive());
}
Also used : PackageStatistics(com.android.server.location.LocationRequestStatistics.PackageStatistics) PackageProviderKey(com.android.server.location.LocationRequestStatistics.PackageProviderKey)

Example 15 with PackageProviderKey

use of com.android.server.location.LocationRequestStatistics.PackageProviderKey in project android_frameworks_base by crdroidandroid.

the class LocationRequestStatisticsTest method testSinglePackage_stopAndRestart.

/**
     * Tests that adding a single package works correctly when it is stopped and restarted.
     */
public void testSinglePackage_stopAndRestart() {
    mStatistics.startRequesting(PACKAGE1, PROVIDER1, INTERVAL1);
    mStatistics.stopRequesting(PACKAGE1, PROVIDER1);
    mStatistics.startRequesting(PACKAGE1, PROVIDER1, INTERVAL1);
    assertEquals(1, mStatistics.statistics.size());
    PackageProviderKey key = mStatistics.statistics.keySet().iterator().next();
    assertEquals(PACKAGE1, key.packageName);
    assertEquals(PROVIDER1, key.providerName);
    PackageStatistics stats = mStatistics.statistics.values().iterator().next();
    verifyStatisticsTimes(stats);
    assertEquals(INTERVAL1, stats.getFastestIntervalMs());
    assertEquals(INTERVAL1, stats.getSlowestIntervalMs());
    assertTrue(stats.isActive());
    mStatistics.stopRequesting(PACKAGE1, PROVIDER1);
    assertFalse(stats.isActive());
}
Also used : PackageStatistics(com.android.server.location.LocationRequestStatistics.PackageStatistics) PackageProviderKey(com.android.server.location.LocationRequestStatistics.PackageProviderKey)

Aggregations

PackageProviderKey (com.android.server.location.LocationRequestStatistics.PackageProviderKey)25 PackageStatistics (com.android.server.location.LocationRequestStatistics.PackageStatistics)25 BroadcastReceiver (android.content.BroadcastReceiver)5 Location (android.location.Location)5 LocationProviderInterface (com.android.server.location.LocationProviderInterface)5 LocationProviderProxy (com.android.server.location.LocationProviderProxy)5 MockProvider (com.android.server.location.MockProvider)5 ArrayList (java.util.ArrayList)5 HashMap (java.util.HashMap)5 Map (java.util.Map)5