wintest: cope with w2k3 form of dcdiag output
authorAndrew Tridgell <tridge@samba.org>
Wed, 1 Dec 2010 05:34:16 +0000 (16:34 +1100)
committerAndrew Tridgell <tridge@samba.org>
Wed, 1 Dec 2010 06:00:47 +0000 (17:00 +1100)
wintest/test-s4-howto.py
wintest/wintest.py

index 28505ff..840901b 100755 (executable)
@@ -692,7 +692,6 @@ def run_dcpromo_as_first_dc(t, vm, func_level=None):
     t.setwinvars(vm)
     t.info("Configuring a windows VM ${WIN_VM} at the first DC in the domain using dcpromo")
     child = t.open_telnet("${WIN_HOSTNAME}", "administrator", "${WIN_PASS}", set_time=True)
-    child.sendline("dcdiag");
     if t.get_is_dc(child):
         return
 
@@ -704,7 +703,6 @@ def run_dcpromo_as_first_dc(t, vm, func_level=None):
         t.setvar("FUNCTION_LEVEL_INT", str(0))
 
     child = t.open_telnet("${WIN_HOSTNAME}", "administrator", "${WIN_PASS}", set_ip=True)
-    child.sendline("dcdiag");
 
     """This server must therefore not yet be a directory server, so we must promote it"""
     child.sendline("copy /Y con answers.txt")
index 4ba4b4d..b8e6ea2 100644 (file)
@@ -343,11 +343,15 @@ class wintest():
         child.expect("C:")
 
     def get_is_dc(self, child):
+        '''check if a windows machine is a domain controller'''
         child.sendline("dcdiag")
-        i = child.expect(["is not a Directory Server", "is not recognized as an internal or external command", "Home Server = "])
+        i = child.expect(["is not a Directory Server",
+                          "is not recognized as an internal or external command",
+                          "Home Server = ",
+                          "passed test Replications"])
         if i == 0:
             return False
-        if i == 1:
+        if i == 1 or i == 3:
             child.expect("C:")
             child.sendline("net config Workstation")
             child.expect("Workstation domain")