1 from string
import strip
3 from tests
.baseclass
import *
5 from pykickstart
.errors
import *
6 from pykickstart
.parser
import Packages
7 from pykickstart
.version
import DEVEL
, returnClassForVersion
9 class DevelPackagesBase(CommandTest
):
12 return returnClassForVersion(DEVEL
)
14 class AddGlobs_TestCase(DevelPackagesBase
):
20 self
.assertEqual("""%packages
24 %end""", strip(str(pkgs
)))
26 class AddGroups_TestCase(DevelPackagesBase
):
30 pkgs
.add(["@group-b"])
33 # Groups are printed out in alphabetic order, so group-b comes after Group*
34 self
.assertEqual("""%packages
39 %end""", strip(str(pkgs
)))
42 pkgs
.add(["@group-a --nodefaults"])
43 self
.assertEqual("""%packages
46 %end""", strip(str(pkgs
)))
49 pkgs
.add(["@group-a --optional"])
50 self
.assertEqual("""%packages
53 %end""", strip(str(pkgs
)))
55 self
.assertRaises(KickstartValueError
, pkgs
.add
, ["@group-b --optional --nodefaults"])
57 class AddGroupsAndEnvironment_TestCase(DevelPackagesBase
):
60 pkgs
.add(["@^EnvironmentA"])
62 pkgs
.add(["packageC"])
64 self
.assertEqual("""%packages
69 %end""", strip(str(pkgs
)))
71 class AddPackages_TestCase(DevelPackagesBase
):
74 pkgs
.add(["packageA"])
75 pkgs
.add(["packageB"])
76 pkgs
.add(["packageC"])
78 self
.assertEqual("""%packages
83 %end""", strip(str(pkgs
)))
85 class ExcludeGlobs_TestCase(DevelPackagesBase
):
92 self
.assertEqual("""%packages
97 %end""", strip(str(pkgs
)))
99 class ExcludeGroups_TestCase(DevelPackagesBase
):
102 pkgs
.add(["-@Conflicts"])
103 pkgs
.add(["-@Clustering"])
105 self
.assertEqual("""%packages
109 %end""", strip(str(pkgs
)))
111 class ExcludePackage_TestCase(DevelPackagesBase
):
114 pkgs
.add(["-enlightenment"])
115 pkgs
.add(["-clanlib"])
116 pkgs
.add(["-libass"])
118 self
.assertEqual("""%packages
123 %end""", strip(str(pkgs
)))
125 class Mixed1_TestCase(DevelPackagesBase
):
128 pkgs
.add(["@group-a"])
129 pkgs
.add(["@group-b"])
130 pkgs
.add(["-@group-a"])
132 self
.assertEqual("""%packages
136 %end""", strip(str(pkgs
)))
138 class Mixed2_TestCase(DevelPackagesBase
):
141 pkgs
.add(["vim-enhanced"])
142 pkgs
.add(["package-b"])
143 pkgs
.add(["-vim-enhanced"])
145 self
.assertEqual("""%packages
149 %end""", strip(str(pkgs
)))
151 class Mixed3_TestCase(DevelPackagesBase
):
154 pkgs
.add(["vim-enhanced"])
155 pkgs
.add(["package-b"])
158 self
.assertEqual("""%packages
163 %end""", strip(str(pkgs
)))
165 class MultiLib_TestCase(DevelPackagesBase
):
170 self
.assertEqual("""%packages --default --multilib
172 %end""", str(pkgs
).strip())
174 if __name__
== "__main__":