@@ -42,17 +42,17 @@ public void TryParsePrefixMustBeNetworkIPv6()
4242 public void TryParsePrefixLengthMustBeValid ( )
4343 {
4444 Assert . IsFalse ( IPNetworkHelper . TryParse ( "192.168.0.0/33" , out var _ ) ) ; // Should fail, max is 32
45- Assert . IsFalse ( IPNetworkHelper . TryParse ( "0.0.0.0/0 " , out var _ ) ) ; // Should fail, min is 1
45+ Assert . IsFalse ( IPNetworkHelper . TryParse ( "0.0.0.0/-1 " , out var _ ) ) ; // Should fail, min is 0
4646
4747 Assert . IsFalse ( IPNetworkHelper . TryParse ( "DEAD:BEEF:0:1234::/129" , out var _ ) ) ; // Should fail, max is 128
48- Assert . IsFalse ( IPNetworkHelper . TryParse ( "0::0/0 " , out var _ ) ) ; // Should fail, min is 1
48+ Assert . IsFalse ( IPNetworkHelper . TryParse ( "0::0/-1 " , out var _ ) ) ; // Should fail, min is 0
4949
5050 // These should all pass since they're at the limits (min/max)
5151 Assert . IsTrue ( IPNetworkHelper . TryParse ( "192.168.0.0/32" , out var _ ) ) ;
52- Assert . IsTrue ( IPNetworkHelper . TryParse ( "0.0.0.0/1 " , out var _ ) ) ;
52+ Assert . IsTrue ( IPNetworkHelper . TryParse ( "0.0.0.0/0 " , out var _ ) ) ;
5353
5454 Assert . IsTrue ( IPNetworkHelper . TryParse ( "DEAD:BEEF:0:0:1234:5678:90AB:CDEF/128" , out var _ ) ) ;
55- Assert . IsTrue ( IPNetworkHelper . TryParse ( "0::0/1 " , out var _ ) ) ;
55+ Assert . IsTrue ( IPNetworkHelper . TryParse ( "0::0/0 " , out var _ ) ) ;
5656 }
5757
5858 [ TestMethod ]
@@ -167,41 +167,6 @@ public void HasValidPrefix()
167167
168168 Assert . IsTrue ( IPNetworkHelper . HasValidPrefix ( n1 ) ) ;
169169 Assert . IsFalse ( IPNetworkHelper . HasValidPrefix ( n2 ) ) ;
170-
171- // Parse a network, throws on invalid networks
172- var network = IPNetworkHelper . Parse ( "192.168.0.0/16" ) ;
173-
174- // Tries to parse, returns true when succeeded, false otherwise and the parsed network
175- if ( IPNetworkHelper . TryParse ( "192.168.0.0/16" , out var othernetwork ) )
176- {
177- // ...
178- }
179-
180- // Get first/last IP from network
181- var first = network . GetFirstIP ( ) ; // Network (192.168.0.0)
182- var last = network . GetLastIP ( ) ; // Broadcast (192.168.255.255)
183-
184- // Splits a network into two halves
185- var ( left , right ) = network . Split ( ) ; // Returns 192.168.0.0/17 and 192.168.128.0/17
186-
187- // Remove a subnet from a network
188- var desired = IPNetworkHelper . Parse ( "192.168.10.16/28" ) ;
189- var result = network . Extract ( desired ) ;
190-
191- // Result:
192- // 192.168.0.0/21
193- // 192.168.8.0/23
194- // 192.168.10.0/28
195- // 192.168.10.16/28
196- // 192.168.10.32/27
197- // 192.168.10.64/26
198- // 192.168.10.128/25
199- // 192.168.11.0/24
200- // 192.168.12.0/22
201- // 192.168.16.0/20
202- // 192.168.32.0/19
203- // 192.168.64.0/18
204- // 192.168.128.0/17
205170 }
206171 }
207172}
0 commit comments