小编Rob*_*ith的帖子

断言@propertyname.setter 生成的异常

源代码

我有一些代码要求我调用属性设置器来测试类的锁定功能是否正常工作(类的某些功能是async,要求在执行期间设置挂锁布尔值)。RuntimeError如果已为实例设置了锁,则已写入设置器以引发 a 。

这是代码:

    @filename.setter
    def filename(self, value):
        if not self.__padlock:
            self.__filename = value
        else:
            self.__events.on_error("data_store is locked.  you should be awaiting safe_unlock if you wish to "
                                  "change the source.")
Run Code Online (Sandbox Code Playgroud)

正如你在这里看到的,如果self.__padlockTrue,aRuntimeError被提升。尝试使用 python 断言 setter 时会出现问题unittest

问题

似乎unittest缺乏断言属性设置器是否引发异常所需的功能。

尝试使用assertRaises显然不起作用:

    # Non-working concept
    self.assertRaises(RuntimeError, my_object.filename, "testfile.txt")
Run Code Online (Sandbox Code Playgroud)

问题

如何断言类的属性设置器将在 pythonunittest.TestCase方法中引发给定的异常?

python unit-testing assert properties testcase

2
推荐指数
1
解决办法
265
查看次数

Powershell数组键

Powershell中的键控数组

我发现2015年这个旧的PowerShell文件删除了无用的Windows 10应用程序.很有用.但是出于代码压缩的原因,我发现它是这样编写的,我知道这只是浪费重复的语句:

Write-Host -NoNewline "Removing Candy Crush App..." -ForegroundColor White
Get-AppxPackage -AllUsers | Where-Object {$_.Name -like "king.com*"} | $
Write-Host "DONE" -ForegroundColor Green
Write-Host -Nonewline "Removing Twitter App..." -ForegroundColor White
Get-AppxPackage -AllUsers | Where-Object {$_.Name -like "*Twitter"} | Remove-AppxPackage
Write-Host "DONE" -ForegroundColor Green
Write-Host -Nonewline "Removing Facebook App..." -ForegroundColor White
Get-AppxPackage -AllUsers | Where-Object {$_.Name -like "*Facebook"} | Remove-AppxPackage
Write-Host "DONE" -ForegroundColor Green

...

# News / Sports / Weather
If ($App.DisplayName -eq "Microsoft.BingFinance")
{
    Write-Host -NoNewline "Removing Finance …
Run Code Online (Sandbox Code Playgroud)

arrays powershell

0
推荐指数
1
解决办法
182
查看次数