buildUdtDualStackMatrix function
Generates deterministic dual-stack planning matrix without network access.
Implementation
List<UdtDualStackMatrixRow> buildUdtDualStackMatrix() {
const platforms = <String>['linux', 'macos', 'windows'];
const modes = <UdtIpMode>[
UdtIpMode.ipv4Only,
UdtIpMode.ipv6Only,
UdtIpMode.dualStack,
];
final rows = <UdtDualStackMatrixRow>[];
for (final platform in platforms) {
for (final mode in modes) {
rows.add(
UdtDualStackMatrixRow(
platform: platform,
mode: mode,
expectedBindFamilies: switch (mode) {
UdtIpMode.ipv4Only => {InternetAddressType.IPv4},
UdtIpMode.ipv6Only => {InternetAddressType.IPv6},
UdtIpMode.dualStack => {
InternetAddressType.IPv4,
InternetAddressType.IPv6,
},
},
notes: mode == UdtIpMode.dualStack && platform == 'windows'
? 'Validate dual-stack defaults per Windows version.'
: 'Deterministic planning baseline.',
),
);
}
}
return rows;
}