5
5
using System . Linq ;
6
6
using System . Text ;
7
7
using Unity . Netcode . Transports . UTP ;
8
+ using Unity . Networking . Transport ;
8
9
using UnityEngine ;
9
10
using UnityEngine . TestTools ;
10
11
using static Unity . Netcode . RuntimeTests . UnityTransportTestHelpers ;
@@ -21,6 +22,15 @@ public class UnityTransportTests
21
22
NetworkDelivery . Reliable
22
23
} ;
23
24
25
+ private static readonly NetworkFamily [ ] k_NetworkFamiltyParameters =
26
+ {
27
+ NetworkFamily . Ipv4 ,
28
+ #if ! ( UNITY_SWITCH || UNITY_PS4 || UNITY_PS5 )
29
+ // IPv6 is not supported on Switch, PS4, and PS5.
30
+ NetworkFamily . Ipv6
31
+ #endif
32
+ } ;
33
+
24
34
private UnityTransport m_Server , m_Client1 , m_Client2 ;
25
35
private List < TransportEvent > m_ServerEvents , m_Client1Events , m_Client2Events ;
26
36
@@ -60,10 +70,12 @@ public IEnumerator Cleanup()
60
70
61
71
// Check if can make a simple data exchange.
62
72
[ UnityTest ]
63
- public IEnumerator PingPong ( [ ValueSource ( "k_DeliveryParameters" ) ] NetworkDelivery delivery )
73
+ public IEnumerator PingPong (
74
+ [ ValueSource ( "k_DeliveryParameters" ) ] NetworkDelivery delivery ,
75
+ [ ValueSource ( "k_NetworkFamiltyParameters" ) ] NetworkFamily family )
64
76
{
65
- InitializeTransport ( out m_Server , out m_ServerEvents ) ;
66
- InitializeTransport ( out m_Client1 , out m_Client1Events ) ;
77
+ InitializeTransport ( out m_Server , out m_ServerEvents , family : family ) ;
78
+ InitializeTransport ( out m_Client1 , out m_Client1Events , family : family ) ;
67
79
68
80
m_Server . StartServer ( ) ;
69
81
m_Client1 . StartClient ( ) ;
@@ -89,10 +101,12 @@ public IEnumerator PingPong([ValueSource("k_DeliveryParameters")] NetworkDeliver
89
101
90
102
// Check if can make a simple data exchange (both ways at a time).
91
103
[ UnityTest ]
92
- public IEnumerator PingPongSimultaneous ( [ ValueSource ( "k_DeliveryParameters" ) ] NetworkDelivery delivery )
104
+ public IEnumerator PingPongSimultaneous (
105
+ [ ValueSource ( "k_DeliveryParameters" ) ] NetworkDelivery delivery ,
106
+ [ ValueSource ( "k_NetworkFamiltyParameters" ) ] NetworkFamily family )
93
107
{
94
- InitializeTransport ( out m_Server , out m_ServerEvents ) ;
95
- InitializeTransport ( out m_Client1 , out m_Client1Events ) ;
108
+ InitializeTransport ( out m_Server , out m_ServerEvents , family : family ) ;
109
+ InitializeTransport ( out m_Client1 , out m_Client1Events , family : family ) ;
96
110
97
111
m_Server . StartServer ( ) ;
98
112
m_Client1 . StartClient ( ) ;
@@ -126,13 +140,15 @@ public IEnumerator PingPongSimultaneous([ValueSource("k_DeliveryParameters")] Ne
126
140
// loopback traffic are too small for the amount of data sent in a single update here.
127
141
[ UnityTest ]
128
142
[ UnityPlatform ( exclude = new [ ] { RuntimePlatform . Switch , RuntimePlatform . PS4 , RuntimePlatform . PS5 } ) ]
129
- public IEnumerator SendMaximumPayloadSize ( [ ValueSource ( "k_DeliveryParameters" ) ] NetworkDelivery delivery )
143
+ public IEnumerator SendMaximumPayloadSize (
144
+ [ ValueSource ( "k_DeliveryParameters" ) ] NetworkDelivery delivery ,
145
+ [ ValueSource ( "k_NetworkFamiltyParameters" ) ] NetworkFamily family )
130
146
{
131
147
// We want something that's over the old limit of ~44KB for reliable payloads.
132
148
var payloadSize = 64 * 1024 ;
133
149
134
- InitializeTransport ( out m_Server , out m_ServerEvents , payloadSize ) ;
135
- InitializeTransport ( out m_Client1 , out m_Client1Events , payloadSize ) ;
150
+ InitializeTransport ( out m_Server , out m_ServerEvents , payloadSize , family : family ) ;
151
+ InitializeTransport ( out m_Client1 , out m_Client1Events , payloadSize , family : family ) ;
136
152
137
153
m_Server . StartServer ( ) ;
138
154
m_Client1 . StartClient ( ) ;
@@ -164,10 +180,12 @@ public IEnumerator SendMaximumPayloadSize([ValueSource("k_DeliveryParameters")]
164
180
165
181
// Check making multiple sends to a client in a single frame.
166
182
[ UnityTest ]
167
- public IEnumerator MultipleSendsSingleFrame ( [ ValueSource ( "k_DeliveryParameters" ) ] NetworkDelivery delivery )
183
+ public IEnumerator MultipleSendsSingleFrame (
184
+ [ ValueSource ( "k_DeliveryParameters" ) ] NetworkDelivery delivery ,
185
+ [ ValueSource ( "k_NetworkFamiltyParameters" ) ] NetworkFamily family )
168
186
{
169
- InitializeTransport ( out m_Server , out m_ServerEvents ) ;
170
- InitializeTransport ( out m_Client1 , out m_Client1Events ) ;
187
+ InitializeTransport ( out m_Server , out m_ServerEvents , family : family ) ;
188
+ InitializeTransport ( out m_Client1 , out m_Client1Events , family : family ) ;
171
189
172
190
m_Server . StartServer ( ) ;
173
191
m_Client1 . StartClient ( ) ;
@@ -193,11 +211,13 @@ public IEnumerator MultipleSendsSingleFrame([ValueSource("k_DeliveryParameters")
193
211
194
212
// Check sending data to multiple clients.
195
213
[ UnityTest ]
196
- public IEnumerator SendMultipleClients ( [ ValueSource ( "k_DeliveryParameters" ) ] NetworkDelivery delivery )
214
+ public IEnumerator SendMultipleClients (
215
+ [ ValueSource ( "k_DeliveryParameters" ) ] NetworkDelivery delivery ,
216
+ [ ValueSource ( "k_NetworkFamiltyParameters" ) ] NetworkFamily family )
197
217
{
198
- InitializeTransport ( out m_Server , out m_ServerEvents ) ;
199
- InitializeTransport ( out m_Client1 , out m_Client1Events ) ;
200
- InitializeTransport ( out m_Client2 , out m_Client2Events ) ;
218
+ InitializeTransport ( out m_Server , out m_ServerEvents , family : family ) ;
219
+ InitializeTransport ( out m_Client1 , out m_Client1Events , family : family ) ;
220
+ InitializeTransport ( out m_Client2 , out m_Client2Events , family : family ) ;
201
221
202
222
m_Server . StartServer ( ) ;
203
223
m_Client1 . StartClient ( ) ;
@@ -234,11 +254,13 @@ public IEnumerator SendMultipleClients([ValueSource("k_DeliveryParameters")] Net
234
254
235
255
// Check receiving data from multiple clients.
236
256
[ UnityTest ]
237
- public IEnumerator ReceiveMultipleClients ( [ ValueSource ( "k_DeliveryParameters" ) ] NetworkDelivery delivery )
257
+ public IEnumerator ReceiveMultipleClients (
258
+ [ ValueSource ( "k_DeliveryParameters" ) ] NetworkDelivery delivery ,
259
+ [ ValueSource ( "k_NetworkFamiltyParameters" ) ] NetworkFamily family )
238
260
{
239
- InitializeTransport ( out m_Server , out m_ServerEvents ) ;
240
- InitializeTransport ( out m_Client1 , out m_Client1Events ) ;
241
- InitializeTransport ( out m_Client2 , out m_Client2Events ) ;
261
+ InitializeTransport ( out m_Server , out m_ServerEvents , family : family ) ;
262
+ InitializeTransport ( out m_Client1 , out m_Client1Events , family : family ) ;
263
+ InitializeTransport ( out m_Client2 , out m_Client2Events , family : family ) ;
242
264
243
265
m_Server . StartServer ( ) ;
244
266
m_Client1 . StartClient ( ) ;
0 commit comments