diff options
author | Michael Vogt <michael.vogt@ubuntu.com> | 2010-01-23 00:37:21 +0100 |
---|---|---|
committer | Michael Vogt <michael.vogt@ubuntu.com> | 2010-01-23 00:37:21 +0100 |
commit | b39c18596d05cea1b3c0f0445b17080e9a2e4c19 (patch) | |
tree | a9971b918364ff3e86fd9b7d10086e68e8e88151 /test/libapt/getlistoffilesindir_test.cc | |
parent | 391149ba7f664924a5d2f1cfc5756896ca4ef3a1 (diff) |
* apt-pkg/contrib/fileutl.cc:
- Fix the newly introduced method GetListOfFilesInDir to not
accept every file if no extension is enforced
(= restore old behaviour). (Closes: #565213)
* apt-pkg/policy.cc:
- accept also partfiles with "pref" file extension as valid
* apt-pkg/contrib/configuration.cc:
- accept also partfiles with "conf" file extension as valid
* doc/apt.conf.5.xml:
- reorder description and split out syntax
- add partfile name convention (Closes: #558348)
* doc/apt_preferences.conf.5.xml:
- describe partfile name convention also here
* apt-pkg/deb/dpkgpm.cc:
- don't segfault if term.log file can't be opened.
Thanks Sam Brightman for the patch! (Closes: #475770)
* doc/*:
- replace the per language addendum with a global addendum
- add a explanation why translations include (maybe) english
parts to the new global addendum (Closes: #561636)
* apt-pkg/contrib/strutl.cc:
- fix malloc asseration fail with ja_JP.eucJP locale in
apt-cache search. Thanks Kusanagi Kouichi! (Closes: #548884)
Diffstat (limited to 'test/libapt/getlistoffilesindir_test.cc')
-rw-r--r-- | test/libapt/getlistoffilesindir_test.cc | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/test/libapt/getlistoffilesindir_test.cc b/test/libapt/getlistoffilesindir_test.cc new file mode 100644 index 000000000..ed8d2dad6 --- /dev/null +++ b/test/libapt/getlistoffilesindir_test.cc @@ -0,0 +1,82 @@ +#include <apt-pkg/fileutl.h> + +#include "assert.h" +#include <string> +#include <vector> + +#include <stdio.h> +#include <iostream> + +// simple helper to quickly output a vector of strings +void dumpVector(std::vector<std::string> vec) { + for (std::vector<std::string>::const_iterator v = vec.begin(); + v != vec.end(); v++) + std::cout << *v << std::endl; +} + +#define P(x) string(argv[1]).append("/").append(x) + +int main(int argc,char *argv[]) +{ + if (argc != 2) { + std::cout << "One parameter expected - given " << argc << std::endl; + return 100; + } + + // Files with no extension + std::vector<std::string> files = GetListOfFilesInDir(argv[1], "", true); + equals(files.size(), 2); + equals(files[0], P("01yet-anothernormalfile")); + equals(files[1], P("anormalfile")); + + // Files with no extension - should be the same as above + files = GetListOfFilesInDir(argv[1], "", true, true); + equals(files.size(), 2); + equals(files[0], P("01yet-anothernormalfile")); + equals(files[1], P("anormalfile")); + + // Files with impossible extension + files = GetListOfFilesInDir(argv[1], "impossible", true); + equals(files.size(), 0); + + // Files with impossible or no extension + files = GetListOfFilesInDir(argv[1], "impossible", true, true); + equals(files.size(), 2); + equals(files[0], P("01yet-anothernormalfile")); + equals(files[1], P("anormalfile")); + + // Files with list extension - nothing more + files = GetListOfFilesInDir(argv[1], "list", true); + equals(files.size(), 4); + equals(files[0], P("01yet-anotherapt.list")); + equals(files[1], P("anormalapt.list")); + equals(files[2], P("linkedfile.list")); + equals(files[3], P("multi.dot.list")); + + // Files with conf or no extension + files = GetListOfFilesInDir(argv[1], "conf", true, true); + equals(files.size(), 5); + equals(files[0], P("01yet-anotherapt.conf")); + equals(files[1], P("01yet-anothernormalfile")); + equals(files[2], P("anormalapt.conf")); + equals(files[3], P("anormalfile")); + equals(files[4], P("multi.dot.conf")); + + // Files with disabled extension - nothing more + files = GetListOfFilesInDir(argv[1], "disabled", true); + equals(files.size(), 3); + equals(files[0], P("disabledfile.conf.disabled")); + equals(files[1], P("disabledfile.disabled")); + equals(files[2], P("disabledfile.list.disabled")); + + // Files with disabled or no extension + files = GetListOfFilesInDir(argv[1], "disabled", true, true); + equals(files.size(), 5); + equals(files[0], P("01yet-anothernormalfile")); + equals(files[1], P("anormalfile")); + equals(files[2], P("disabledfile.conf.disabled")); + equals(files[3], P("disabledfile.disabled")); + equals(files[4], P("disabledfile.list.disabled")); + + return 0; +} |