1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235
|
require 'test/unit'
require 'debian'
class TestDebian__Deb < Test::Unit::TestCase
def setup
@deb = [Debian::Deb.new(IO.readlines("t/d/w3m_0.2.1-1.f").join("")),
Debian::Deb.new(IO.readlines("t/d/w3m_0.2.1-2.f").join("")),
Debian::Deb.new(IO.readlines("t/d/w3m-ssl_0.2.1-1.f").join("")),
Debian::Deb.new(IO.readlines("t/d/w3m-ssl_0.2.1-2.f").join(""))]
end
def test_package
assert_equal("w3m", @deb[0].package)
assert_equal("w3m", @deb[1].package)
assert_equal("w3m-ssl", @deb[2].package)
assert_equal("w3m-ssl", @deb[3].package)
end
def test_provides
assert_equal(['www-browser'], @deb[0].provides)
assert_equal(['www-browser'], @deb[1].provides)
assert_equal(['www-browser'], @deb[2].provides)
assert_equal(['www-browser'], @deb[3].provides)
end
def test_source
assert_equal("w3m", @deb[0].package)
assert_equal("w3m", @deb[1].package)
assert_equal("w3m-ssl", @deb[2].package)
assert_equal("w3m-ssl", @deb[3].package)
end
def test_unmet
p = Debian::Packages.new("t/d/w3m_met_list")
puts @deb[0].unmet(p)
assert_equal([], @deb[0].unmet(p))
end
def test_version
assert_equal("0.2.1-1", @deb[0].version)
assert_equal("0.2.1-2", @deb[1].version)
assert_equal("0.2.1-1", @deb[2].version)
assert_equal("0.2.1-2", @deb[3].version)
end
def test_status
assert_equal("not-installed", @deb[0].status)
end
def test_selection
assert_equal("unknown", @deb[0].selection)
end
def test_description
assert_equal("WWW browsable pager with excellent tables/frames support",
@deb[0].description)
end
def test_unknown?
assert(@deb[0].unknown?)
d = Debian::Deb.new([IO.readlines("t/d/w3m_0.2.1-1.f"),
"Status: unknown ok not-installed\n"].join(""))
assert(d.unknown?)
end
def test_install?
assert(! @deb[0].installed?)
d = Debian::Deb.new([IO.readlines("t/d/w3m_0.2.1-1.f"),
"Status: install ok installed\n"].join(""))
assert(d.install?)
end
def test_hold?
assert(! @deb[0].hold?)
d = Debian::Deb.new([IO.readlines("t/d/w3m_0.2.1-1.f"),
"Status: hold ok installed\n"].join(""))
assert(d.hold?)
end
def test_deinstall?
assert(! @deb[0].deinstall?)
d = Debian::Deb.new([IO.readlines("t/d/w3m_0.2.1-1.f"),
"Status: deinstall ok not-installed\n"].join(""))
assert(d.deinstall?)
end
def test_remove?
assert(! @deb[0].remove?)
d = Debian::Deb.new([IO.readlines("t/d/w3m_0.2.1-1.f"),
"Status: deinstall ok not-installed\n"].join(""))
assert(d.remove?)
end
def test_purge?
assert(! @deb[0].purge?)
d = Debian::Deb.new([IO.readlines("t/d/w3m_0.2.1-1.f"),
"Status: purge ok not-installed\n"].join(""))
assert(d.purge?)
end
def test_not_installed?
assert(@deb[0].not_installed?)
d = Debian::Deb.new([IO.readlines("t/d/w3m_0.2.1-1.f"),
"Status: unknown ok not-installed\n"].join(""))
assert(d.not_installed?)
end
def test_purged?
assert(@deb[0].purged?)
d = Debian::Deb.new([IO.readlines("t/d/w3m_0.2.1-1.f"),
"Status: unknown ok not-installed\n"].join(""))
assert(d.purged?)
end
def test_unpacked?
assert(! @deb[0].unpacked?)
d = Debian::Deb.new([IO.readlines("t/d/w3m_0.2.1-1.f"),
"Status: install ok unpacked\n"].join(""))
assert(d.unpacked?)
end
def test_half_configured?
assert(! @deb[0].half_configured?)
d = Debian::Deb.new([IO.readlines("t/d/w3m_0.2.1-1.f"),
"Status: install reinstreq half-configured\n"].join(""))
assert(d.half_configured?)
end
def test_intalled?
assert(! @deb[0].installed?)
d = Debian::Deb.new([IO.readlines("t/d/w3m_0.2.1-1.f"),
"Status: install ok installed\n"].join(""))
assert(d.installed?)
end
def test_half_installed?
assert(! @deb[0].half_installed?)
d = Debian::Deb.new([IO.readlines("t/d/w3m_0.2.1-1.f"),
"Status: install reinstreq half-installed\n"].join(""))
assert(d.half_installed?)
end
def test_config_files?
assert(! @deb[0].config_files?)
d = Debian::Deb.new([IO.readlines("t/d/w3m_0.2.1-1.f"),
"Status: install ok config-files\n"].join(""))
assert(d.config_files?)
end
def test_config_only?
assert(! @deb[0].config_only?)
d = Debian::Deb.new([IO.readlines("t/d/w3m_0.2.1-1.f"),
"Status: install ok config-files\n"].join(""))
assert(d.config_only?)
end
def test_removed?
assert(@deb[0].removed?)
d = Debian::Deb.new([IO.readlines("t/d/w3m_0.2.1-1.f"),
"Status: install ok config-files\n"].join(""))
assert(d.removed?)
end
def test_need_fix?
assert(! @deb[0].need_fix?)
d = Debian::Deb.new([IO.readlines("t/d/w3m_0.2.1-1.f"),
"Status: install reinstreq half-installed\n"].join(""))
assert(d.need_fix?)
end
def test_need_action?
assert(! @deb[0].need_action?)
d = Debian::Deb.new([IO.readlines("t/d/w3m_0.2.1-1.f"),
"Status: install ok not-installed\n"].join(""))
assert(d.need_action?)
end
def test_ok?
assert(@deb[0].ok?)
end
def check_apt_cache
@ruby = Dir["t/d/ruby_1.6*.deb"].first
end
# FIXME: test being skipped for now
def __test_filename=()
check_apt_cache
d = Debian::Deb.new(IO.readlines('t/d/w3m_0.2.1-1.f').join(""))
d.filename = @ruby
assert_equal(@ruby, d.filename)
end
def __test_controlFile
# tested by controlData?
end
# FIXME: test being skipped for now
def __test_controlData
check_apt_cache
deb = Debian::DpkgDeb.load(@ruby)
oc = IO.popen("dpkg -f #{@ruby}") {|fp| fp.readlines.join("")}
assert_equal(oc, deb.controlData)
om = IO.popen("dpkg -I #{@ruby} md5sums") {|fp| fp.readlines.join("") }
assert_equal(om, deb.controlData("md5sums"))
end
def __test_dataFile
# tested by dataData?
end
# FIXME: test being skipped for now
def __test_dataData
check_apt_cache
deb = Debian::DpkgDeb.load(@ruby)
oc = IO.popen("dpkg --fsys-tarfile #{@ruby}|tar xfO - '*/copyright'") {|fp|
fp.readlines.join("")
}
assert_equal(oc, deb.dataData('copyright'))
end
# FIXME: test being skipped for now
def __test_sys_tarfile
check_apt_cache
deb = Debian::DpkgDeb.load(@ruby)
os = IO.popen("dpkg --fsys-tarfile #{@ruby}") {|fp|
fp.readlines.join("")
}
ts = deb.sys_tarfile {|fp| fp.readlines.join("") }
assert_equal(os, ts)
end
end
|