0

デバイスの状態を表す変数をモックしようとしています

この場合、デバイスを追加しようとしており、次のコードがあります。

if self.network.controller.add_node( secure ) :
    for i in range( 0, 60 ) :
        if flagStarted :
            if self.commandState == self.COMMAND_FAILED or self.commandState == self.COMMAND_FAILED :
            # Transaction Failed or Error
            self.network.controller.cancel_command( )
            self.log.warning( " *** Add Device Failed *** " )
            return False
        elif self.commandState == self.COMMAND_CANCEL :
            # Transaction Canceled
            self.log.debug( " *** Command Canceled " )
            return False
        elif self.commandState == self.COMMAND_COMPLETED :
            # Transaction Completed
            value = ZWaveProtocol.getAddedDevice( )
            if value > 0 :
                dev = DeviceCollection.getDeviceByProtocolID( value, "ZWave" )
                return dev.id
            else :
                if self.commandState == self.COMMAND_STARTING or self.commandState == self.COMMAND_WAITING :
                flagStarted = True
        sys.stdout.write( "." )
        sys.stdout.flush( )
        time.sleep( 1.0 )

    self.network.controller.cancel_command( )
    return -1
else :
    self.log.error( "Failed to add device" )

私がやっていることは、self.network.controller.add_node( secure ) をモックすることです。それを行うと、self.commandState を Starting... に変更します。私が達成したかったのは、約 5 秒後にそれを self に変更することです。操作を正常に終了するには、COMMAND_COMPLETED を使用します。

これを嘲笑する方法はありますか?

4

1 に答える 1