1313# limitations under the License.
1414#
1515
16+
17+ from distutils .version import LooseVersion
18+ from f5 .bigip .mixins import UnsupportedTmosVersion
1619from pprint import pprint as pp
1720pp (__file__ )
1821import pytest
@@ -210,10 +213,25 @@ def test_RUL(self, request, bigip):
210213
211214
212215class TestClientLdap (object ):
213- def test_CURDL (self , request , bigip ):
216+ @pytest .mark .skipif (
217+ LooseVersion (pytest .config .getoption ('--release' ))
218+ < LooseVersion ('11.6.0' ),
219+ reason = 'This collection exists on 11.6.0 or greater.'
220+ )
221+ def test_CURDL_11_6_and_greater (self , request , bigip ):
214222 ldap = HelperTest (end_lst , 2 )
215223 ldap .test_CURDL (request , bigip )
216224
225+ @pytest .mark .skipif (
226+ LooseVersion (pytest .config .getoption ('--release' ))
227+ >= LooseVersion ('11.6.0' ),
228+ reason = 'This collection does not exist on 11.5.4 or less.'
229+ )
230+ def test_CURDL_11_5_4_and_less (self , request , bigip ):
231+ ldap = HelperTest (end_lst , 2 )
232+ with pytest .raises (UnsupportedTmosVersion ) as ex :
233+ ldap .test_CURDL (request , bigip )
234+ assert 'Minimum TMOS version supported is 11.6.0' in ex .value .message
217235
218236# End ClientLdap tests
219237
@@ -232,22 +250,52 @@ def test_CURDL(self, request, bigip):
232250
233251
234252class TestDhcpv4 (object ):
235- def test_CURDL (self , request , bigip ):
253+ @pytest .mark .skipif (
254+ LooseVersion (pytest .config .getoption ('--release' ))
255+ < LooseVersion ('11.6.0' ),
256+ reason = 'This collection exists on 11.6.0 or greater.'
257+ )
258+ def test_CURDL_11_6_and_greater (self , request , bigip ):
236259 dhcpv4 = HelperTest (end_lst , 4 )
237260 dhcpv4 .test_CURDL (request , bigip )
238261
262+ @pytest .mark .skipif (
263+ LooseVersion (pytest .config .getoption ('--release' ))
264+ >= LooseVersion ('11.6.0' ),
265+ reason = 'This collection does not exist on 11.5.4 or less.'
266+ )
267+ def test_CURDL_11_5_4_and_less (self , request , bigip ):
268+ dhcpv4 = HelperTest (end_lst , 4 )
269+ with pytest .raises (UnsupportedTmosVersion ) as ex :
270+ dhcpv4 .test_CURDL (request , bigip )
271+ assert 'Minimum TMOS version supported is 11.6.0' in ex .value .message
272+
239273
240274# End Dhcpv4 tests
241275
242276# Begin Dhcpv6 tests
243277
244278
245279class TestDhcpv6 (object ):
246- def test_CURDL (self , request , bigip ):
280+ @pytest .mark .skipif (
281+ LooseVersion (pytest .config .getoption ('--release' ))
282+ < LooseVersion ('11.6.0' ),
283+ reason = 'This collection exists on 11.6.0 or greater.'
284+ )
285+ def test_CURDL_11_6_and_greater (self , request , bigip ):
247286 dhcpv6 = HelperTest (end_lst , 5 )
248287 dhcpv6 .test_CURDL (request , bigip )
249288
250-
289+ @pytest .mark .skipif (
290+ LooseVersion (pytest .config .getoption ('--release' ))
291+ >= LooseVersion ('11.6.0' ),
292+ reason = 'This collection does not exist on 11.5.4 or less.'
293+ )
294+ def test_CURDL_11_5_4_and_less (self , request , bigip ):
295+ dhcpv4 = HelperTest (end_lst , 5 )
296+ with pytest .raises (UnsupportedTmosVersion ) as ex :
297+ dhcpv4 .test_CURDL (request , bigip )
298+ assert 'Minimum TMOS version supported is 11.6.0' in ex .value .message
251299# End Dhcpv6 tests
252300
253301# Begin Diameter tests
@@ -374,10 +422,26 @@ def test_CURDL(self, request, bigip):
374422
375423
376424class TestGtp (object ):
377- def test_CURDL (self , request , bigip ):
425+ @pytest .mark .skipif (
426+ LooseVersion (pytest .config .getoption ('--release' ))
427+ < LooseVersion ('11.6.0' ),
428+ reason = 'This collection exists on 11.6.0 or greater.'
429+ )
430+ def test_CURDL_11_6_and_greater (self , request , bigip ):
378431 gtp = HelperTest (end_lst , 13 )
379432 gtp .test_CURDL (request , bigip )
380433
434+ @pytest .mark .skipif (
435+ LooseVersion (pytest .config .getoption ('--release' ))
436+ >= LooseVersion ('11.6.0' ),
437+ reason = 'This collection does not exist on 11.5.4 or less.'
438+ )
439+ def test_CURDL_11_5_4_and_less (self , request , bigip ):
440+ dhcpv4 = HelperTest (end_lst , 13 )
441+ with pytest .raises (UnsupportedTmosVersion ) as ex :
442+ dhcpv4 .test_CURDL (request , bigip )
443+ assert 'Minimum TMOS version supported is 11.6.0' in ex .value .message
444+
381445
382446# End GTP tests
383447
@@ -418,10 +482,26 @@ def test_CURDL(self, request, bigip):
418482
419483
420484class TestHttp2 (object ):
421- def test_CURDL (self , request , bigip ):
485+ @pytest .mark .skipif (
486+ LooseVersion (pytest .config .getoption ('--release' ))
487+ < LooseVersion ('11.6.0' ),
488+ reason = 'This collection exists on 11.6.0 or greater.'
489+ )
490+ def test_CURDL_11_6_and_greater (self , request , bigip ):
422491 http2 = HelperTest (end_lst , 17 )
423492 http2 .test_CURDL (request , bigip )
424493
494+ @pytest .mark .skipif (
495+ LooseVersion (pytest .config .getoption ('--release' ))
496+ >= LooseVersion ('11.6.0' ),
497+ reason = 'This collection does not exist on 11.5.4 or less.'
498+ )
499+ def test_CURDL_11_5_4_and_less (self , request , bigip ):
500+ dhcpv4 = HelperTest (end_lst , 17 )
501+ with pytest .raises (UnsupportedTmosVersion ) as ex :
502+ dhcpv4 .test_CURDL (request , bigip )
503+ assert 'Minimum TMOS version supported is 11.6.0' in ex .value .message
504+
425505
426506# End HTTP tests
427507
@@ -542,7 +622,12 @@ def teardown():
542622
543623
544624class TestOcspStaplingParams (object ):
545- def test_CURDL (self , request , bigip ):
625+ @pytest .mark .skipif (
626+ LooseVersion (pytest .config .getoption ('--release' ))
627+ < LooseVersion ('11.6.0' ),
628+ reason = 'This collection exists on 11.6.0 or greater.'
629+ )
630+ def test_CURDL_11_6_and_greater (self , request , bigip ):
546631
547632 # Setup DNS resolver as prerequisite
548633 dns = setup_dns_resolver (request , bigip , 'test_resolv' )
@@ -577,6 +662,27 @@ def test_CURDL(self, request, bigip):
577662
578663 assert ocsp1 .selfLink == ocsp2 .selfLink
579664
665+ @pytest .mark .skipif (
666+ LooseVersion (pytest .config .getoption ('--release' ))
667+ >= LooseVersion ('11.6.0' ),
668+ reason = 'This collection does not exist on 11.5.4 or less.'
669+ )
670+ def test_CURDL_11_6_and_less (self , request , bigip ):
671+
672+ # Setup DNS resolver as prerequisite
673+ dns = setup_dns_resolver (request , bigip , 'test_resolv' )
674+
675+ # Test CURDL
676+ ocsp = HelperTest (end_lst , 24 )
677+
678+ # Testing create
679+ with pytest .raises (UnsupportedTmosVersion ) as ex :
680+ ocsp .setup_test (
681+ request , bigip , dnsResolver = dns .name ,
682+ trustedCa = '/Common/ca-bundle.crt' ,
683+ useProxyServer = 'disabled'
684+ )
685+ assert 'Minimum TMOS version supported is 11.6.0' in ex .value .message
580686
581687# End Ocsp Stapling Params tests
582688
@@ -795,10 +901,26 @@ def test_CURDL(self, request, bigip):
795901
796902
797903class TestServerLdap (object ):
798- def test_CURDL (self , request , bigip ):
904+ @pytest .mark .skipif (
905+ LooseVersion (pytest .config .getoption ('--release' ))
906+ < LooseVersion ('11.6.0' ),
907+ reason = 'This collection exists on 11.6.0 or greater.'
908+ )
909+ def test_CURDL_11_6_and_greater (self , request , bigip ):
799910 sldap = HelperTest (end_lst , 35 )
800911 sldap .test_CURDL (request , bigip )
801912
913+ @pytest .mark .skipif (
914+ LooseVersion (pytest .config .getoption ('--release' ))
915+ >= LooseVersion ('11.6.0' ),
916+ reason = 'This collection does not exist on 11.5.4 or less.'
917+ )
918+ def test_CURDL_11_5_4_and_less (self , request , bigip ):
919+ dhcpv4 = HelperTest (end_lst , 35 )
920+ with pytest .raises (UnsupportedTmosVersion ) as ex :
921+ dhcpv4 .test_CURDL (request , bigip )
922+ assert 'Minimum TMOS version supported is 11.6.0' in ex .value .message
923+
802924
803925# End Server Ldap tests
804926
@@ -828,10 +950,26 @@ def test_CURDL(self, request, bigip):
828950
829951
830952class TestSmtp (object ):
831- def test_CURDL (self , request , bigip ):
953+ @pytest .mark .skipif (
954+ LooseVersion (pytest .config .getoption ('--release' ))
955+ < LooseVersion ('11.6.0' ),
956+ reason = 'This collection exists on 11.6.0 or greater.'
957+ )
958+ def test_CURDL_11_6_and_greater (self , request , bigip ):
832959 smtp = HelperTest (end_lst , 38 )
833960 smtp .test_CURDL (request , bigip )
834961
962+ @pytest .mark .skipif (
963+ LooseVersion (pytest .config .getoption ('--release' ))
964+ >= LooseVersion ('11.6.0' ),
965+ reason = 'This collection does not exist on 11.5.4 or less.'
966+ )
967+ def test_CURDL_11_5_4_and_less (self , request , bigip ):
968+ dhcpv4 = HelperTest (end_lst , 38 )
969+ with pytest .raises (UnsupportedTmosVersion ) as ex :
970+ dhcpv4 .test_CURDL (request , bigip )
971+ assert 'Minimum TMOS version supported is 11.6.0' in ex .value .message
972+
835973
836974# End Smtp tests
837975
0 commit comments