in aws/hhvm1/lambdas/test.py [0:0]
def test_parse_input(self):
debian = 'debian-9-stretch'
ubuntu = 'ubuntu-19.04-disco'
macos = next(iter(Config.macos_versions))
self.assertEqual(
parse_input.lambda_handler({}),
{
'buildInput': {
'versions': [date.today().strftime('%Y.%m.%d')],
'platforms': [],
'activities': [],
'debug': '',
},
},
)
self.assertEqual(
parse_input.lambda_handler({
'foo': ['4.2', 'a', '1.2a'],
'bar': {'foo': '0.42.0', 'bar': 'MakeBinaryPackage'},
'baz': '42',
}),
{
'buildInput': {
'versions': ['0.42.0'],
'platforms': [],
'activities': ['MakeBinaryPackage'],
'debug': '',
},
},
)
self.assertEqual(
parse_input.lambda_handler({'inputs': ['--fake-ec2']}),
{
'buildInput': {
'versions': [date.today().strftime('%Y.%m.%d')],
'platforms': [],
'activities': [],
'debug': 'fake_ec2',
},
},
)
self.assertEqual(
parse_input.lambda_handler(
f'4.26.1 {macos} foo {ubuntu} --skip-ec2 {debian}'
),
{
'buildInput': {
'versions': ['4.26.1'],
'platforms': [macos, ubuntu, debian],
'activities': [],
'debug': 'skip_ec2',
},
},
)
# --test also forces the correct step names
self.assertEqual(
parse_input.lambda_handler('4.42.4242 --test-build'),
{
'buildInput': {
'versions': ['4.42.4242'],
'platforms': [],
'activities': ['MakeBinaryPackage', 'BuildAndPublishMacOS'],
'debug': 'test_build',
},
},
)
self.assertEqual(
parse_input.lambda_handler('4.42.4242 test MakeBinaryPackage'),
{
'buildInput': {
'versions': ['4.42.4242'],
'platforms': [],
'activities': ['MakeBinaryPackage'],
'debug': 'test_build',
},
},
)
with self.assertRaisesRegex(
Exception,
'^PublishSourceTarball is not a valid test build step$'
):
parse_input.lambda_handler('4.42.4242 --test PublishSourceTarball')