lts/deps/v8/tools/unittests/testdata/predictable_mocked.py
#!/usr/bin/env python
# Copyright 2017 the V8 project authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# for py2/py3 compatibility
from __future__ import print_function
import sys
assert len(sys.argv) == 3
if sys.argv[1] == 'equal':
# 1. Scenario: print equal allocation hashes.
print('### Allocations = 9497, hash = 0xc322c6b0')
elif sys.argv[1] == 'differ':
# 2. Scenario: print different allocation hashes. This prints a different
# hash on the second run, based on the content of a semaphore file. This
# file is expected to be empty in the beginning.
with open(sys.argv[2]) as f:
if f.read():
print('### Allocations = 9497, hash = 0xc322c6b0')
else:
print('### Allocations = 9497, hash = 0xc322c6b1')
with open(sys.argv[2], 'w') as f:
f.write('something')
else:
# 3. Scenario: missing allocation hashes. Don't print anything.
assert 'missing'
sys.exit(0)