@@ -1140,6 +1140,23 @@ def test_uuid_weakref(self):
1140
1140
weak = weakref .ref (strong )
1141
1141
self .assertIs (strong , weak ())
1142
1142
1143
+
1144
+ class CommandLineTestCases :
1145
+ uuid = None # to be defined in subclasses
1146
+
1147
+ def do_test_standalone_uuid (self , version ):
1148
+ stdout = io .StringIO ()
1149
+ with contextlib .redirect_stdout (stdout ):
1150
+ self .uuid .main ()
1151
+ output = stdout .getvalue ().strip ()
1152
+ u = self .uuid .UUID (output )
1153
+ self .assertEqual (output , str (u ))
1154
+ self .assertEqual (u .version , version )
1155
+
1156
+ @mock .patch .object (sys , "argv" , ["" , "-u" , "uuid1" ])
1157
+ def test_cli_uuid1 (self ):
1158
+ self .do_test_standalone_uuid (1 )
1159
+
1143
1160
@mock .patch .object (sys , "argv" , ["" , "-u" , "uuid3" , "-n" , "@dns" ])
1144
1161
@mock .patch ('sys.stderr' , new_callable = io .StringIO )
1145
1162
def test_cli_namespace_required_for_uuid3 (self , mock_err ):
@@ -1214,13 +1231,25 @@ def test_cli_uuid5_ouputted_with_valid_namespace_and_name(self):
1214
1231
self .assertEqual (output , str (uuid_output ))
1215
1232
self .assertEqual (uuid_output .version , 5 )
1216
1233
1234
+ @mock .patch .object (sys , "argv" , ["" , "-u" , "uuid6" ])
1235
+ def test_cli_uuid6 (self ):
1236
+ self .do_test_standalone_uuid (6 )
1237
+
1238
+ @mock .patch .object (sys , "argv" , ["" , "-u" , "uuid7" ])
1239
+ def test_cli_uuid7 (self ):
1240
+ self .do_test_standalone_uuid (7 )
1241
+
1242
+ @mock .patch .object (sys , "argv" , ["" , "-u" , "uuid8" ])
1243
+ def test_cli_uuid8 (self ):
1244
+ self .do_test_standalone_uuid (8 )
1245
+
1217
1246
1218
- class TestUUIDWithoutExtModule (BaseTestUUID , unittest .TestCase ):
1247
+ class TestUUIDWithoutExtModule (CommandLineTestCases , BaseTestUUID , unittest .TestCase ):
1219
1248
uuid = py_uuid
1220
1249
1221
1250
1222
1251
@unittest .skipUnless (c_uuid , 'requires the C _uuid module' )
1223
- class TestUUIDWithExtModule (BaseTestUUID , unittest .TestCase ):
1252
+ class TestUUIDWithExtModule (CommandLineTestCases , BaseTestUUID , unittest .TestCase ):
1224
1253
uuid = c_uuid
1225
1254
1226
1255
def check_has_stable_libuuid_extractable_node (self ):
0 commit comments