Add recon drones and body burial; stabilize spectator camera
continuous-integration/drone/push Build is passing
continuous-integration/drone/push Build is passing
This commit is contained in:
@@ -99,6 +99,27 @@ class SourceBundleTests(unittest.TestCase):
|
||||
self.edit(name, '58D0FB3206B6F859', '5F16D7E4A1CBE075')
|
||||
with self.assertRaisesRegex(ValueError, 'identity/dependency'): bundle.build(self.root)
|
||||
|
||||
def test_character_action_patch_is_the_only_allowed_vanilla_override(self):
|
||||
_, manifest = bundle.build(self.root)
|
||||
patch = 'addons/core/Prefabs/Characters/Core/Character_Base.et'
|
||||
self.assertIn(patch, manifest['files'])
|
||||
# The exception cannot be moved under a different resource path.
|
||||
changed = 'addons/core/Prefabs/Characters/Core/Unreviewed.et'
|
||||
(self.root / patch).rename(self.root / changed)
|
||||
(self.root / (patch + '.meta')).rename(self.root / (changed + '.meta'))
|
||||
self.edit(changed + '.meta', 'Character_Base.et', 'Unreviewed.et')
|
||||
with self.assertRaisesRegex(ValueError, 'reuses a vanilla identity'):
|
||||
bundle.build(self.root)
|
||||
# Nor can the allowlisted path take an unrelated vanilla resource GUID.
|
||||
(self.root / changed).rename(self.root / patch)
|
||||
(self.root / (changed + '.meta')).rename(self.root / (patch + '.meta'))
|
||||
self.edit(patch + '.meta', 'Unreviewed.et', 'Character_Base.et')
|
||||
vanilla = json.loads((self.root / 'docs/vanilla-resources.json').read_text())
|
||||
other = next(g for g in vanilla.values() if g not in bundle.VANILLA_OVERRIDES)
|
||||
self.edit(patch + '.meta', '37578B1666981FCE', other)
|
||||
with self.assertRaisesRegex(ValueError, 'reuses a vanilla identity'):
|
||||
bundle.build(self.root)
|
||||
|
||||
def test_escaped_audio_graph_references_are_checked(self):
|
||||
name = 'addons/core/Scripts/Game/ERR/10_AI/ERR_SoldierSpeechAudio.c'
|
||||
bundle.build(self.root)
|
||||
|
||||
Reference in New Issue
Block a user