Fix ordering of prototype diff output for test

This commit is contained in:
Griatch 2018-10-14 10:56:44 +02:00
parent 8cdc641ffc
commit 4cd6c5b3a5
2 changed files with 22 additions and 19 deletions

View file

@ -2004,7 +2004,8 @@ def _format_diff_text_and_options(diff, **kwargs):
("diff", diff)), **kwargs))})
optnum += 1
else:
for key, subdiffpart in diffpart.items():
for key in sorted(list(diffpart.keys())):
subdiffpart = diffpart[key]
text, option, optnum = _parse_diffpart(
subdiffpart, optnum, *(args + (key, )))
texts.extend(text)

View file

@ -400,6 +400,8 @@ class _MockMenu(object):
class TestMenuModule(EvenniaTest):
maxDiff = None
def setUp(self):
super(TestMenuModule, self).setUp()
@ -583,31 +585,31 @@ class TestMenuModule(EvenniaTest):
'prelogout_location': (('prelogout_location', "#2", None, ''),
('prelogout_location', "#2", None, ''),
'KEEP')},
'home': ('#2', '#2', 'KEEP'),
'key': ('TestChar', 'TestChar', 'KEEP'),
'locks': ('boot:false();call:false();control:perm(Developer);delete:false();'
'edit:false();examine:perm(Developer);get:false();msg:all();'
'puppet:false();tell:perm(Admin);view:all()',
'boot:false();call:false();control:perm(Developer);delete:false();'
'edit:false();examine:perm(Developer);get:false();msg:all();'
'puppet:false();tell:perm(Admin);view:all()',
'KEEP'),
'permissions': {'developer': ('developer', 'developer', 'KEEP')},
'prototype_desc': ('Testobject build', None, 'REMOVE'),
'prototype_key': ('TestDiffKey', 'TestDiffKey', 'KEEP'),
'prototype_locks': ('spawn:all();edit:all()', 'spawn:all();edit:all()', 'KEEP'),
'prototype_tags': {},
'tags': {'foo': (None, ('foo', None, ''), 'ADD')},
'typeclass': ('typeclasses.characters.Character',
'typeclasses.characters.Character', 'KEEP')}
'home': ('#2', '#2', 'KEEP'),
'key': ('TestChar', 'TestChar', 'KEEP'),
'locks': ('boot:false();call:false();control:perm(Developer);delete:false();'
'edit:false();examine:perm(Developer);get:false();msg:all();'
'puppet:false();tell:perm(Admin);view:all()',
'boot:false();call:false();control:perm(Developer);delete:false();'
'edit:false();examine:perm(Developer);get:false();msg:all();'
'puppet:false();tell:perm(Admin);view:all()',
'KEEP'),
'permissions': {'developer': ('developer', 'developer', 'KEEP')},
'prototype_desc': ('Testobject build', None, 'REMOVE'),
'prototype_key': ('TestDiffKey', 'TestDiffKey', 'KEEP'),
'prototype_locks': ('spawn:all();edit:all()', 'spawn:all();edit:all()', 'KEEP'),
'prototype_tags': {},
'tags': {'foo': (None, ('foo', None, ''), 'ADD')},
'typeclass': ('typeclasses.characters.Character',
'typeclasses.characters.Character', 'KEEP')}
texts, options = olc_menus._format_diff_text_and_options(obj_diff)
self.assertEqual(
"\n".join(texts),
'- |wattrs:|n \n'
' |gKEEP|W:|n desc |W=|n This is User #1. |W(category:|n None|W, locks:|n |W)|n\n'
' |c[1] |yADD|n|W:|n None |W->|n foo |W=|n bar |W(category:|n None|W, locks:|n |W)|n\n'
' |gKEEP|W:|n prelogout_location |W=|n #2 |W(category:|n None|W, locks:|n |W)|n\n'
' |gKEEP|W:|n desc |W=|n This is User #1. |W(category:|n None|W, locks:|n |W)|n\n'
'- |whome:|n |gKEEP|W:|n #2\n'
'- |wkey:|n |gKEEP|W:|n TestChar\n'
'- |wlocks:|n |gKEEP|W:|n boot:false();call:false();control:perm(Developer);delete:false();edit:false();examine:perm(Developer);get:false();msg:all();puppet:false();tell:perm(Admin);view:all()\n'