Newer
Older
dub_jkp / test / 3-copyFiles / source / app.d
  1. import std.algorithm, std.array, std.file, std.path;
  2.  
  3. void main(string[] args)
  4. {
  5. immutable root = args[0].dirName; // get the bin dir
  6. immutable pfx = root.length + "/".length;
  7. auto files = dirEntries(root, SpanMode.breadth).map!(n => n[pfx .. $]).array.sort().release;
  8.  
  9. assert(files ==
  10. [
  11. "copyfiles-test", "file_to_copy.txt", "file_to_copy_mask1.txt",
  12. "file_to_copy_mask2.txt", "hdpi", "hdpi/file1.txt", "hdpi/file2.txt",
  13. "hdpi/file3.txt", "hdpi/nested_dir", "hdpi/nested_dir/nested_file.txt",
  14. "ldpi", "ldpi/file1.txt", "ldpi/file2.txt", "ldpi/file3.txt", "mdpi",
  15. "mdpi/file1.txt", "mdpi/file2.txt", "mdpi/file3.txt", "res",
  16. "res/.nocopy", "res/.nocopy/file_inside_dot_prefixed_dir.txt",
  17. "res/hdpi", "res/hdpi/file1.txt", "res/hdpi/file2.txt", "res/hdpi/file3.txt",
  18. "res/hdpi/nested_dir", "res/hdpi/nested_dir/nested_file.txt", "res/i18n",
  19. "res/i18n/resource_en.txt", "res/i18n/resource_fr.txt", "res/ldpi",
  20. "res/ldpi/file1.txt", "res/ldpi/file2.txt", "res/ldpi/file3.txt", "res/mdpi",
  21. "res/mdpi/file1.txt", "res/mdpi/file2.txt", "res/mdpi/file3.txt"
  22. ], files.join(", ")
  23. );
  24. }