tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
doctoc: init at 2.2.0
Tomodachi94
2 years ago
ea635ffa
d8056138
+60
3 changed files
expand all
collapse all
unified
split
pkgs
by-name
do
doctoc
package.nix
test-generates-valid-markdown
default.nix
input.md
+35
pkgs/by-name/do/doctoc/package.nix
···
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
···
1
+
{
2
+
lib,
3
+
buildNpmPackage,
4
+
fetchFromGitHub,
5
+
callPackage,
6
+
}:
7
+
8
+
buildNpmPackage rec {
9
+
pname = "doctoc";
10
+
version = "2.2.0";
11
+
12
+
src = fetchFromGitHub {
13
+
owner = "thlorenz";
14
+
repo = "doctoc";
15
+
rev = "v${version}";
16
+
hash = "sha256-LYVxW8bZ4M87CmBvPyp4y0IeL9UFawwAKnUWHEWB5Gs=";
17
+
};
18
+
19
+
npmDepsHash = "sha256-TbAnFpiN/v6xjQQznL/B180f0W48HPRqW21cO9XZhYA=";
20
+
21
+
dontNpmBuild = true;
22
+
23
+
passthru.tests = {
24
+
generates-valid-markdown = callPackage ./test-generates-valid-markdown { };
25
+
};
26
+
27
+
meta = {
28
+
description = "Generate table of contents for Markdown files";
29
+
homepage = "https://github.com/thlorenz/doctoc";
30
+
license = lib.licenses.mit;
31
+
maintainers = with lib.maintainers; [ tomodachi94 ];
32
+
mainProgram = "doctoc";
33
+
platforms = lib.platforms.all;
34
+
};
35
+
}
+14
pkgs/by-name/do/doctoc/test-generates-valid-markdown/default.nix
···
0
0
0
0
0
0
0
0
0
0
0
0
0
0
···
1
+
{ runCommandNoCC, doctoc }:
2
+
runCommandNoCC "doctoc-test-generates-valid-markdown.md" { nativeBuildInputs = [ doctoc ]; } ''
3
+
cp ${./input.md} ./target.md && chmod +w ./target.md
4
+
doctoc ./target.md
5
+
6
+
# Ensure that ./target.md changed
7
+
cmp --quiet ${./input.md} ./target.md && echo "doctoc-test-generates-valid-markdown: files unchanged, test fails" && exit 1
8
+
# Check for DocToc's default title
9
+
grep --fixed-strings '**Table of Contents** *generated with [DocToc](https://github.com/thlorenz/doctoc)*' target.md
10
+
# Check for at least one Markdown anchor link
11
+
grep --extended-regexp '\- \[.*\]\(#[a-z-]*\)' target.md
12
+
13
+
cp target.md $out
14
+
''
+11
pkgs/by-name/do/doctoc/test-generates-valid-markdown/input.md
···
0
0
0
0
0
0
0
0
0
0
0
···
1
+
# Hello Nixpkgs!
2
+
3
+
## I am a document consisting entirely of headings.
4
+
5
+
### Woah, it's a third-level heading!
6
+
7
+
#### A fourth-level...
8
+
9
+
### Another third-level!
10
+
11
+
## A second level.