summaryrefslogtreecommitdiff
path: root/test/libapt/sourcelist_test.cc
diff options
context:
space:
mode:
Diffstat (limited to 'test/libapt/sourcelist_test.cc')
-rw-r--r--test/libapt/sourcelist_test.cc39
1 files changed, 39 insertions, 0 deletions
diff --git a/test/libapt/sourcelist_test.cc b/test/libapt/sourcelist_test.cc
new file mode 100644
index 000000000..83c441092
--- /dev/null
+++ b/test/libapt/sourcelist_test.cc
@@ -0,0 +1,39 @@
+#include <config.h>
+
+#include <apt-pkg/sourcelist.h>
+#include <apt-pkg/fileutl.h>
+
+#include <string>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+
+#include <gtest/gtest.h>
+
+#include "file-helpers.h"
+
+TEST(SourceListTest,ParseFileDeb822)
+{
+ FileFd fd;
+ std::string tempfile;
+ createTemporaryFile("parsefiledeb822.XXXXXX.sources", fd, &tempfile,
+ "Types: deb\n"
+ "URIs: http://ftp.debian.org/debian\n"
+ "Suites: stable\n"
+ "Components: main\n"
+ "Description: short\n"
+ " long description that can be very long\n"
+ "\n"
+ "Types: deb\n"
+ "URIs: http://ftp.debian.org/debian\n"
+ "Suites: unstable\n"
+ "Components: main non-free\n");
+ fd.Close();
+
+ pkgSourceList sources;
+ EXPECT_EQ(true, sources.Read(tempfile));
+ EXPECT_EQ(2, sources.size());
+
+ if (tempfile.empty() == false)
+ unlink(tempfile.c_str());
+}