Bump to libzypp-bindings 0.7.4
[platform/upstream/libzypp-bindings.git] / swig / ruby / tests / target.rb
1 #
2 # Example for target
3 #
4
5 $:.unshift "../../../build/swig/ruby"
6
7
8 # test loading of extension
9 require 'test/unit'
10 require 'zypp'
11
12 class LoadTest < Test::Unit::TestCase
13   def test_target
14     z = Zypp::ZYppFactory::instance.getZYpp
15
16     assert z.homePath
17     assert z.tmpPath
18
19     z.initializeTarget(Zypp::Pathname.new("/"))
20     t = z.target
21     assert t
22     t.load
23     t.buildCache
24     
25     p = z.pool
26     assert p
27     assert p.size > 0
28     
29     # Iterate over pool, gives PoolItems
30     i = 0
31     puts "#{p.size} PoolItems:"
32     p.each do | pi |
33       i = i + 1
34       break if i > 10
35       # PoolItems have status and a resolvable
36       r = pi.resolvable
37       assert pi.is_a? Zypp::PoolItem
38     end
39     #try iterate with kind
40     i = 0
41     p.each_by_kind(Zypp::ResKind.package) do |pi|
42       
43       i = i + 1
44       break if i > 10
45       assert pi.is_a? Zypp::PoolItem
46       r = pi.resolvable
47       assert Zypp::isKindPackage(pi)
48     end
49
50     i = 0
51     puts "search for libzypp ..."
52     p.each_by_name("libzypp") do |pi|
53       i = i + 1
54       break if i > 10
55       assert pi.is_a? Zypp::PoolItem
56       r = pi.resolvable
57       # broken in current SWIG assert_equal "libzypp",r.name
58       #try to download it
59     end
60
61     assert true
62   end
63 end