Commit graph android_packages_modules_Co.../staticlibs/tests/unit/src
Message SHA1
Merge "Support common MacAddress Type in Struct."
Xiao Ma   authored and   Gerrit Code Review   commited 2020-12-28 02:03:56 +00:00
ed82179342
Add DeviceConfigUtils version caching and tests
Querying the APK version can be relatively expensive, so cache it with a
static. Package version cannot change without restarting the process.

Also add some testing for flags being equal to the min/max values.

Bug: 17454103
Test: atest NetworkStaticLibTests
Change-Id: I18c298beb843e0a9f76162d353623bb15ab155f1

Remi NGUYEN VAN   commited 2020-12-25 16:48:33 +09:00
31c6d82be0
Add getDisplayTransport
While networks can have multiple transports, users generally think of
them as "wifi", "mobile data", "vpn" and expect them to be classified
as such in UI such as settings.
Add a getDisplayTransport utility that returns which transport should
be used for UI display, from a list of transports of a network.

Bug: 174436414
Test: atest NetworkStaticLibTests
Change-Id: Iaefb47bcaa2f6ce2e7a2ae5011c340154009ac3c

Remi NGUYEN VAN   commited 2020-12-25 16:23:34 +09:00
a744975b3e
Split NetworkStackUtils to frameworks/libs/net
Split DeviceConfig and collections-related utilities to CollectionUtils
and DeviceConfigUtils in frameworks/libs/net.

Also add implementations for contains(array, value), to avoid usage of
internal non-API utils.

The original tests are based on mockito-extended, so also add to
NetworkStackTests as a dependency. This also requires setting the test
app as debuggable in its manifest.

Bug: 17454103
Test: atest NetworkStaticLibTests
Change-Id: Ie9bed66a08b7370ebe50d0a7240b788f8b31aa77

Remi NGUYEN VAN   commited 2020-12-25 16:23:25 +09:00
b86b34da48
Support common MacAddress Type in Struct.
MacAddress class is helpful to represent a 48-bits long MAC Address,
we have to use 6-bytes array to interpret a MAC Address without a
specific annotation type. To better parse the MAC Address appeared
in the ether header, link-layer address option or Bpf class, it's
worth supporting this specific type.

Bug: 163492391
Test: atest NetworkStaticLibTests
Change-Id: I1f716e5d4f38372fc5b7ee32e208d55a072c1e51

Xiao Ma   commited 2020-12-24 04:59:21 +00:00
81a17c3fc6
Merge "Move util classes to their destination package"
Chalard Jean   authored and   Gerrit Code Review   commited 2020-12-21 05:35:09 +00:00
1aadbb0afd
Move Struct.java to com.android.net.module.util package.
Bug: 163492391
Test: atest NetworkStaticLibTests
Change-Id: If7d54f0356ce4d6426011914df0a2e85784daebd

Xiao Ma   commited 2020-12-17 15:36:23 +00:00
ce033d4824
Move util classes to their destination package
Test: FrameworksWifiTests FrameworksNetTests
Change-Id: I93e9cfd968e08f983e3fd9f7196c455c79a0f32d
Merged-In: Id19c650246a8f3d55d7b6a874840a6eebcd9eb17

Chalard Jean   commited 2020-12-16 08:50:20 +09:00
ceaf7d0edc
Add new APIs writeToByteBuffer/writeToBytes for generic Struct class.
Split the original U64/UBE64 into two groups: U63/UBE63 which could be
represented by long primitive directly and U64/UBE64 which should be
represented by BigInteger class.

Also fix the endianness-related issue to support both of big-endian or
little-endian input ByteBuffer, and writeToBytes API outputs the bytes
array in appropriate order then.

Bug: 163492391
Test: atest android.net.util.StructTest --rerun-until-failure
Change-Id: Ie9c07fac6dcfceb8efdf1d6b56ce6ff1e845f477

Xiao Ma   commited 2020-12-07 17:35:03 +09:00
f4cb6d6789
Introduce cache schema for generic Struct class.
Bug: 163492391
Test: atest android.net.util.StructTest --rerun-until-failure
Change-Id: Idffad7d3b907d8853ed7d296808a2e0e2736cbbe

Xiao Ma   commited 2020-11-24 18:03:07 +09:00
a76690a3b7
Add basic tests for CompareResult
...as suggested in aosp/1448415

Test: this
Change-Id: I8469ba6cbcbd9c1b414cfde6cda27505c210526c

Chalard Jean   commited 2020-10-19 16:17:50 +09:00
c746481d10
Improve code style in Struct.java and add tests for Type.U64 represented
by long primitive.

Bug: 163492391
Test: atest android.net.util.StructTest --rerun-until-failure
Change-Id: I0120d7ab063d9d170e8b6e6a6077f8f86db93d67

Xiao Ma   commited 2020-10-13 06:59:51 +00:00
ea53144db0
Merge "Define a generic class to parse structured message."
Xiao Ma   authored and   Gerrit Code Review   commited 2020-10-09 13:20:31 +00:00
1f2650f6d6
Define a generic class to parse structured message.
Bug: 163492391
Test: atest android.net.util.StructTest --rerun-until-failure
Change-Id: I1848984d80998d87acccc52287a351d27708dedc

