Специфическое покрытие: игнорируемые значения появляются в статистике покрытия - PullRequest
0 голосов
/ 27 мая 2018

Мне нужно собирать покрытие только тогда, когда один из предметов имеет определенное значение (только когда size == BYTE).Код, который я написал:

item size           : size_t       = trans.size using no_collect;
item byte_alignment : uint(bits:2) = trans.addr using no_collect;

cross size, byte_alignment using ignore = (size != BYTE);

В тесте, который я запускаю, size != BYTE, но у меня все еще есть элемент cross_size__byte_alignment в статистике покрытия с нулевым общим средним баллом. Почему?

Как предотвратить сбор страховки на size != BYTE?

Спасибо за помощь

1 Ответ

0 голосов
/ 29 мая 2018

используйте опцию «когда» на элементе / кресте, чтобы сказать , когда вы хотите получить покрытие.используйте опцию «игнорировать», чтобы удалить ведра из элемента / креста.

, если вы хотите собирать только тогда, когда размер равен БАЙТ, а вы не хотите увидеть сегменты с размером , а не BYTE, объедините оба варианта:

cross size, byte_alignment using ignore = (size != BYTE), when = (size == BYTE);
...