| 169 | } |
| 170 | |
| 171 | func (s *PackageListSuite) TestRemoveWhenIndexed(c *C) { |
| 172 | s.il.Remove(s.packages[0]) |
| 173 | names := make([]string, s.il.Len()) |
| 174 | for i, p := range s.il.packagesIndex { |
| 175 | names[i] = p.Name |
| 176 | } |
| 177 | c.Check(names, DeepEquals, []string{"aa", "app", "app", "app", "app", "data", "dpkg", "dpkg", "dpkg", "dpkg", "dpkg", "libx", "mailer"}) |
| 178 | |
| 179 | s.il.Remove(s.packages[4]) |
| 180 | names = make([]string, s.il.Len()) |
| 181 | for i, p := range s.il.packagesIndex { |
| 182 | names[i] = p.Name |
| 183 | } |
| 184 | c.Check(names, DeepEquals, []string{"aa", "app", "app", "app", "app", "data", "dpkg", "dpkg", "dpkg", "dpkg", "dpkg", "libx"}) |
| 185 | c.Check(s.il.providesIndex["mail-agent"], DeepEquals, []*Package{}) |
| 186 | |
| 187 | s.il.Remove(s.packages[9]) |
| 188 | names = make([]string, s.il.Len()) |
| 189 | for i, p := range s.il.packagesIndex { |
| 190 | names[i] = p.Name |
| 191 | } |
| 192 | c.Check(names, DeepEquals, []string{"aa", "app", "app", "app", "app", "data", "dpkg", "dpkg", "dpkg", "dpkg", "libx"}) |
| 193 | c.Check(s.il.providesIndex["package-installer"], HasLen, 2) |
| 194 | |
| 195 | s.il.Remove(s.packages[1]) |
| 196 | names = make([]string, s.il.Len()) |
| 197 | for i, p := range s.il.packagesIndex { |
| 198 | names[i] = p.Name |
| 199 | } |
| 200 | c.Check(names, DeepEquals, []string{"aa", "app", "app", "app", "app", "data", "dpkg", "dpkg", "dpkg", "libx"}) |
| 201 | c.Check(s.il.providesIndex["package-installer"], DeepEquals, []*Package{s.packages[11]}) |
| 202 | } |
| 203 | |
| 204 | func (s *PackageListSuite) TestForeach(c *C) { |
| 205 | _ = s.list.Add(s.p1) |