Ejemplo n.º 1
0
  def testMultiSomeOffline(self):
    nodes = dict(("node%s.example.com" % i,
                  objects.Node(name="node%s.example.com" % i,
                               offline=((i % 3) == 0),
                               primary_ip="192.0.2.%s" % i))
                  for i in range(1, 255))

    # Resolve no names
    self.assertEqual(rpc._NodeConfigResolver(NotImplemented,
                                             lambda: nodes,
                                             [], None),
                     [])

    # Offline, online and unknown hosts
    self.assertEqual(rpc._NodeConfigResolver(NotImplemented,
                                             lambda: nodes,
                                             ["node3.example.com",
                                              "node92.example.com",
                                              "node54.example.com",
                                              "unknown.example.com",],
                                             None), [
      ("node3.example.com", rpc._OFFLINE),
      ("node92.example.com", "192.0.2.92"),
      ("node54.example.com", rpc._OFFLINE),
      ("unknown.example.com", "unknown.example.com"),
      ])
Ejemplo n.º 2
0
 def testSingleOfflineWithAcceptOffline(self):
   fn = self._GetSingleOfflineNode
   assert fn("node100.example.com").offline
   self.assertEqual(rpc._NodeConfigResolver(fn, NotImplemented,
                                            ["node100.example.com"],
                                            rpc_defs.ACCEPT_OFFLINE_NODE),
                    [("node100.example.com", "192.0.2.100")])
   for i in [False, True, "", "Hello", 0, 1]:
     self.assertRaises(AssertionError, rpc._NodeConfigResolver,
                       fn, NotImplemented, ["node100.example.com"], i)
Ejemplo n.º 3
0
 def testMultiEmpty(self):
   self.assertEqual(rpc._NodeConfigResolver(NotImplemented,
                                            lambda: {},
                                            [], None),
                    [])
Ejemplo n.º 4
0
 def testUnknownSingleNode(self):
   self.assertEqual(rpc._NodeConfigResolver(lambda _: None, NotImplemented,
                                            ["node110.example.com"], None),
                    [("node110.example.com", "node110.example.com")])
Ejemplo n.º 5
0
 def testSingleOffline(self):
   self.assertEqual(rpc._NodeConfigResolver(self._GetSingleOfflineNode,
                                            NotImplemented,
                                            ["node100.example.com"], None),
                    [("node100.example.com", rpc._OFFLINE)])
Ejemplo n.º 6
0
 def testSingleOnline(self):
   self.assertEqual(rpc._NodeConfigResolver(self._GetSingleOnlineNode,
                                            NotImplemented,
                                            ["node90.example.com"], None),
                    [("node90.example.com", "192.0.2.90")])