summaryrefslogtreecommitdiffstats
path: root/src/tests/regress/update_loses_autoinstalled_flag.py
blob: 5ae030c6ab237883f9c2bc0dd0571d06b82c1b8c (plain)
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
#!/usr/bin/python3

import os
import opk, cfg, opkgcl

bug = True

opk.regress_init()

open("asdf", "w").close()
a = opk.Opk(Package="a", Version="1.0", Depends="b")
a.write()
b = opk.Opk(Package="b", Version="1.0")
b.write(data_files=["asdf"])

o = opk.OpkGroup()
o.addOpk(a)
o.addOpk(b)
o.write_list()

opkgcl.update()
opkgcl.install("a")

if not opkgcl.is_autoinstalled("b"):
	print("b is not autoinstalled")
	exit(False)

if (bug):
	a = opk.Opk(Package="a", Version="2.0", Depends="b")
	a.write()
	b = opk.Opk(Package="b", Version="2.0")
	b.write(data_files=["asdf"])

	o = opk.OpkGroup()
	o.addOpk(a)
	o.addOpk(b)
	o.write_list()

	opkgcl.update()
	opkgcl.upgrade();

	if not opkgcl.is_autoinstalled("b"):
		print("b is not autoinstalled anymore")
		exit(False)

a = opk.Opk(Package="a", Version="3.0")
a.write(data_files=["asdf"])
os.unlink("asdf")

o = opk.OpkGroup()
o.addOpk(a)
o.write_list()

opkgcl.update()
opkgcl.upgrade();

if opkgcl.is_installed("b", "2.0"):
	print("b is still installed")
	exit(False)

if not opkgcl.is_installed("a", "3.0"):
	print("a is not installed")
	exit(False)