test for CapFactory and Capability accessor functions
authorKlaus Kaempf <kkaempf@suse.de>
Fri, 20 Jan 2006 22:31:22 +0000 (22:31 +0000)
committerKlaus Kaempf <kkaempf@suse.de>
Fri, 20 Jan 2006 22:31:22 +0000 (22:31 +0000)
testsuite/zypp/tests/Capabilities.cc [new file with mode: 0644]
testsuite/zypp/tests/Makefile.am

diff --git a/testsuite/zypp/tests/Capabilities.cc b/testsuite/zypp/tests/Capabilities.cc
new file mode 100644 (file)
index 0000000..fb8d45f
--- /dev/null
@@ -0,0 +1,48 @@
+// Capabilities.cc
+//
+// tests for Capabilities 
+//
+#include <string>
+
+#include "zypp/base/Logger.h"
+#include "zypp/CapFactory.h"
+
+using namespace std;
+using namespace zypp;
+
+int main( int argc, char * argv[] )
+{
+    Resolvable::Kind kind = ResTraits<zypp::Package>::kind;
+    CapFactory factory;
+
+    Edition edition ("1.0", "42");
+    Capability cap = factory.parse ( kind, "foo", "=", "1.0-42");
+    if (cap.asString() != "foo == 1.0-42") return 1;
+    if (cap.index() != "foo") return 2;
+    if (cap.op() != Rel::EQ) return 3;
+    if (cap.edition() != edition) return 4;
+
+    Capability cap2 = factory.parse ( kind, "foo", Rel::EQ, edition);
+    if (cap2.index() != cap.index()) return 10;
+    if (cap2.op() != cap.op()) return 11;
+    if (cap2.edition() != cap.edition()) return 12;
+
+    Capability cap3 = factory.parse ( kind, "foo = 1.0-42");
+    if (cap3.index() != cap.index()) return 20;
+    if (cap3.op() != cap.op()) return 21;
+    if (cap3.edition() != cap.edition()) return 22;
+
+    string bash = "/bin/bash";
+    Capability cap4 = factory.parse ( kind, bash);
+    if (cap4.index() != bash) return 30;
+    if (cap4.op() != Rel::NONE) return 31;
+    if (cap4.edition() != Edition::noedition) return 32;
+
+    string hal = "hal(smp)";
+    Capability cap5 = factory.parse ( kind, hal);
+    if (cap5.index() != hal) return 40;
+    if (cap5.op() != Rel::NONE) return 41;
+    if (cap5.edition() != Edition::noedition) return 42;
+
+    return 0;
+}
index bbf210c6725cb76ae1609a82425c21061ab6a0ed..6dc55225cbae660906d7f906832cda01acba0dc6 100644 (file)
@@ -7,7 +7,9 @@ SUBDIRS =
 
 ## ##################################################
 
-noinst_PROGRAMS = Arch Url1 Url2 Url3 Url4 Edition
+noinst_PROGRAMS = Arch Url1 Url2 Url3 Url4\
+       Edition                 \
+       Capabilities
 
 ## ##################################################
 
@@ -21,6 +23,7 @@ Url2_SOURCES = Url2.cc
 Url3_SOURCES = Url3.cc
 Url4_SOURCES = Url4.cc
 Edition_SOURCES = Edition.cc
+Capabilities_SOURCES = Capabilities.cc
 
 ## ##################################################
 
@@ -28,7 +31,7 @@ Edition_SOURCES = Edition.cc
 
 $(noinst_PROGRAMS):    $(top_srcdir)/zypp/lib@PACKAGE@.la
 
-$(top_srcdir)/zypp/lib@PACKAGE@.la:     always
-       $(MAKE) -C $(top_srcdir)/zypp
+#$(top_srcdir)/zypp/lib@PACKAGE@.la:     always
+#      $(MAKE) -C $(top_srcdir)/zypp
 
 ## ##################################################