test_missing_file.c 892 B

123456789101112131415161718192021222324252627282930313233
  1. /*-
  2. * SPDX-License-Identifier: BSD-2-Clause
  3. *
  4. * Copyright (c) 2016 Tim Kientzle
  5. * All rights reserved.
  6. */
  7. #include "test.h"
  8. DEFINE_TEST(test_missing_file)
  9. {
  10. int r;
  11. assertMakeFile("file1", 0644, "file1");
  12. assertMakeFile("file2", 0644, "file2");
  13. assertMakeFile("filelist1", 0644, "file1\nfile2\n");
  14. r = systemf("%s -o <filelist1 >stdout1 2>stderr1", testprog);
  15. assertEqualInt(r, 0);
  16. assertTextFileContents("1 block\n", "stderr1");
  17. assertMakeFile("filelist2", 0644, "file1\nfile2\nfile3\n");
  18. r = systemf("%s -o <filelist2 >stdout2 2>stderr2", testprog);
  19. assert(r != 0);
  20. assertMakeFile("filelist3", 0644, "");
  21. r = systemf("%s -o <filelist3 >stdout3 2>stderr3", testprog);
  22. assertEqualInt(r, 0);
  23. assertTextFileContents("1 block\n", "stderr3");
  24. assertMakeFile("filelist4", 0644, "file3\n");
  25. r = systemf("%s -o <filelist4 >stdout4 2>stderr4", testprog);
  26. assert(r != 0);
  27. }