Fix Flaky testTrafficStatsForLocalhost
This commit fixes several identified sources of flakiness in
this test:
1. Upper bound of verifying getIfaceStats did not include the
lingering traffic, which is the major cause of the flakiness.
Relaxes the upper bound to align with the expectations of
other APIs.
2. TCP syn/syn-ack packets have a header size of 40 bytes due
to TCP options, not 32 bytes. The test had an incorrect
assumption about the upper bound, causing flakiness when
encountering 16 bytes more than expected.
3. The `getTotalStats` API sometimes reports 2 packets short
because fin/fin-ack packets cannot be counted if the socket
has already closed. Relaxes the lower bound to
align with the expectations of other APIs.
Test: atest CtsNetTestCases:android.net.cts.TrafficStatsTest#testTrafficStatsForLocalhost \
--rerun-until-failure 100
Bug: 385238831
(cherry picked from https://android-review.googlesource.com/q/commit:09f58774adc0a1e9e8d5230be17f66d8ce286024)
Merged-In: Ibb38cfe0bde5afdf9741583cdff153153a9f855e
Change-Id: Ibb38cfe0bde5afdf9741583cdff153153a9f855e
1 file changed