Skip to content

Commit 0d405e8

Browse files
committed
Add tests for new CLI arguments
This commit extends CLI test suite to validate new CLI arguments. Signed-off-by: Mark Kirichenko <[email protected]>
1 parent 6224df1 commit 0d405e8

File tree

1 file changed

+128
-0
lines changed

1 file changed

+128
-0
lines changed

tests/test_nitro_cli_args.rs

Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -297,6 +297,134 @@ mod test_nitro_cli_args {
297297
assert!(app.try_get_matches_from(args).is_ok())
298298
}
299299

300+
#[test]
301+
fn build_signed_enclave_correct_command_kms_key() {
302+
let app = create_app!();
303+
let args = vec![
304+
"nitro cli",
305+
"build-enclave",
306+
"--docker-uri",
307+
"dkr.ecr.us-east-1.amazonaws.com/stronghold-develss",
308+
"--docker-dir",
309+
"dir/",
310+
"--output-file",
311+
"image.eif",
312+
"--signing-certificate",
313+
"cert.pem",
314+
"--kms-key-id",
315+
"key_id",
316+
];
317+
318+
assert!(app.try_get_matches_from(args).is_ok())
319+
}
320+
321+
#[test]
322+
fn build_signed_enclave_correct_command_kms_key_and_region() {
323+
let app = create_app!();
324+
let args = vec![
325+
"nitro cli",
326+
"build-enclave",
327+
"--docker-uri",
328+
"dkr.ecr.us-east-1.amazonaws.com/stronghold-develss",
329+
"--docker-dir",
330+
"dir/",
331+
"--output-file",
332+
"image.eif",
333+
"--signing-certificate",
334+
"cert.pem",
335+
"--kms-key-id",
336+
"key_id",
337+
"--kms-key-region",
338+
"us-east-1",
339+
];
340+
341+
assert!(app.try_get_matches_from(args).is_ok())
342+
}
343+
344+
#[test]
345+
fn build_signed_enclave_no_key_and_kms_region() {
346+
let app = create_app!();
347+
let args = vec![
348+
"nitro cli",
349+
"build-enclave",
350+
"--docker-uri",
351+
"dkr.ecr.us-east-1.amazonaws.com/stronghold-develss",
352+
"--docker-dir",
353+
"dir/",
354+
"--output-file",
355+
"image.eif",
356+
"--signing-certificate",
357+
"cert.pem",
358+
"--kms-key-region",
359+
"us-east-1",
360+
];
361+
362+
assert!(app.try_get_matches_from(args).is_err())
363+
}
364+
365+
#[test]
366+
fn build_signed_enclave_missing_certificate() {
367+
let app = create_app!();
368+
let args = vec![
369+
"nitro cli",
370+
"build-enclave",
371+
"--docker-uri",
372+
"dkr.ecr.us-east-1.amazonaws.com/stronghold-develss",
373+
"--docker-dir",
374+
"dir/",
375+
"--output-file",
376+
"image.eif",
377+
"--private-key",
378+
"key.pem",
379+
];
380+
381+
assert!(app.try_get_matches_from(args).is_err())
382+
}
383+
384+
#[test]
385+
fn build_signed_enclave_both_local_and_kms_key() {
386+
let app = create_app!();
387+
let args = vec![
388+
"nitro cli",
389+
"build-enclave",
390+
"--docker-uri",
391+
"dkr.ecr.us-east-1.amazonaws.com/stronghold-develss",
392+
"--docker-dir",
393+
"dir/",
394+
"--output-file",
395+
"image.eif",
396+
"--signing-certificate",
397+
"cert.pem",
398+
"--private-key",
399+
"key.pem",
400+
"--kms-key-id",
401+
"key_id",
402+
];
403+
404+
assert!(app.try_get_matches_from(args).is_err())
405+
}
406+
407+
#[test]
408+
fn build_signed_enclave_both_local_and_kms_key_missing_certificate() {
409+
let app = create_app!();
410+
let args = vec![
411+
"nitro cli",
412+
"build-enclave",
413+
"--docker-uri",
414+
"dkr.ecr.us-east-1.amazonaws.com/stronghold-develss",
415+
"--docker-dir",
416+
"dir/",
417+
"--output-file",
418+
"image.eif",
419+
"--private-key",
420+
"key.pem",
421+
"--kms-key-id",
422+
"key_id",
423+
];
424+
425+
assert!(app.try_get_matches_from(args).is_err())
426+
}
427+
300428
#[test]
301429
fn build_enclave_with_metadata_correct_command() {
302430
let app = create_app!();

0 commit comments

Comments
 (0)