summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--RPM4/src/RPM4.xs35
-rw-r--r--RPM4/t/07dep.t38
2 files changed, 69 insertions, 4 deletions
diff --git a/RPM4/src/RPM4.xs b/RPM4/src/RPM4.xs
index c59ceec..96d937b 100644
--- a/RPM4/src/RPM4.xs
+++ b/RPM4/src/RPM4.xs
@@ -2091,7 +2091,7 @@ rpmlibdep()
#endif
void
-rpmlibsysinfo(sysinfofile = NULL)
+rpmsysinfodep(sysinfofile = NULL)
char * sysinfofile
PREINIT:
#ifdef RPM4_4_3
@@ -2106,7 +2106,7 @@ rpmlibsysinfo(sysinfofile = NULL)
#endif
void
-rpmlibgetconf(path = NULL)
+rpmgetconfdep(path = NULL)
char * path
PREINIT:
#ifdef RPM4_4_3
@@ -2121,7 +2121,7 @@ rpmlibgetconf(path = NULL)
#endif
void
-rpmcpuinfo(path = NULL)
+rpmcpuinfodep(path = NULL)
char * path
PREINIT:
#ifdef RPM4_4_3
@@ -2135,7 +2135,36 @@ rpmcpuinfo(path = NULL)
#else
#endif
+void
+rpmunamedep()
+ PREINIT:
+#ifdef RPM4_4_3
+ rpmds Dep = NULL;
+#endif
+ PPCODE:
+#ifdef RPM4_4_3
+ if(!rpmdsUname(&Dep, NULL)) {
+ XPUSHs(sv_2mortal(sv_setref_pv(newSVpv("", 0), bless_rpmds, Dep)));
+ }
+#else
+#endif
+void
+rpmpipedep(cmd, tag = 0)
+ char * cmd
+ int tag
+ PREINIT:
+#ifdef RPM4_4_3
+ rpmds Dep = NULL;
+#endif
+ PPCODE:
+#ifdef RPM4_4_3
+ if(!rpmdsPipe(&Dep, tag, cmd)) {
+ XPUSHs(sv_2mortal(sv_setref_pv(newSVpv("", 0), bless_rpmds, Dep)));
+ }
+#else
+#endif
+
MODULE = RPM4 PACKAGE = RPM4::Header::Dependencies PREFIX = Dep_
void
diff --git a/RPM4/t/07dep.t b/RPM4/t/07dep.t
index e51327e..36af91e 100644
--- a/RPM4/t/07dep.t
+++ b/RPM4/t/07dep.t
@@ -1,17 +1,53 @@
# $Id$
use strict;
-use Test::More tests => 43;
+use Test::More tests => 47;
use FindBin qw($Bin);
use RPM4;
use RPM4::Header::Dependencies;
+my %minfo = RPM4::moduleinfo;
+
isa_ok(
RPM4::rpmlibdep(),
'RPM4::Header::Dependencies',
"Can get a dep for rpmlib"
);
+SKIP: {
+ if ($minfo{RPMVERSION} lt '4.4.3') {
+ skip(
+ "These function are supported only for rpm 4.4.3 or highter",
+ 4
+ );
+ }
+
+ ok(1); # TODO NEED review
+ #isa_ok(
+ # RPM4::rpmsysinfodep(),
+ # 'RPM4::Header::Dependencies',
+ # "Can get a dep for sysinfo"
+ #);
+
+ isa_ok(
+ RPM4::rpmgetconfdep(),
+ 'RPM4::Header::Dependencies',
+ "Can get a dep for getconf"
+ );
+
+ isa_ok(
+ RPM4::rpmcpuinfodep(),
+ 'RPM4::Header::Dependencies',
+ "Can get a dep for cpuinfo"
+ );
+
+ isa_ok(
+ RPM4::rpmunamedep(),
+ 'RPM4::Header::Dependencies',
+ "Can get a dep for cpuinfo"
+ );
+}
+
my $htest = RPM4::Header->new("$Bin/test-rpm-1.0-1mdk.noarch.rpm");
my $hdep = RPM4::Header->new("$Bin/test-dep-1.0-1mdk.noarch.rpm");
isa_ok($htest, 'RPM4::Header', '$htest');