@@ -1664,3 +1664,41 @@ (define-public python-wagtail
(description "This package provides a Content Management System based on
Django.")
(license license:bsd-3)))
+
+(define-public python-wagtail-factories
+ (package
+ (name "python-wagtail-factories")
+ (version "4.1.0")
+ (source
+ (origin
+ (method git-fetch)
+ ;; Fetch from the git repository, so that the tests can be run.
+ (uri (git-reference
+ (url "https://github.com/wagtail/wagtail-factories/")
+ (commit (string-append "v" version))))
+ (file-name (string-append name "-" version))
+ (sha256
+ (base32 "19ggc9nm31w7gq2k48ijhiq8dgkh63dsycvhrklxsrh8zwkwgln4"))))
+ (build-system pyproject-build-system)
+ (arguments
+ '(#:test-flags '("--settings=tests.settings" "--pythonpath=.")
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? test-flags #:allow-other-keys)
+ (if tests?
+ (apply invoke "django-admin" "test" test-flags)
+ (format #t "test suite not run~%"))))
+ ;; Importing this module requires setting up a Django project.
+ (delete 'sanity-check))))
+ (propagated-inputs (list python-factory-boy))
+ (native-inputs (list python-pytest
+ python-pytest-django
+ (package/inherit python-wagtail
+ (native-inputs '())
+ (arguments '(#:tests? #f)))))
+ (home-page "https://github.com/wagtail/wagtail-factories/")
+ (synopsis "Factory boy classes for wagtail")
+ (description "This package provides factory boy classes for
+@code{wagtail}. It is used for the migrating streamfields.")
+ (license license:expat)))