我正在尝试设置导航抽屉中自定义适配器中的文本视图的文本外观。我想让某些项目的文本比其他项目的文本小(例如谷歌音乐的导航抽屉)。所以我在 getView 方法中有一个 if 语句,我想对列表项使用默认的 android 样式。
我知道我可以执行以下操作:
textView.setTextAppearance(getContext(), android.R.style.TextAppearance_Small);
Run Code Online (Sandbox Code Playgroud)
但我找不到可以在 xml 中设置的 textAppearanceListItem 属性的 android.R.style 值:
android:textAppearance="?android:attr/textAppearanceListItem"
Run Code Online (Sandbox Code Playgroud) 我正在使用Python中的pytest和ctypes在C库中测试函数.C库中的每个函数都调用嵌入式Linux PCI板上的函数,然后C库函数返回一个映射到一组返回码的整数.如果函数成功则返回0,否则返回其他一些错误代码.
我正在寻找一些有关测试此设置的最佳方法的见解,实质上我正在尝试找出测试此库的最佳实践.抛出异常和断言测试用例的最佳方法.我目前使用的测试环境使用pytest,切换会很痛苦.
由于嵌入式linux板具有状态,因此为了测试所有不同的条件,需要为测试设置很多状态.理想情况下,如果出现错误,python将捕获测试中发生的所有错误.
目前我有包装C库代码的python函数.测试将调用python代码,如果函数没有返回0,则包装python函数将抛出异常.因为我使用ctypes来调用DLL上的函数,所以所有的C函数都被python包装起来以使它们更容易调用,因此传递参数更容易.
如果您正在测试在某些条件下调用函数会导致错误,则必须将测试用例包装在凌乱的try-except块中
try:
return_code = call_to_c_api()
assert return_code == 0, "Message about test case"
except MyCustomException:
assert MyCustomException.message="Return code of python wrapped api"
Run Code Online (Sandbox Code Playgroud)如果其中一个设置函数不起作用,请不要使用python库包装C库并使其进行测试以断言失败.
如果有人能够提供任何有关测试的最佳方法的见解,将不胜感激!可能还有其他方法可以测试我尚未考虑过的方法!
干杯!
当typedef中有三个项目时,它意味着什么?
例如:
typedef CK_BYTE CK_PTR CK_BYTE_PTR;
Run Code Online (Sandbox Code Playgroud)
我知道,如果你只是typedef CK_BYTE CK_PTR; 然后CK_BYTE就可以被称为CK_PTR.
我有一个格式如下的文件:
hello = {
a = "2354a"
b = "06567567h"
}
goodbye = {
there = "/home/afhge"
}
...
anotherset = {
dsfsdf = grhbrwecs
dfgtmyj = 12345
}
Run Code Online (Sandbox Code Playgroud)
我在python中使用正则表达式,我想要匹配的是大括号内的所有内容,因此得到的匹配输出将是以下列表:
['\n\n\ta = "2345a"\n\tb = "06567567h"\n\n\n', '\n\there = "/home/afhge"\n\n', '\n\tdsfsdf = grhbrwecs\n\tdfgtmyj = 12345\n\n']
Run Code Online (Sandbox Code Playgroud)
我试过正则表达式:
desired_output = re.findall("{[^}]", file_text)
Run Code Online (Sandbox Code Playgroud)
但是这个正则表达式导致列表:
['{\n', '{\n', '{\n', '{\n', '{\n']
Run Code Online (Sandbox Code Playgroud)
看起来[^}]匹配任何字符直到换行符.我试过做:
desired_output = re.findall("{[^}]", file_text, re.S)
Run Code Online (Sandbox Code Playgroud)
和
desired_output = re.findall("{[^}]", file_text, re.M)
Run Code Online (Sandbox Code Playgroud)
没有成功:(.
谢谢!