示例#1
0
def test_interleaved():
    listener = IndentedStringListener()
    task_progress.addNotificationListener(listener)
    task_progress.taskStarted('taskE', 15)
    task_progress.taskProgress('taskE', 5)
    task_progress.taskStarted('taskD', 15)
    task_progress.taskProgress('taskD', 5)
    task_progress.taskProgress('taskE', 5)
    task_progress.taskProgress('taskE', 5)
    task_progress.taskProgress('taskD', 5)
    task_progress.taskFinish('taskE')
    task_progress.taskProgress('taskD', 5)
    task_progress.taskFinish('taskD')
    assert listener.getBuffer() == '''\
    Started    taskE ..................................................
    Progress   taskE ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,OOOOOOOOOOOOOOOOO
    Started    taskD ..................................................
    Progress   taskD ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,OOOOOOOOOOOOOOOOO
    Progress   taskE ,,,,,,,,,,,,,,,,,OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Progress   taskE OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Progress   taskD ,,,,,,,,,,,,,,,,,OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Finish     taskE XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    Progress   taskD OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Finish     taskD XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    '''
    task_progress.removeNotificationListener(listener)
示例#2
0
def test_interleaved():
    listener = IndentedStringListener()
    task_progress.addNotificationListener(listener)
    task_progress.taskStarted('taskE', 15)
    task_progress.taskProgress('taskE', 5)
    task_progress.taskStarted('taskD', 15)
    task_progress.taskProgress('taskD', 5)
    task_progress.taskProgress('taskE', 5)
    task_progress.taskProgress('taskE', 5)
    task_progress.taskProgress('taskD', 5)
    task_progress.taskFinish('taskE')
    task_progress.taskProgress('taskD', 5)
    task_progress.taskFinish('taskD')
    assert listener.getBuffer() == '''\
    Started    taskE ..................................................
    Progress   taskE ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,OOOOOOOOOOOOOOOOO
    Started    taskD ..................................................
    Progress   taskD ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,OOOOOOOOOOOOOOOOO
    Progress   taskE ,,,,,,,,,,,,,,,,,OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Progress   taskE OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Progress   taskD ,,,,,,,,,,,,,,,,,OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Finish     taskE XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    Progress   taskD OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Finish     taskD XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    '''
    task_progress.removeNotificationListener(listener)
示例#3
0
def ntpQueryFinish():
    global _openSocket
    task_progress.taskProgress('ntp')
    try:
        rawData = _openSocket.recv(1024)
    except (socket.error, socket.gaierror), ex:
        log.info('Socket error receiving from NTP server ' + str(ex))
        task_progress.taskFinish('ntp')
        raise NTPError('Socket error ' + str(ex))
示例#4
0
文件: fauxroot.py 项目: vmware/weasel
def longRunningFunction(multiplier, name, times=1):
    duration = SIMULATION_SLOWNESS*multiplier
    import task_progress
    task_progress.taskStarted(name)
    for i in range(times):
        task_progress.taskProgress(name)
        #print 'stalling on', name, 'for', duration
        oldSleep(duration)
    task_progress.taskFinish(name)
示例#5
0
def longRunningFunction(multiplier, name, times=1):
    duration = SIMULATION_SLOWNESS * multiplier
    import task_progress
    task_progress.taskStarted(name)
    for i in range(times):
        task_progress.taskProgress(name)
        #print 'stalling on', name, 'for', duration
        oldSleep(duration)
    task_progress.taskFinish(name)
示例#6
0
def test_simple_amounts():
    listener = IndentedStringListener()
    task_progress.addNotificationListener(listener)
    task_progress.taskStarted('taskC', 15)
    task_progress.taskProgress('taskC', 5)
    task_progress.taskProgress('taskC', 5)
    task_progress.taskProgress('taskC', 5)
    task_progress.taskFinish('taskC')
    assert listener.getBuffer() == '''\
    Started    taskC ..................................................
    Progress   taskC ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,OOOOOOOOOOOOOOOOO
    Progress   taskC ,,,,,,,,,,,,,,,,,OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Progress   taskC OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Finish     taskC XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    '''
    task_progress.removeNotificationListener(listener)
