@@ -240,7 +240,7 @@ def _test_find_module_or_id_defining_flag(self, test_id):
240
240
# Delete the changelist flag, its short name should still be registered.
241
241
del fv .changelist
242
242
module_or_id_changelist = testing_fn ('changelist' )
243
- self .assertEqual (module_or_id_changelist , None )
243
+ self .assertIsNone (module_or_id_changelist )
244
244
module_or_id_c = testing_fn ('c' )
245
245
self .assertEqual (module_or_id_c , current_module_or_id )
246
246
module_or_id_l = testing_fn ('l' )
@@ -333,30 +333,30 @@ def test_invalid_flag_name(self):
333
333
334
334
def test_len (self ):
335
335
fv = _flagvalues .FlagValues ()
336
- self .assertEqual ( 0 , len ( fv ) )
336
+ self .assertEmpty ( fv )
337
337
self .assertFalse (fv )
338
338
339
339
_defines .DEFINE_boolean ('boolean' , False , 'help' , flag_values = fv )
340
- self .assertEqual ( 1 , len ( fv ) )
340
+ self .assertLen ( fv , 1 )
341
341
self .assertTrue (fv )
342
342
343
343
_defines .DEFINE_boolean (
344
344
'bool' , False , 'help' , short_name = 'b' , flag_values = fv )
345
- self .assertEqual ( 3 , len ( fv ) )
345
+ self .assertLen ( fv , 3 )
346
346
self .assertTrue (fv )
347
347
348
348
def test_pickle (self ):
349
349
fv = _flagvalues .FlagValues ()
350
- with self .assertRaisesRegexp (TypeError , "can't pickle FlagValues" ):
350
+ with self .assertRaisesRegex (TypeError , "can't pickle FlagValues" ):
351
351
pickle .dumps (fv )
352
352
353
353
def test_copy (self ):
354
354
fv = _flagvalues .FlagValues ()
355
355
_defines .DEFINE_integer ('answer' , 0 , 'help' , flag_values = fv )
356
356
fv (['' , '--answer=1' ])
357
357
358
- with self .assertRaisesRegexp (
359
- TypeError , 'FlagValues does not support shallow copies' ):
358
+ with self .assertRaisesRegex ( TypeError ,
359
+ 'FlagValues does not support shallow copies' ):
360
360
copy .copy (fv )
361
361
362
362
fv2 = copy .deepcopy (fv )
@@ -640,6 +640,7 @@ def test_gnu_getopt_raise(self, *argv):
640
640
class SettingUnknownFlagTest (absltest .TestCase ):
641
641
642
642
def setUp (self ):
643
+ super (SettingUnknownFlagTest , self ).setUp ()
643
644
self .setter_called = 0
644
645
645
646
def set_undef (self , unused_name , unused_val ):
@@ -679,9 +680,39 @@ def setter(unused_name, unused_val):
679
680
new_flags .undefined_flag = 0
680
681
681
682
683
+ class SetAttributesTest (absltest .TestCase ):
684
+
685
+ def setUp (self ):
686
+ super (SetAttributesTest , self ).setUp ()
687
+ self .new_flags = _flagvalues .FlagValues ()
688
+ _defines .DEFINE_boolean (
689
+ 'defined_flag' , None , '' , flag_values = self .new_flags )
690
+ _defines .DEFINE_boolean (
691
+ 'another_defined_flag' , None , '' , flag_values = self .new_flags )
692
+ self .setter_called = 0
693
+
694
+ def set_undef (self , unused_name , unused_val ):
695
+ self .setter_called += 1
696
+
697
+ def test_two_defined_flags (self ):
698
+ self .new_flags ._set_attributes (
699
+ defined_flag = False , another_defined_flag = False )
700
+ self .assertEqual (self .setter_called , 0 )
701
+
702
+ def test_one_defined_one_undefined_flag (self ):
703
+ with self .assertRaises (_exceptions .UnrecognizedFlagError ):
704
+ self .new_flags ._set_attributes (defined_flag = False , undefined_flag = 0 )
705
+
706
+ def test_register_unknown_flag_setter (self ):
707
+ self .new_flags ._register_unknown_flag_setter (self .set_undef )
708
+ self .new_flags ._set_attributes (defined_flag = False , undefined_flag = 0 )
709
+ self .assertEqual (self .setter_called , 1 )
710
+
711
+
682
712
class FlagsDashSyntaxTest (absltest .TestCase ):
683
713
684
714
def setUp (self ):
715
+ super (FlagsDashSyntaxTest , self ).setUp ()
685
716
self .fv = _flagvalues .FlagValues ()
686
717
_defines .DEFINE_string (
687
718
'long_name' , 'default' , 'help' , flag_values = self .fv , short_name = 's' )
@@ -754,15 +785,15 @@ def test_allow_overwrite_false(self):
754
785
755
786
fv .mark_as_parsed ()
756
787
self .assertEqual ('foo' , fv .default_foo )
757
- self .assertEqual ( None , fv .default_none )
788
+ self .assertIsNone ( fv .default_none )
758
789
759
790
fv (['' , '--default_foo=notFoo' , '--default_none=notNone' ])
760
791
self .assertEqual ('notFoo' , fv .default_foo )
761
792
self .assertEqual ('notNone' , fv .default_none )
762
793
763
794
fv .unparse_flags ()
764
795
self .assertEqual ('foo' , fv ['default_foo' ].value )
765
- self .assertEqual ( None , fv ['default_none' ].value )
796
+ self .assertIsNone ( fv ['default_none' ].value )
766
797
767
798
fv (['' , '--default_foo=alsoNotFoo' , '--default_none=alsoNotNone' ])
768
799
self .assertEqual ('alsoNotFoo' , fv .default_foo )
@@ -772,15 +803,15 @@ def test_multi_string_default_none(self):
772
803
fv = _flagvalues .FlagValues ()
773
804
_defines .DEFINE_multi_string ('foo' , None , 'help' , flag_values = fv )
774
805
fv .mark_as_parsed ()
775
- self .assertEqual ( None , fv .foo )
806
+ self .assertIsNone ( fv .foo )
776
807
fv (['' , '--foo=aa' ])
777
808
self .assertEqual (['aa' ], fv .foo )
778
809
fv .unparse_flags ()
779
- self .assertEqual ( None , fv ['foo' ].value )
810
+ self .assertIsNone ( fv ['foo' ].value )
780
811
fv (['' , '--foo=bb' , '--foo=cc' ])
781
812
self .assertEqual (['bb' , 'cc' ], fv .foo )
782
813
fv .unparse_flags ()
783
- self .assertEqual ( None , fv ['foo' ].value )
814
+ self .assertIsNone ( fv ['foo' ].value )
784
815
785
816
def test_multi_string_default_string (self ):
786
817
fv = _flagvalues .FlagValues ()
@@ -883,6 +914,18 @@ def test_allow_override(self):
883
914
self .assertEqual (3 , first .value )
884
915
self .assertEqual (3 , second .value )
885
916
917
+ def test_eq (self ):
918
+ with self .assertRaises (TypeError ):
919
+ self .name_flag == 'value' # pylint: disable=pointless-statement
920
+
921
+ def test_eq_reflection (self ):
922
+ with self .assertRaises (TypeError ):
923
+ 'value' == self .name_flag # pylint: disable=pointless-statement
924
+
925
+ def test_bool (self ):
926
+ with self .assertRaises (TypeError ):
927
+ bool (self .name_flag )
928
+
886
929
887
930
if __name__ == '__main__' :
888
931
absltest .main ()
0 commit comments