#!/usr/bin/env ruby -I.. # # $Id$ require 'test/unit' require 'pkgdb' class TestPkgDB < Test::Unit::TestCase def test_strip pwd = Dir.pwd pkgdb = PkgDB.instance.setup('/var/db/pkg') libtool_pkgname = 'libtool-1.3.5_2' assert_equal('foo1', pkgdb.strip('foo1')) assert_equal('foo2', pkgdb.strip('foo2/')) assert_equal('bar/foo', pkgdb.strip('bar/foo')) assert_equal(nil, pkgdb.strip('baz/bar/foo')) assert_equal(nil, pkgdb.strip('/baz/bar/foo')) assert_equal(libtool_pkgname, pkgdb.strip(libtool_pkgname, true)) assert_equal(nil, pkgdb.strip('./' + libtool_pkgname, true)) Dir.chdir(pkgdb.db_dir) assert_equal('foo3', pkgdb.strip('/var/db/pkg/foo3')) assert_equal('foo4', pkgdb.strip('/var/db/pkg/foo4/')) assert_equal('foo5', pkgdb.strip('foo5')) assert_equal('foo6', pkgdb.strip('foo6/')) assert_equal(nil, pkgdb.strip('/var/db/pkg/foo/bar', true)) assert_equal(nil, pkgdb.strip('/var/db/pkg/', true)) assert_equal(nil, pkgdb.strip('/var/db/pkg/.', true)) assert_equal(nil, pkgdb.strip('/foo', true)) assert_equal(nil, pkgdb.strip('/foo/bar', true)) assert_equal(libtool_pkgname, pkgdb.strip(libtool_pkgname, true)) assert_equal(libtool_pkgname, pkgdb.strip('/var/db/pkg/' + libtool_pkgname, true)) assert_equal(nil, pkgdb.strip('../' + libtool_pkgname, true)) ensure Dir.chdir(pwd) end end