diff --git a/pkgs/development/octave-modules/doctest/default.nix b/pkgs/development/octave-modules/doctest/default.nix new file mode 100644 index 000000000000..3c02a20cdad1 --- /dev/null +++ b/pkgs/development/octave-modules/doctest/default.nix @@ -0,0 +1,28 @@ +{ buildOctavePackage +, lib +, fetchurl +}: + +buildOctavePackage rec { + pname = "doctest"; + version = "0.7.0"; + + src = fetchurl { + url = "mirror://sourceforge/octave/${pname}-${version}.tar.gz"; + sha256 = "0hh9izj9ds69bmrvmmj16fd1c4z7733h50c7isl8f714srw26kf4"; + }; + + meta = with lib; { + homepage = "https://octave.sourceforge.io/doctest/index.html"; + license = licenses.bsd3; + maintainers = with maintainers; [ KarlJoad ]; + description = "Find and run example code within documentation"; + longDescription = '' + Find and run example code within documentation. Formatted blocks + of example code are extracted from documentation files and executed + to confirm their output is correct. This can be part of a testing + framework or simply to ensure that documentation stays up-to-date + during software development. + ''; + }; +} diff --git a/pkgs/top-level/octave-packages.nix b/pkgs/top-level/octave-packages.nix index 832f08ba969e..b8ff9a87b021 100644 --- a/pkgs/top-level/octave-packages.nix +++ b/pkgs/top-level/octave-packages.nix @@ -79,6 +79,8 @@ makeScope newScope (self: divand = callPackage ../development/octave-modules/divand { }; + doctest = callPackage ../development/octave-modules/doctest { }; + general = callPackage ../development/octave-modules/general { nettle = pkgs.nettle; };