示例#7
0
def test_simple_noamounts():
    listener = IndentedStringListener()
    task_progress.addNotificationListener(listener)
    task_progress.taskStarted('taskA')
    task_progress.taskProgress('taskA')
    task_progress.taskProgress('taskA')
    task_progress.taskProgress('taskA')
    task_progress.taskFinish('taskA')
    assert listener.getBuffer() == '''\
    Started    taskA ..................................................
    Progress   taskA ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Progress   taskA ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Progress   taskA ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Finish     taskA XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    '''
    task_progress.removeNotificationListener(listener)
示例#8
0
def test_simple_noamounts():
    listener = IndentedStringListener()
    task_progress.addNotificationListener(listener)
    task_progress.taskStarted('taskA')
    task_progress.taskProgress('taskA')
    task_progress.taskProgress('taskA')
    task_progress.taskProgress('taskA')
    task_progress.taskFinish('taskA')
    assert listener.getBuffer() == '''\
    Started    taskA ..................................................
    Progress   taskA ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Progress   taskA ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Progress   taskA ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Finish     taskA XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    '''
    task_progress.removeNotificationListener(listener)
示例#9
0
def test_overshoot():
    listener = IndentedStringListener()
    task_progress.addNotificationListener(listener)
    task_progress.taskStarted('taskOvershoot', 8)
    task_progress.taskProgress('taskOvershoot', 5)
    task_progress.taskProgress('taskOvershoot', 5)
    task_progress.taskProgress('taskOvershoot', 5)
    task_progress.taskFinish('taskOvershoot')
    assert listener.getBuffer() == '''\
    Started    taskOvershoot ..................................................
    Progress   taskOvershoot ,,,,,,,,,,,,,,,,,,,OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Progress   taskOvershoot OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Progress   taskOvershoot OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Finish     taskOvershoot XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    '''
    task_progress.removeNotificationListener(listener)
示例#10
0
def test_simple_amounts():
    listener = IndentedStringListener()
    task_progress.addNotificationListener(listener)
    task_progress.taskStarted('taskC', 15)
    task_progress.taskProgress('taskC', 5)
    task_progress.taskProgress('taskC', 5)
    task_progress.taskProgress('taskC', 5)
    task_progress.taskFinish('taskC')
    assert listener.getBuffer() == '''\
    Started    taskC ..................................................
    Progress   taskC ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,OOOOOOOOOOOOOOOOO
    Progress   taskC ,,,,,,,,,,,,,,,,,OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Progress   taskC OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Finish     taskC XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    '''
    task_progress.removeNotificationListener(listener)
示例#11
0
def test_overshoot():
    listener = IndentedStringListener()
    task_progress.addNotificationListener(listener)
    task_progress.taskStarted('taskOvershoot', 8)
    task_progress.taskProgress('taskOvershoot', 5)
    task_progress.taskProgress('taskOvershoot', 5)
    task_progress.taskProgress('taskOvershoot', 5)
    task_progress.taskFinish('taskOvershoot')
    assert listener.getBuffer() == '''\
    Started    taskOvershoot ..................................................
    Progress   taskOvershoot ,,,,,,,,,,,,,,,,,,,OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Progress   taskOvershoot OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Progress   taskOvershoot OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Finish     taskOvershoot XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    '''
    task_progress.removeNotificationListener(listener)
