summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Peng Wang <wanpeng@google.com> 2024-11-26 00:04:56 +0000
committer Peng Wang <wanpeng@google.com> 2024-11-26 00:29:43 +0000
commit51072aeb59d44efde213c583aa49682aae943a87 (patch)
treeae0ac13a2219524e019c45978528b5b20aad2258
parentb3200e9e925afaefb0d93071ac8c323c943a6978 (diff)
Add datastall status in WiFi Scorer stats
Flag: com.android.wifi.flags.wifi_scorer_new_stats_collection Bug: 380947021 Test: atest and on device test Change-Id: I38decfc949de594d1b73ca96d82a9ce50e276b2f
-rw-r--r--framework/java/android/net/wifi/WifiUsabilityStatsEntry.java13
-rw-r--r--framework/tests/src/android/net/wifi/WifiManagerTest.java2
-rw-r--r--framework/tests/src/android/net/wifi/WifiUsabilityStatsEntryTest.java9
-rw-r--r--service/java/com/android/server/wifi/ClientModeImpl.java3
-rw-r--r--service/java/com/android/server/wifi/WifiMetrics.java7
-rw-r--r--service/java/com/android/server/wifi/WifiScoreReport.java3
-rw-r--r--service/proto/src/metrics.proto2
-rw-r--r--service/tests/wifitests/src/com/android/server/wifi/ClientModeImplTest.java5
-rw-r--r--service/tests/wifitests/src/com/android/server/wifi/WifiMetricsTest.java38
9 files changed, 52 insertions, 30 deletions
diff --git a/framework/java/android/net/wifi/WifiUsabilityStatsEntry.java b/framework/java/android/net/wifi/WifiUsabilityStatsEntry.java
index ec9f4ad41c..0b86c1d4e3 100644
--- a/framework/java/android/net/wifi/WifiUsabilityStatsEntry.java
+++ b/framework/java/android/net/wifi/WifiUsabilityStatsEntry.java
@@ -185,6 +185,8 @@ public final class WifiUsabilityStatsEntry implements Parcelable {
private final int mVoipMode;
/** Thread device role */
private final int mThreadDeviceRole;
+ /** Data stall status */
+ private final int mStatusDataStall;
/** {@hide} */
@Retention(RetentionPolicy.SOURCE)
@@ -1192,7 +1194,7 @@ public final class WifiUsabilityStatsEntry implements Parcelable {
int isThroughputPredictorDownstreamSufficient,
int isThroughputPredictorUpstreamSufficient, boolean isBluetoothConnected,
int uwbAdapterState, boolean isLowLatencyActivated, int maxSupportedTxLinkSpeed,
- int maxSupportedRxLinkSpeed, int voipMode, int threadDeviceRole) {
+ int maxSupportedRxLinkSpeed, int voipMode, int threadDeviceRole, int statusDataStall) {
mTimeStampMillis = timeStampMillis;
mRssi = rssi;
mLinkSpeedMbps = linkSpeedMbps;
@@ -1246,6 +1248,7 @@ public final class WifiUsabilityStatsEntry implements Parcelable {
mMaxSupportedRxLinkSpeed = maxSupportedRxLinkSpeed;
mVoipMode = voipMode;
mThreadDeviceRole = threadDeviceRole;
+ mStatusDataStall = statusDataStall;
}
/** Implement the Parcelable interface */
@@ -1308,6 +1311,7 @@ public final class WifiUsabilityStatsEntry implements Parcelable {
dest.writeInt(mMaxSupportedRxLinkSpeed);
dest.writeInt(mVoipMode);
dest.writeInt(mThreadDeviceRole);
+ dest.writeInt(mStatusDataStall);
}
/** Implement the Parcelable interface */
@@ -1333,7 +1337,7 @@ public final class WifiUsabilityStatsEntry implements Parcelable {
in.readInt(), in.readLong(), in.readLong(), in.readInt(), in.readInt(),
in.readInt(), in.readInt(), in.readInt(), in.readInt(), in.readBoolean(),
in.readInt(), in.readBoolean(), in.readInt(), in.readInt(), in.readInt(),
- in.readInt()
+ in.readInt(), in.readInt()
);
}
@@ -2136,4 +2140,9 @@ public final class WifiUsabilityStatsEntry implements Parcelable {
public int getThreadDeviceRole() {
return mThreadDeviceRole;
}
+
+ /** @hide */
+ public int getStatusDataStall() {
+ return mStatusDataStall;
+ }
}
diff --git a/framework/tests/src/android/net/wifi/WifiManagerTest.java b/framework/tests/src/android/net/wifi/WifiManagerTest.java
index 0a14e014b0..195c093000 100644
--- a/framework/tests/src/android/net/wifi/WifiManagerTest.java
+++ b/framework/tests/src/android/net/wifi/WifiManagerTest.java
@@ -2582,7 +2582,7 @@ public class WifiManagerTest {
100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 1, 100, 10,
100, 27, contentionTimeStats, rateStats, radioStats, 101, true, true, true,
0, 10, 10, true, linkStats, 1, 0, 10, 20, 1, 2, 1, 1, 1, 1, false, 0,
- false, 100, 100, 1, 3));
+ false, 100, 100, 1, 3, 1));
verify(mOnWifiUsabilityStatsListener).onWifiUsabilityStats(anyInt(), anyBoolean(),
any(WifiUsabilityStatsEntry.class));
}
diff --git a/framework/tests/src/android/net/wifi/WifiUsabilityStatsEntryTest.java b/framework/tests/src/android/net/wifi/WifiUsabilityStatsEntryTest.java
index e13efdf1fb..a70dc446c4 100644
--- a/framework/tests/src/android/net/wifi/WifiUsabilityStatsEntryTest.java
+++ b/framework/tests/src/android/net/wifi/WifiUsabilityStatsEntryTest.java
@@ -116,7 +116,7 @@ public class WifiUsabilityStatsEntryTest {
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
32, contentionTimeStats, rateStats, radioStats, 100, true,
true, true, 23, 24, 25, true, linkStats, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
- false, 36, false, 37, 38, 39, 40);
+ false, 36, false, 37, 38, 39, 40, 41);
assertEquals(32, usabilityStatsEntry.getTimeSliceDutyCycleInPercent());
WifiUsabilityStatsEntry usabilityStatsEntryWithInvalidDutyCycleValue =
@@ -124,7 +124,7 @@ public class WifiUsabilityStatsEntryTest {
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
21, 22, -1, contentionTimeStats, rateStats, radioStats, 101, true, true,
true, 23, 24, 25, true, linkStats, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
- true, 36, true, 37, 38, 39, 40);
+ true, 36, true, 37, 38, 39, 40, 41);
try {
usabilityStatsEntryWithInvalidDutyCycleValue.getTimeSliceDutyCycleInPercent();
fail();
@@ -182,7 +182,7 @@ public class WifiUsabilityStatsEntryTest {
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
50, contentionTimeStats, rateStats, radioStats, 102, true,
true, true, 23, 24, 25, true, linkStats, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
- true, 36, false, 37, 38, 39, 40
+ true, 36, false, 37, 38, 39, 40, 41
);
}
@@ -656,6 +656,7 @@ public class WifiUsabilityStatsEntryTest {
assertEquals(expected.isThroughputPredictorUpstreamSufficient(),
actual.isThroughputPredictorUpstreamSufficient());
assertEquals(expected.isBluetoothConnected(), actual.isBluetoothConnected());
+ assertEquals(expected.getStatusDataStall(), actual.getStatusDataStall());
}
/**
@@ -673,7 +674,7 @@ public class WifiUsabilityStatsEntryTest {
WifiUsabilityStatsEntry usabilityStatsEntry = new WifiUsabilityStatsEntry(
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
32, null, null, null, 100, true, true, true, 23, 24, 25, true, linkStats, 26, 27,
- 28, 29, 30, 31, 32, 33, 34, 35, true, 36, true, 37, 38, 39, 40);
+ 28, 29, 30, 31, 32, 33, 34, 35, true, 36, true, 37, 38, 39, 40, 41);
assertThrows("linkId is invalid - " + MloLink.INVALID_MLO_LINK_ID,
NoSuchElementException.class,
diff --git a/service/java/com/android/server/wifi/ClientModeImpl.java b/service/java/com/android/server/wifi/ClientModeImpl.java
index dd7fca9428..4bc7c04c47 100644
--- a/service/java/com/android/server/wifi/ClientModeImpl.java
+++ b/service/java/com/android/server/wifi/ClientModeImpl.java
@@ -6939,7 +6939,8 @@ public class ClientModeImpl extends StateMachine implements ClientMode {
// mWifiMetrics.logScorerPredictionResult
mWifiMetrics.updateWiFiEvaluationAndScorerStats(mWifiScoreReport.getLingering(),
mWifiInfo, mLastConnectionCapabilities);
- mWifiMetrics.updateWifiUsabilityStatsEntries(mInterfaceName, mWifiInfo, stats, oneshot);
+ mWifiMetrics.updateWifiUsabilityStatsEntries(mInterfaceName, mWifiInfo, stats, oneshot,
+ statusDataStall);
if (getClientRoleForMetrics(getConnectedWifiConfiguration())
== WIFI_CONNECTION_RESULT_REPORTED__ROLE__ROLE_CLIENT_PRIMARY) {
mWifiMetrics.logScorerPredictionResult(mWifiInjector.hasActiveModem(),
diff --git a/service/java/com/android/server/wifi/WifiMetrics.java b/service/java/com/android/server/wifi/WifiMetrics.java
index 0e191468cf..61de435e94 100644
--- a/service/java/com/android/server/wifi/WifiMetrics.java
+++ b/service/java/com/android/server/wifi/WifiMetrics.java
@@ -5296,6 +5296,7 @@ public class WifiMetrics {
line.append(",thread_device_role=" + entry.threadDeviceRole);
line.append(",capture_event_type=" + entry.captureEventType);
line.append(",capture_event_type_subcode=" + entry.captureEventTypeSubcode);
+ line.append(",status_data_stall=" + entry.statusDataStall);
pw.println(line.toString());
}
@@ -7154,7 +7155,7 @@ public class WifiMetrics {
* oneshot is used to indicate that this call came from CMD_ONESHOT_RSSI_POLL.
*/
public void updateWifiUsabilityStatsEntries(String ifaceName, WifiInfo info,
- WifiLinkLayerStats stats, boolean oneshot) {
+ WifiLinkLayerStats stats, boolean oneshot, int statusDataStall) {
// This is only collected for primary STA currently because RSSI polling is disabled for
// non-primary STAs.
synchronized (mLock) {
@@ -7549,6 +7550,7 @@ public class WifiMetrics {
mWifiDataStall.getTxTransmittedBytes();
wifiUsabilityStatsEntry.rxTransmittedBytes =
mWifiDataStall.getRxTransmittedBytes();
+ wifiUsabilityStatsEntry.statusDataStall = statusDataStall;
}
}
if (mWifiSettingsStore != null) {
@@ -7932,7 +7934,7 @@ public class WifiMetrics {
s.isThroughputPredictorDownstreamSufficient,
s.isThroughputPredictorUpstreamSufficient, s.isBluetoothConnected,
s.uwbAdapterState, s.isLowLatencyActivated, s.maxSupportedTxLinkspeed,
- s.maxSupportedRxLinkspeed, s.voipMode, s.threadDeviceRole
+ s.maxSupportedRxLinkspeed, s.voipMode, s.threadDeviceRole, s.statusDataStall
);
}
@@ -8148,6 +8150,7 @@ public class WifiMetrics {
out.maxSupportedRxLinkspeed = s.maxSupportedRxLinkspeed;
out.voipMode = s.voipMode;
out.threadDeviceRole = s.threadDeviceRole;
+ out.statusDataStall = s.statusDataStall;
return out;
}
diff --git a/service/java/com/android/server/wifi/WifiScoreReport.java b/service/java/com/android/server/wifi/WifiScoreReport.java
index 6f0f718c03..a65fe8a862 100644
--- a/service/java/com/android/server/wifi/WifiScoreReport.java
+++ b/service/java/com/android/server/wifi/WifiScoreReport.java
@@ -257,7 +257,8 @@ public class WifiScoreReport {
}
// TODO(b/153075963): This should not be plumbed through WifiMetrics
- mWifiMetrics.updateWifiUsabilityStatsEntries(mInterfaceName, mWifiInfo, stats, false);
+ mWifiMetrics.updateWifiUsabilityStatsEntries(mInterfaceName, mWifiInfo, stats, false,
+ 0);
}
@Override
diff --git a/service/proto/src/metrics.proto b/service/proto/src/metrics.proto
index 5f577b9afe..4a53854d81 100644
--- a/service/proto/src/metrics.proto
+++ b/service/proto/src/metrics.proto
@@ -2813,6 +2813,8 @@ message WifiUsabilityStatsEntry {
// Some capture event types (eg. ip reachability lost) have a code associated
// with them. This code is stored here.
optional int32 capture_event_type_subcode = 64;
+
+ optional int32 status_data_stall = 65;
}
message ContentionTimeStats {
diff --git a/service/tests/wifitests/src/com/android/server/wifi/ClientModeImplTest.java b/service/tests/wifitests/src/com/android/server/wifi/ClientModeImplTest.java
index 8244607539..0b98979e64 100644
--- a/service/tests/wifitests/src/com/android/server/wifi/ClientModeImplTest.java
+++ b/service/tests/wifitests/src/com/android/server/wifi/ClientModeImplTest.java
@@ -6190,7 +6190,8 @@ public class ClientModeImplTest extends WifiBaseTest {
.thenReturn(WifiIsUnusableEvent.TYPE_UNKNOWN);
mCmi.sendMessage(ClientModeImpl.CMD_RSSI_POLL, 1);
mLooper.dispatchAll();
- verify(mWifiMetrics).updateWifiUsabilityStatsEntries(any(), any(), eq(stats), eq(false));
+ verify(mWifiMetrics).updateWifiUsabilityStatsEntries(any(), any(), eq(stats), eq(false),
+ anyInt());
when(mWifiDataStall.checkDataStallAndThroughputSufficiency(any(), any(), any(), any(),
any(), anyLong(), anyLong()))
@@ -6199,7 +6200,7 @@ public class ClientModeImplTest extends WifiBaseTest {
mCmi.sendMessage(ClientModeImpl.CMD_RSSI_POLL, 1);
mLooper.dispatchAll();
verify(mWifiMetrics, times(2)).updateWifiUsabilityStatsEntries(any(), any(), eq(stats),
- eq(false));
+ eq(false), anyInt());
}
/**
diff --git a/service/tests/wifitests/src/com/android/server/wifi/WifiMetricsTest.java b/service/tests/wifitests/src/com/android/server/wifi/WifiMetricsTest.java
index 34e2a32379..e317d31dbe 100644
--- a/service/tests/wifitests/src/com/android/server/wifi/WifiMetricsTest.java
+++ b/service/tests/wifitests/src/com/android/server/wifi/WifiMetricsTest.java
@@ -4334,7 +4334,7 @@ public class WifiMetricsTest extends WifiBaseTest {
when(info.getLinkSpeed()).thenReturn(nextRandInt());
WifiLinkLayerStats stats = start;
for (int i = 0; i < WifiMetrics.NUM_WIFI_USABILITY_STATS_ENTRIES_PER_WIFI_GOOD; i++) {
- mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats, false);
+ mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats, false, 0);
stats = nextRandomStats(stats);
}
return stats;
@@ -4347,8 +4347,8 @@ public class WifiMetricsTest extends WifiBaseTest {
when(info.getLinkSpeed()).thenReturn(nextRandInt());
WifiLinkLayerStats stats1 = start;
WifiLinkLayerStats stats2 = nextRandomStats(stats1);
- mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats1, false);
- mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats2, false);
+ mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats1, false, 0);
+ mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats2, false, 0);
mWifiMetrics.addToWifiUsabilityStatsList(TEST_IFACE_NAME, WifiUsabilityStats.LABEL_BAD,
WifiUsabilityStats.TYPE_DATA_STALL_BAD_TX, -1);
return nextRandomStats(stats2);
@@ -4381,14 +4381,14 @@ public class WifiMetricsTest extends WifiBaseTest {
mWifiMetrics.incrementWifiUsabilityScoreCount(TEST_IFACE_NAME, 2, 55, 15);
mWifiMetrics.logLinkProbeSuccess(
TEST_IFACE_NAME, nextRandInt(), nextRandInt(), nextRandInt(), 12);
- mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats1, false);
+ mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats1, false, 0);
mWifiMetrics.incrementWifiScoreCount(TEST_IFACE_NAME, 58);
mWifiMetrics.incrementWifiUsabilityScoreCount(TEST_IFACE_NAME, 3, 56, 15);
mWifiMetrics.logLinkProbeFailure(TEST_IFACE_NAME, nextRandInt(), nextRandInt(),
nextRandInt(), nextRandInt());
mWifiMetrics.enterDeviceMobilityState(DEVICE_MOBILITY_STATE_HIGH_MVMT);
- mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats2, false);
+ mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats2, false, 0);
assertEquals(stats2.beacon_rx, mWifiMetrics.getTotalBeaconRxCount());
dumpProtoAndDeserialize();
@@ -4688,7 +4688,8 @@ public class WifiMetricsTest extends WifiBaseTest {
ActiveModeManager.ROLE_CLIENT_SECONDARY_LONG_LIVED);
mModeChangeCallbackArgumentCaptor.getValue()
.onActiveModeManagerRoleChanged(concreteClientModeManager);
- mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, linkLayerStats, false);
+ mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, linkLayerStats, false,
+ 0);
verify(mOnWifiUsabilityStatsListener, never()).onWifiUsabilityStats(anyInt(), anyBoolean(),
any());
@@ -4698,7 +4699,8 @@ public class WifiMetricsTest extends WifiBaseTest {
when(concreteClientModeManager.getRole()).thenReturn(ActiveModeManager.ROLE_CLIENT_PRIMARY);
mModeChangeCallbackArgumentCaptor.getValue()
.onActiveModeManagerRoleChanged(concreteClientModeManager);
- mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, linkLayerStats, false);
+ mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, linkLayerStats, false,
+ 0);
// Client should get the stats.
verify(mOnWifiUsabilityStatsListener).onWifiUsabilityStats(anyInt(), anyBoolean(),
@@ -4834,7 +4836,8 @@ public class WifiMetricsTest extends WifiBaseTest {
when(info.getRssi()).thenReturn(nextRandInt());
when(info.getLinkSpeed()).thenReturn(nextRandInt());
WifiLinkLayerStats linkLayerStats = nextRandomStats(new WifiLinkLayerStats());
- mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, linkLayerStats, false);
+ mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, linkLayerStats, false,
+ 0);
verify(mOnWifiUsabilityStatsListener, never()).onWifiUsabilityStats(anyInt(),
anyBoolean(), any());
@@ -4863,7 +4866,8 @@ public class WifiMetricsTest extends WifiBaseTest {
when(info.getRssi()).thenReturn(nextRandInt());
when(info.getLinkSpeed()).thenReturn(nextRandInt());
WifiLinkLayerStats linkLayerStats = nextRandomStats(new WifiLinkLayerStats());
- mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, linkLayerStats, false);
+ mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, linkLayerStats, false,
+ 0);
// Client should not get any message listener add failed.
verify(mOnWifiUsabilityStatsListener, never()).onWifiUsabilityStats(anyInt(),
@@ -4883,7 +4887,7 @@ public class WifiMetricsTest extends WifiBaseTest {
long eventTimeMs = nextRandInt();
when(mClock.getElapsedSinceBootMillis()).thenReturn(eventTimeMs);
WifiLinkLayerStats stats1 = nextRandomStats(new WifiLinkLayerStats());
- mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats1, false);
+ mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats1, false, 0);
// Firmware alert occurs
mWifiMetrics.logFirmwareAlert(TEST_IFACE_NAME, 2);
@@ -5762,13 +5766,13 @@ public class WifiMetricsTest extends WifiBaseTest {
WifiIsUnusableEvent.TYPE_DATA_STALL_BAD_TX, -1);
}
when(mClock.getElapsedSinceBootMillis()).thenReturn(elapsedTimeAfterBreach);
- mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats2, false);
+ mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats2, false, 0);
}
// Simulate adding one LABEL_BAD WifiUsabilityStats
private void addOneBadWifiUsabilityStats(WifiInfo info) {
WifiLinkLayerStats stats1 = new WifiLinkLayerStats();
- mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats1, false);
+ mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats1, false, 0);
mWifiMetrics.addToWifiUsabilityStatsList(TEST_IFACE_NAME, WifiUsabilityStats.LABEL_BAD,
WifiUsabilityStats.TYPE_DATA_STALL_BAD_TX, -1);
}
@@ -5778,13 +5782,13 @@ public class WifiMetricsTest extends WifiBaseTest {
int upper = WifiMetrics.LOW_WIFI_SCORE + 7;
int lower = WifiMetrics.LOW_WIFI_SCORE - 8;
mWifiMetrics.incrementWifiScoreCount(TEST_IFACE_NAME, upper);
- mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats2, false);
+ mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats2, false, 0);
stats2 = nextRandomStats(stats2);
long timeMs = 0;
when(mClock.getElapsedSinceBootMillis()).thenReturn(timeMs);
// Wifi score breaches low
mWifiMetrics.incrementWifiScoreCount(TEST_IFACE_NAME, lower);
- mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats2, false);
+ mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats2, false, 0);
stats2 = nextRandomStats(stats2);
return stats2;
}
@@ -5795,13 +5799,13 @@ public class WifiMetricsTest extends WifiBaseTest {
int upper = WifiMetrics.LOW_WIFI_USABILITY_SCORE + 7;
int lower = WifiMetrics.LOW_WIFI_USABILITY_SCORE - 8;
mWifiMetrics.incrementWifiUsabilityScoreCount(TEST_IFACE_NAME, 1, upper, 30);
- mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats2, false);
+ mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats2, false, 0);
stats2 = nextRandomStats(stats2);
long timeMs = 0;
when(mClock.getElapsedSinceBootMillis()).thenReturn(timeMs);
// Wifi usability score breaches low
mWifiMetrics.incrementWifiUsabilityScoreCount(TEST_IFACE_NAME, 2, lower, 30);
- mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats2, false);
+ mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats2, false, 0);
stats2 = nextRandomStats(stats2);
return stats2;
}
@@ -5845,7 +5849,7 @@ public class WifiMetricsTest extends WifiBaseTest {
when(info.getRssi()).thenReturn(nextRandInt());
when(info.getLinkSpeed()).thenReturn(nextRandInt());
WifiLinkLayerStats stats1 = nextRandomStats(new WifiLinkLayerStats());
- mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats1, false);
+ mWifiMetrics.updateWifiUsabilityStatsEntries(TEST_IFACE_NAME, info, stats1, false, 0);
// Add 1 LABEL_GOOD
WifiLinkLayerStats statsGood = addGoodWifiUsabilityStats(nextRandomStats(stats1));