小编hpy*_*ing的帖子

不在EUnit中输出异常堆栈跟踪

我用EUnit写了一个测试,但在控制台中没有任何异常细节输出.

exp_test() ->
  ?assertEqual(0, 1/0).
Run Code Online (Sandbox Code Playgroud)

运行此模块:下面的Erlang Shell输出中的exp_test()

** exception error: bad argument in an arithmetic expression
 in function  exp_test:'-exp_test/0-fun-0-'/1 (src/test/eunit/xxx_test.erl, line 8)
Run Code Online (Sandbox Code Playgroud)

但在EUnit输出之后

> eunit:test(xxx).
> xxx_test: exp_test...*failed*
  ::badarith
Run Code Online (Sandbox Code Playgroud)

EUnit不输出任何异常跟踪信息

我在eunit中尝试了详细的配置,但没有效果.

我想在eunit测试结果中输出一些异常细节.

谢谢〜

erlang eunit

7
推荐指数
3
解决办法
937
查看次数

调用CFRelease时崩溃(ABAddressBookRef ref)

这是我的代码,运行最后一行CFRelease(addressBook),程序崩溃!帮帮我〜!

ABAddressBookRef addressBook = ABAddressBookCreateWithOptions(NULL, NULL);

NSMutableArray *groups = [NSMutableArray arrayWithCapacity:ABAddressBookGetGroupCount(addressBook)];
NSMutableArray *people = [NSMutableArray arrayWithCapacity:ABAddressBookGetGroupCount(addressBook)];

[(NSArray *)CFBridgingRelease(ABAddressBookCopyArrayOfAllGroups(addressBook)) enumerateObjectsUsingBlock:^(id obj_g, NSUInteger idx, BOOL *stop) {
    ABRecordRef g = (__bridge ABRecordRef)obj_g;
    NSString *gname = CFBridgingRelease(ABRecordCopyCompositeName(g));

    NSMutableArray *gp = [[[NSArray alloc] init] mutableCopy];

    [(NSArray *)CFBridgingRelease(ABGroupCopyArrayOfAllMembers(g)) enumerateObjectsUsingBlock:^(id obj_p, NSUInteger idx, BOOL *stop) {
        ABRecordRef p = (__bridge ABRecordRef)obj_p;
        ABMultiValueRef numbers = ABRecordCopyValue(p, kABPersonPhoneProperty);

        NSString *pname = CFBridgingRelease(ABRecordCopyCompositeName(p));

        [(NSArray *) CFBridgingRelease(ABMultiValueCopyArrayOfAllValues(numbers)) enumerateObjectsUsingBlock:^(id obj_n, NSUInteger idx, BOOL *stop) {
            NSString *pnumber = CFBridgingRelease(CFBridgingRetain(obj_n)); …
Run Code Online (Sandbox Code Playgroud)

ios

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

标签 统计

erlang ×1

eunit ×1

ios ×1