cdromreducesourcelist_test.cc 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. #include <config.h>
  2. #include <apt-pkg/cdrom.h>
  3. #include <string>
  4. #include <vector>
  5. #include "assert.h"
  6. class Cdrom : public pkgCdrom {
  7. public:
  8. std::vector<std::string> ReduceSourcelist(std::string CD,std::vector<std::string> List) {
  9. pkgCdrom::ReduceSourcelist(CD, List);
  10. return List;
  11. }
  12. };
  13. int main() {
  14. Cdrom cd;
  15. std::vector<std::string> List;
  16. std::string CD("/media/cdrom/");
  17. std::vector<std::string> R = cd.ReduceSourcelist(CD, List);
  18. equals(R.empty(), true);
  19. List.push_back(" wheezy main");
  20. R = cd.ReduceSourcelist(CD, List);
  21. equals(R.size(), 1);
  22. equals(R[0], " wheezy main");
  23. List.push_back(" wheezy main");
  24. R = cd.ReduceSourcelist(CD, List);
  25. equals(R.size(), 1);
  26. equals(R[0], " wheezy main");
  27. List.push_back(" wheezy contrib");
  28. R = cd.ReduceSourcelist(CD, List);
  29. equals(R.size(), 1);
  30. equals(R[0], " wheezy contrib main");
  31. List.push_back(" wheezy-update contrib");
  32. R = cd.ReduceSourcelist(CD, List);
  33. equals(R.size(), 2);
  34. equals(R[0], " wheezy contrib main");
  35. equals(R[1], " wheezy-update contrib");
  36. List.push_back(" wheezy-update contrib");
  37. R = cd.ReduceSourcelist(CD, List);
  38. equals(R.size(), 2);
  39. equals(R[0], " wheezy contrib main");
  40. equals(R[1], " wheezy-update contrib");
  41. List.push_back(" wheezy-update non-free");
  42. R = cd.ReduceSourcelist(CD, List);
  43. equals(R.size(), 2);
  44. equals(R[0], " wheezy contrib main");
  45. equals(R[1], " wheezy-update contrib non-free");
  46. List.push_back(" wheezy-update main");
  47. R = cd.ReduceSourcelist(CD, List);
  48. equals(R.size(), 2);
  49. equals(R[0], " wheezy contrib main");
  50. equals(R[1], " wheezy-update contrib main non-free");
  51. List.push_back(" wheezy non-free");
  52. R = cd.ReduceSourcelist(CD, List);
  53. equals(R.size(), 2);
  54. equals(R[0], " wheezy contrib main non-free");
  55. equals(R[1], " wheezy-update contrib main non-free");
  56. List.push_back(" sid main");
  57. R = cd.ReduceSourcelist(CD, List);
  58. equals(R.size(), 3);
  59. equals(R[0], " sid main");
  60. equals(R[1], " wheezy contrib main non-free");
  61. equals(R[2], " wheezy-update contrib main non-free");
  62. List.push_back(" sid main-reduce");
  63. R = cd.ReduceSourcelist(CD, List);
  64. equals(R.size(), 3);
  65. equals(R[0], " sid main main-reduce");
  66. equals(R[1], " wheezy contrib main non-free");
  67. equals(R[2], " wheezy-update contrib main non-free");
  68. return 0;
  69. }