@@ -277,7 +277,7 @@ def flatten_obj(name="",selection="",state=0,rename=0,quiet=1,chain_map=""):
277
277
cmd .create (prefix , obj , state , 1 )
278
278
279
279
# renumber all states
280
- statere = re .compile ("^%s_(.*)_(\d+)$" % metaprefix ) # matches split object names
280
+ statere = re .compile (r "^%s_(.*)_(\d+)$" % metaprefix ) # matches split object names
281
281
282
282
warn_lowercase = False
283
283
@@ -334,3 +334,25 @@ def flatten_obj(name="",selection="",state=0,rename=0,quiet=1,chain_map=""):
334
334
# tab-completion of arguments
335
335
cmd .auto_arg [0 ]['flatten_obj' ] = [ cmd .object_sc , 'name or selection' , '' ]
336
336
cmd .auto_arg [1 ]['flatten_obj' ] = [ cmd .object_sc , 'selection' , '' ]
337
+
338
+
339
+ def test_flatten_obj__rename0 ():
340
+ cmd .reinitialize ()
341
+ cmd .fab ("ACD" , "m1" , chain = "C" )
342
+ cmd .fab ("DEF" , "m2" , chain = "C" )
343
+ flatten_obj ("m3" , "m1 | m2" , rename = 0 )
344
+ assert cmd .count_atoms ("m3" ) == 80
345
+ assert cmd .count_atoms ("m3 & resi 2" ) == 26
346
+ assert cmd .get_chains ("m3" ) == ["A" , "C" ]
347
+
348
+
349
+ def test_flatten_obj__rename1 ():
350
+ cmd .reinitialize ()
351
+ cmd .fab ("ACD" , "m1" , chain = "C" )
352
+ cmd .fab ("DEF" , "m2" , chain = "C" )
353
+ flatten_obj ("m3" , "m1 | m2" , rename = 1 , chain_map = "foo" )
354
+ assert cmd .get_chains ("m3" ) == ["A" , "B" ]
355
+ assert dict (stored .foo ) == {
356
+ "A" : ("m1" , 1 , "C" ),
357
+ "B" : ("m2" , 1 , "C" ),
358
+ }
0 commit comments