Xiao Ma   commited 2020-10-09 18:25:34 +09:00
6f95cefd38
Move IpUtils to frameworks/libs/net
The utility classes are useful for mainline modules and their tests, for
example IpClientIntegrationTest.

Bug: 168868607
Test: m && atest NetworkStackCoverageTests
Change-Id: Ie3eea7731fa45cd58cd4acf8249da68ff3eb6a70

Remi NGUYEN VAN   commited 2020-10-05 11:25:18 +09:00
ff57cec7d1
Rename utils to remove the Kt suffix
Nobody cares what language this is written in

Test: builds
Change-Id: I3ed3bce276479fd503e716a06fd4912da8c49eda

Chalard Jean   commited 2020-07-31 15:24:34 +09:00
b1856fe06b
Move utilities to libs/net
These files used to be in the network stack directory, but the libs
directory is a much more suitable place for them.

Also fix a typo : ConcurrentIntepreter → ConcurrentInterpreter

Also move {FdEvents,Packet}Reader to internal annotations. That's
what they should have been using in the first place anyway.

Note that this does not fix preupload issues reported by
checkstyle to make review easier. The fixes are in a followup
patch to this one.

Test: checkbuild
Change-Id: I675077fd42cbb092c0e6bd56571f2fc022e582fd

Chalard Jean   commited 2020-07-30 22:10:51 +09:00
48c6c7d838
Move Inet[4]AddressUtils to libs/net
The classes should not be picked up from frameworks/base, as they are
part of several mainline modules.

Bug: 151052811
Test: m; manual: flashed, wifi and telephony working
Test: atest NetworkStackCoverageTests
(clean cherry-pick from internal branch)
Merged-In: I2b3dcf2e238be047147232769602df56894dc6b1

Change-Id: I2b3dcf2e238be047147232769602df56894dc6b1

Remi NGUYEN VAN   commited 2020-06-30 19:19:52 +09:00
f109837101
Move DnsPacket to libs/net
This class might be used by some mainline modules.
Cut the dependency between it and framework base classes.

Bug: 151052811
Test: atest DnsPacketTest
Test: atest DnsResolverTest
(clean cherry-pick from internal branch)
Merged-In: Id12aaedb6dd75144ca9b58b94bfcd845a1f16360
Change-Id: Id12aaedb6dd75144ca9b58b94bfcd845a1f16360

Luke Huang   commited 2020-06-24 19:37:25 +08:00
85c290e33e
Merge "Add IpRange utility to convert IP ranges to IpPrefix"
Benedict Wong   authored and   Gerrit Code Review   commited 2020-02-04 22:49:50 +00:00
3fa91de697
Add IpRange utility to convert IP ranges to IpPrefix
IKE Traffic Selectors are defined to be an IP range, with a start and an
end IP address. However, the Android system works in IP Prefixes. This
commit adds a utility to convert between the two.

Bug: 144246767
Test: New tests added, passing
Change-Id: I428fee682dea21346f92c5c628642dee3c785ba9

Benedict Wong   commited 2020-01-29 23:08:10 -08:00
db0915c14c
Update CompareOrUpdateResult with NULL NULL Check
Add a test to CompareOrUpdateResult where the new and old item
list are both NULL.

Test: Updated unit test
Change-Id: I6821028409d29ab864af52685629630cbf16db3b

Tyler Wear   commited 2020-01-28 16:42:22 -08:00
3767434b21
Update CompareOrUpdateResult with NULL Check
Like CompareResult, add in null check for input objects.

Test: updated unit test
Change-Id: Iea63752ff23a5bfb1cc5cb716ec579bec6c403bf

Tyler Wear   commited 2020-01-27 10:55:38 -08:00
65e8b66875
Add a CompareOrUpdateResult class.
This is like CompareResult, but also has the concept of an item
being "updated" (i.e., the same, but with different properties,
in the old and the new list of items). This is needed to support
updating routes.

Bug: 142892223
Test: new unit test
Change-Id: Ide5e31acb9baa6a5d3f50e9965d4019eb7c82cd4

Lorenzo Colitti   commited 2020-01-21 17:26:48 +09:00
9c0c6a5c05
Add NetUtils to net static library
This class includes network common utilities.

Bug: 139268426
Bug: 135998869
Bug: 138306002
Bug: 143925787
Test: build lib pass
      atest NetworkStaticLibTests
Change-Id: I1ffe723aa4ff2ed7bc46f34106701c91fe93032a

Aaron Huang   commited 2020-01-13 00:43:54 +08:00
05a9dfef78
Add a new static library for mainline modules
Add a network static library for common utilities. This
library could be used by all mainline modules. Initially
create LinkPropertiesUtils and MacAddressUtils.

Bug: 139268426
Bug: 135998869
Bug: 138306002
Test: build lib pass
      atest NetworkStaticLibTests
Change-Id: I8f79e4f836819ac83007acffb55103e5d69873e0

Aaron Huang   commited 2020-01-13 00:43:22 +08:00
f73ff8cfce