summaryrefslogtreecommitdiff
path: root/gnu/packages/check.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/check.scm')
-rw-r--r--gnu/packages/check.scm178
1 files changed, 82 insertions, 96 deletions
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 4de5b1c0d4..2dcf33a460 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -48,6 +48,7 @@
;;; Copyright © 2023 Reza Housseini <[email protected]>
;;; Copyright © 2023 Hilton Chain <[email protected]>
;;; Copyright © 2023 Troy Figiel <[email protected]>
+;;; Copyright © 2024 Giacomo Leidi <[email protected]>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -77,6 +78,7 @@
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
#:use-module (gnu packages golang)
+ #:use-module (gnu packages golang-build)
#:use-module (gnu packages gtk)
#:use-module (gnu packages guile)
#:use-module (gnu packages guile-xyz)
@@ -898,94 +900,6 @@ prevent common NGINX misconfigurations. It provides the @command{gixy}
command.")
(license license:mpl2.0))))
-(define-public go-github.com-smartystreets-gunit
- (package
- (name "go-github.com-smartystreets-gunit")
- (version "1.0.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/smartystreets/gunit")
- (commit version)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "00m4zg0kdj49mnpmf9klb44ba71p966xsk6zknrzqgfc8119f35z"))))
- (build-system go-build-system)
- (arguments
- '(;; TODO: This package depends on go-github.com-smartystreets-assertions
- ;; for running the tests, but go-github.com-smartystreets-assertions
- ;; depends on this package, so break this loop by not running the tests
- ;; for this package.
- #:tests? #f
- #:import-path "github.com/smartystreets/gunit"))
- (synopsis "Testing tool for Go, in the style of xUnit")
- (description
- "@code{gunit} allows the test author to use a struct as the scope for a
-group of related test cases, in the style of xUnit fixtures. This makes
-extraction of setup/teardown behavior (as well as invoking the system under
-test) much simpler.")
- (home-page "https://github.com/smartystreets/gunit")
- (license license:expat)))
-
-(define-public go-github.com-smartystreets-assertions
- (package
- (name "go-github.com-smartystreets-assertions")
- (version "1.13.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/smartystreets/assertions")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32 "0flf3fb6fsw3bk1viva0fzrzw87djaj1mqvrx2gzg1ssn7xzfrzr"))))
- (build-system go-build-system)
- (arguments
- (list
- #:import-path "github.com/smartystreets/assertions"
- #:phases
- #~(modify-phases %standard-phases
- (replace 'check
- (lambda* (#:key inputs #:allow-other-keys #:rest args)
- (unless
- ;; The tests fail when run with gccgo.
- (false-if-exception (search-input-file inputs "/bin/gccgo"))
- (apply (assoc-ref %standard-phases 'check) args)))))))
- (native-inputs
- (list go-github.com-smartystreets-gunit))
- (synopsis "Assertions for testing with Go")
- (description
- "The @code{assertions} package provides convenient assertion functions
-for writing tests in Go.")
- (home-page "https://github.com/smartystreets/assertions")
- (license license:expat)))
-
-(define-public go-github.com-smartystreets-goconvey
- (package
- (name "go-github.com-smartystreets-goconvey")
- (version "1.6.3")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/smartystreets/goconvey")
- (commit version)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1ph18rkl3ns3fgin5i4j54w5a69grrmf3apcsmnpdn1wlrbs3dxh"))))
- (build-system go-build-system)
- (arguments
- '(#:import-path "github.com/smartystreets/goconvey"))
- (propagated-inputs
- (list go-github.com-jtolds-gls go-github.com-smartystreets-assertions))
- (synopsis "Go testing tool with both a web and terminal user interface")
- (description
- "GoConvey is a testing tool for Go. It integrates with go test, can show
-test coverage and has a web user interface that will refresh automatically.")
- (home-page "https://github.com/smartystreets/goconvey")
- (license license:expat)))
-
(define-public googletest
(package
(name "googletest")
@@ -1028,7 +942,7 @@ generation.")
(define-public googlebenchmark
(package
(name "googlebenchmark")
- (version "1.8.2")
+ (version "1.8.3")
(home-page "https://github.com/google/benchmark")
(source (origin
(method git-fetch)
@@ -1037,7 +951,7 @@ generation.")
(file-name (git-file-name "google-benchmark" version))
(sha256
(base32
- "1p72bw7xcd88d8268fmmzji59408f552fbiv37jmsixml5dmq9wv"))))
+ "1hf8xrdd9k57kw3mpdi68a78fd96vzdqv3179v2yy5dxx336ffw3"))))
(build-system cmake-build-system)
(arguments
'(#:configure-flags (list "-DBUILD_SHARED_LIBS=ON"
@@ -1052,6 +966,29 @@ generation.")
similar to unit tests.")
(license license:asl2.0)))
+(define-public greatest
+ (package
+ (name "greatest")
+ (version "1.5.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/silentbicycle/greatest")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "11rajkb5m7mlzi3i3v0i27k6rrjw3x8a7bl6fkc29igzpwfbxndy"))))
+ (build-system copy-build-system)
+ (arguments (list #:install-plan
+ #~'(("greatest.h" "include/"))))
+ (home-page "https://github.com/silentbicycle/greatest")
+ (synopsis "Single-header test system")
+ (description "Greatest is a single-header test system for C, including
+macros for defining tests, grouping them into suites, and providing a test
+runner. It is quite unopinionated with most of its features being optional.")
+ (license license:isc)))
+
(define-public cpputest
(package
(name "cpputest")
@@ -1227,14 +1164,14 @@ available via the @code{unittest.mock} module.")
(define-public python-nose2
(package
(name "python-nose2")
- (version "0.11.0")
+ (version "0.14.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "nose2" version))
(sha256
(base32
- "1scxwvwbgfdj41acma41xzdhcfdwjj9irj6sfifdbyf9dryqs83d"))))
+ "1936fkrxg672bhp9i32ivna7jbydl9dpbhyn5f3059xrl1qdfa2w"))))
(build-system python-build-system)
(arguments
(list #:phases
@@ -1245,10 +1182,6 @@ available via the @code{unittest.mock} module.")
;; Tests require nose2 itself.
(setenv "PYTHONPATH" (getcwd))
(invoke (string-append #$output "/bin/nose2") "-v")))))))
- (native-inputs
- (list python-coverage))
- (propagated-inputs
- (list python-six))
(home-page "https://github.com/nose-devs/nose2")
(synopsis "Next generation of nicer testing for Python")
(description
@@ -3194,6 +3127,36 @@ retried.")
allowing you to declaratively define \"match\" rules.")
(license license:bsd-3)))
+(define-public theft
+ (package
+ (name "theft")
+ (version "0.4.5")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/silentbicycle/theft")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1n2mkawfl2bpd4pwy3mdzxwlqjjvb5bdrr2x2gldlyqdwbk7qjhd"))
+ (snippet #~(begin
+ (delete-file "vendor/greatest.h")))))
+ (build-system gnu-build-system)
+ (arguments (list #:make-flags #~(list "VENDOR="
+ (string-append "CC=" #$(cc-for-target))
+ (string-append "PREFIX=" #$output))
+ #:test-target "test"
+ #:phases
+ #~(modify-phases %standard-phases
+ (delete 'bootstrap)
+ (delete 'configure))))
+ (native-inputs (list greatest))
+ (home-page "https://github.com/silentbicycle/theft")
+ (synopsis "Property-based testing for C")
+ (description "Theft is a library for property-based testing.")
+ (license license:isc)))
+
(define-public unittest-cpp
(package
(name "unittest-cpp")
@@ -3594,6 +3557,29 @@ tables by saving expected data in a data directory (courtesy of pytest-datadir)
that can be used to verify that future runs produce the same data.")
(license license:expat)))
+(define-public python-pytest-tornado5
+ (package
+ (name "python-pytest-tornado5")
+ (version "2.0.0")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "pytest-tornado5" version))
+ (sha256
+ (base32
+ "0qb62jw2w0xr6y942yp0qxiy755bismjfpnxaxjjm05gy2pymr8d"))))
+ (build-system pyproject-build-system)
+ (arguments
+ ;; Tests require pytest < 6
+ (list #:tests? #f))
+ (propagated-inputs (list python-pytest python-tornado))
+ (home-page "https://github.com/vidartf/pytest-tornado")
+ (synopsis
+ "Fixtures and markers to simplify testing of Tornado applications")
+ (description
+ "This package provides a @code{py.test} plugin supplying fixtures and
+markers to simplify testing of asynchronous tornado applications.")
+ (license license:asl2.0)))
+
(define-public guile-proba
(package
(name "guile-proba")