Задний план
Я использую типы записей с линзой . Я написал несколько модульных тестов с помощью HUnit и HSpec.
Однако отчет о покрытии HPC показывает, что методы доступа к полям никогда не выполнялись.
Таким образом, способствуя более низкому охвату типов записей.
Пример
data MetricValue =
MetricValue { _average :: Maybe Scientific
, _count :: Maybe Scientific
, _maximum :: Maybe Scientific
, _minimum :: Maybe Scientific
, _timeStamp :: Text
, _total :: Maybe Scientific
} deriving (Generic, Show)
makeLenses ''MetricValue
Поля _average
, _count
, _maximum
и т. д. были выделены желтым цветом, что указывает на то, что они никогда не выполнялись.
Вопросы
Как улучшить покрытие?
Как мне, вероятно, проверить типы записи с линзами?