gpt4 book ai didi

haskell - 使用模板haskell获取模块中的对象名称列表?

转载 作者:行者123 更新时间:2023-12-03 14:49:10 24 4
gpt4 key购买 nike

我希望能够获取带有以下声明的文件:

test_1 = assert $ 1 == 1
test_2 = assert $ 2 == 1

并生成一个基本的运行功能,如
main = runTests [test_1, test2]

目标是获得类似于 Python 的 Nose 测试的东西。

我可以用模板 Haskell 做到这一点吗?我找不到很多关于它的文档(Wiki 中有很多断开的链接)。

最佳答案

您可能想查看 test-framework包系列。特别是 test-framework-th包提供了模板 Haskell 函数 defaultMainGenerator只要您遵循在 HUnit 测试用例前加上 case_ 前缀的约定,它就完全符合您对 QuickCheck 和 HUnit 测试的要求。和 QuickCheck 属性与 prop_ .

{-# LANGUAGE TemplateHaskell #-}

import Test.Framework.Providers.HUnit
import Test.Framework.Providers.QuickCheck2
import Test.Framework.TH

import Test.HUnit
import Test.QuickCheck

main = $(defaultMainGenerator)

case_checkThatHUnitWorks =
assert $ 1 == 1

prop_checkThatQuickCheckWorks =
(1 == 1)

关于haskell - 使用模板haskell获取模块中的对象名称列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4361145/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com