示例#12
0
def cosConnect(pNic=None, vSwitch=None, portGroupName=None, vlanID=None,
               vNic=None, ipConf=None):
    '''Attempt to bring up (connect) a COS network interface.
    Should be able to robustly deal with any or all of the arguments left
    as None.
    '''
    task_progress.taskStarted('network')
    import host_config # in the function namespace to avoid circular imports
    if not host_config.config.hostname:
        host_config.config.hostname = 'localhost'

    if not pNic:
        pNic = getPluggedInAvailableNIC()
            
    task_progress.taskProgress('network')
    if not portGroupName:
        portGroupName = makeDownloadPortgroupName()

    if not vSwitch:
        vSwitch = VirtualSwitchFacade(portGroupName=portGroupName,
                                      vlanID=vlanID)

    vSwitch.uplink = pNic

    if not ipConf:
        ipConf = DHCPIPConfig()

    task_progress.taskProgress('network')
    if not vNic:
        vNic = VirtualNicFacade(ipConfig=ipConf, portGroupName=portGroupName)

    try:
        try:
            # We can't reliably check vNic.enabled, so just disable the
            # re-enable.
            vNic.disable()
            vNic.enable()
        except vmkctl.HostCtlException, ex:
            log.error('HostCtlException during cosConnect(): '+ ex.GetMessage())
            log.debug('If you are testing the installer inside a VM, make'
                      'sure promiscuous mode is available')
            raise WrappedVmkctlException(ex)
    finally:
        task_progress.taskFinish('network')
    
    return vNic
示例#13
0
def test_simple_nototal():
    listener = IndentedStringListener()
    task_progress.addNotificationListener(listener)
    task_progress.taskStarted('taskB')
    task_progress.taskProgress('taskB', 5)
    task_progress.taskProgress('taskB', 25)
    task_progress.taskProgress('taskB', 5)
    task_progress.taskFinish('taskB')

    assert listener.getBuffer() == '''\
    Started    taskB ..................................................
    Progress   taskB ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Progress   taskB ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Progress   taskB ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Finish     taskB XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    '''
    task_progress.removeNotificationListener(listener)
示例#14
0
def test_simple_nototal():
    listener = IndentedStringListener()
    task_progress.addNotificationListener(listener)
    task_progress.taskStarted('taskB')
    task_progress.taskProgress('taskB', 5)
    task_progress.taskProgress('taskB', 25)
    task_progress.taskProgress('taskB', 5)
    task_progress.taskFinish('taskB')

    assert listener.getBuffer() == '''\
    Started    taskB ..................................................
    Progress   taskB ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Progress   taskB ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Progress   taskB ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Finish     taskB XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    '''
    task_progress.removeNotificationListener(listener)
示例#15
0
def test_subtasks():
    listener = IndentedStringListener()
    task_progress.addNotificationListener(listener)
    task_progress.taskStarted('super', 10)
    task_progress.subtaskStarted('sub1', 'super', 10)
    task_progress.taskProgress('sub1', 5)
    task_progress.taskProgress('sub1', 5)
    task_progress.taskFinish('sub1')

    task_progress.subtaskStarted('sub2', 'super', 10, 5)
    task_progress.taskProgress('sub2', 5)
    task_progress.taskProgress('sub2', 5)
    task_progress.taskFinish('sub2')
    task_progress.taskFinish('super')
    assert listener.getBuffer() == '''\
    Started    super ..................................................
    Started    sub1 ..................................................
    Progress   super ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Progress   sub1 ,,,,,,,,,,,,,,,,,,,,,,,,,OOOOOOOOOOOOOOOOOOOOOOOOO
    Progress   super ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Progress   sub1 OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Progress   super ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Finish     sub1 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    Progress   super ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Started    sub2 ..................................................
    Progress   super ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Progress   sub2 ,,,,,,,,,,,,,,,,,,,,,,,,,OOOOOOOOOOOOOOOOOOOOOOOOO
    Progress   super ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Progress   sub2 OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Progress   super ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Finish     sub2 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    Progress   super ,,,,,,,,,,,,,,,,,,,,,,,,,OOOOOOOOOOOOOOOOOOOOOOOOO
    Finish     super XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    '''
    task_progress.removeNotificationListener(listener)
示例#16
0
def test_subtasks():
    listener = IndentedStringListener()
    task_progress.addNotificationListener(listener)
    task_progress.taskStarted('super', 10)
    task_progress.subtaskStarted('sub1', 'super', 10)
    task_progress.taskProgress('sub1', 5)
    task_progress.taskProgress('sub1', 5)
    task_progress.taskFinish('sub1')

    task_progress.subtaskStarted('sub2', 'super', 10, 5)
    task_progress.taskProgress('sub2', 5)
    task_progress.taskProgress('sub2', 5)
    task_progress.taskFinish('sub2')
    task_progress.taskFinish('super')
    assert listener.getBuffer() == '''\
    Started    super ..................................................
    Started    sub1 ..................................................
    Progress   super ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Progress   sub1 ,,,,,,,,,,,,,,,,,,,,,,,,,OOOOOOOOOOOOOOOOOOOOOOOOO
    Progress   super ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Progress   sub1 OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Progress   super ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Finish     sub1 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    Progress   super ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Started    sub2 ..................................................
    Progress   super ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Progress   sub2 ,,,,,,,,,,,,,,,,,,,,,,,,,OOOOOOOOOOOOOOOOOOOOOOOOO
    Progress   super ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Progress   sub2 OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    Progress   super ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    Finish     sub2 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    Progress   super ,,,,,,,,,,,,,,,,,,,,,,,,,OOOOOOOOOOOOOOOOOOOOOOOOO
    Finish     super XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    '''
    task_progress.removeNotificationListener(listener)
示例#17
0
文件: brandiso.py 项目: vmware/weasel
def calc_md5(f, zpos, zlen, isosize):
    from md5 import md5

    f.seek(0, SEEK_END)
    fileSize = f.tell()
    task_progress.taskStarted('brandiso.calc_md5', fileSize)
    m = md5()
    f.seek(0, SEEK_SET)
    pos = 0
    while pos < isosize:
        # Read up to the start of the zero-d out spot, skip that and then read
        # through the rest of the file.
        if pos < zpos:
            blockSize = min(zpos - pos, READ_BLOCK_SIZE)
        elif pos == zpos:
            task_progress.taskProgress('brandiso.calc_md5', zlen)
            pos = zpos + zlen
            f.seek(pos, SEEK_SET)
            m.update('\0' * zlen) # Still need to update the digest with zeroes.
            continue
        else:
            blockSize = min(isosize - pos, READ_BLOCK_SIZE)

        block = f.read(blockSize)
        if not block:
            break

        task_progress.taskProgress('brandiso.calc_md5', len(block))
        m.update(block)
        pos += len(block)

    digest = m.digest()
    assert len(digest) == CHECKSUM_SIZE
    task_progress.taskFinish('brandiso.calc_md5')
    
    return digest
示例#18
0
    return iready != []


def ntpQueryFinish():
    global _openSocket
    task_progress.taskProgress('ntp')
    try:
        rawData = _openSocket.recv(1024)
    except (socket.error, socket.gaierror), ex:
        log.info('Socket error receiving from NTP server ' + str(ex))
        task_progress.taskFinish('ntp')
        raise NTPError('Socket error ' + str(ex))
    carefullyCloseSocket()
    if not rawData:
        log.warn('NTP server did not respond with any data')
        task_progress.taskFinish('ntp')
        raise NTPError('No data received')

    task_progress.taskFinish('ntp')

    twelveBigEndianUnsignedInts = '!12I'
    try:
        dataTuple = struct.unpack(twelveBigEndianUnsignedInts, rawData)
    except struct.error, ex:
        raise NTPError('Error unpacking NTP server response (%s)' % str(ex))
    if dataTuple == 0:
        raise NTPError('NTP server response was 0')

    serverTime = dataTuple[8]
    epochOffset = 2208988800L
    timeTuple = time.localtime(serverTime - epochOffset)