@cryptotaxi247 / kubo / commits / 5e3d3895f

coverage_helper: refactor egreps

License: MIT Signed-off-by: Christian Couder <chriscool@tuxfamily.org>

Christian Couder committed Oct 16, 2015 at 16:18 UTC 5e3d3895f52f99f7714f306bdd4aa186e0fc37f3
1 file changed +32 -39
test/sharness_test_coverage_helper.sh
+32 -39
@@ -48,53 +48,46 @@ CMD_RAW="$TMPDIR/ipfs_cmd_raw.txt"
48 git grep -n -E '\Wipfs\W' -- sharness/t*-*.sh >"$CMD_RAW" ||
49 die "Could not grep ipfs in the sharness tests"
50
51 -log "Remove test_expect_{success,failure} lines"
52 -CMD_EXPECT="$TMPDIR/ipfs_cmd_expect.txt"
53 -egrep -v 'test_expect_.*ipfs' "$CMD_RAW" >"$CMD_EXPECT" ||
54 -die "Could not remove test_expect_{success,failure} lines"
55 -
56 -log "Remove comments"
57 -CMD_COMMENT="$TMPDIR/ipfs_cmd_comment.txt"
58 -egrep -v '^[^:]+:[^:]+:\s*#' "$CMD_EXPECT" >"$CMD_COMMENT" ||
59 -die "Could not remove comments"
60 -
61 -log "Remove test_description lines"
62 -CMD_DESC="$TMPDIR/ipfs_cmd_description.txt"
63 -egrep -v 'test_description=' "$CMD_COMMENT" >"$CMD_DESC" ||
64 -die "Could not remove test_description lines"
65 -
66 -log "Remove grep lines"
67 -CMD_GREP="$TMPDIR/ipfs_cmd_grep.txt"
68 -egrep -v '^[^:]+:[^:]+:\s*e?grep\W[^|]*\Wipfs' "$CMD_DESC" >"$CMD_GREP" ||
69 -die "Could not remove grep lines"
70 -
71 -log "Remove echo lines"
72 -CMD_ECHO="$TMPDIR/ipfs_cmd_echo.txt"
73 -egrep -v '^[^:]+:[^:]+:\s*echo\W[^|]*\Wipfs' "$CMD_GREP" >"$CMD_ECHO" ||
74 -die "Could not remove echo lines"
51 +grep_out() {
52 + pattern="$1"
53 + src="$TMPDIR/ipfs_cmd_${2}.txt"
54 + dst="$TMPDIR/ipfs_cmd_${3}.txt"
55 + desc="$4"
56 +
57 + log "Remove $desc"
58 + egrep -v "$pattern" "$src" >"$dst" || die "Could not remove $desc"
59 +}
60
61 +grep_out 'test_expect_.*ipfs' raw expect "test_expect_{success,failure} lines"
62 +grep_out '^[^:]+:[^:]+:\s*#' expect comment "comments"
63 +grep_out 'test_description=' comment desc "test_description lines"
64 +grep_out '^[^:]+:[^:]+:\s*e?grep\W[^|]*\Wipfs' desc grep "grep lines"
65 +grep_out '^[^:]+:[^:]+:\s*echo\W[^|]*\Wipfs' grep echo "echo lines"
66
67 +grep_in() {
68 + pattern="$1"
69 + src="$TMPDIR/ipfs_cmd_${2}.txt"
70 + dst="$TMPDIR/ipfs_cmd_${3}.txt"
71 + desc="$4"
72
78 -log "Keep ipfs.*/ipfs/"
79 -CMD_SLASH_OK="$TMPDIR/ipfs_cmd_slash_ok.txt"
80 -egrep '\Wipfs\W.*/ipfs/' "$CMD_ECHO" >"$CMD_SLASH_OK"
73 + log "Keep $desc"
74 + egrep "$pattern" "$src" >"$dst"
75 +}
76
82 -log "Keep ipfs.*\.ipfs and \.ipfs.*ipfs"
83 -CMD_DOT_OK="$TMPDIR/ipfs_cmd_dot_ok.txt"
84 -egrep -e '\Wipfs\W.*\.ipfs' -e '\.ipfs.*\Wipfs\W' "$CMD_ECHO" >"$CMD_DOT_OK"
77 +grep_in '\Wipfs\W.*/ipfs/' echo slash_in1 "ipfs.*/ipfs/"
78 +grep_in '/ipfs/.*\Wipfs\W' echo slash_in2 "/ipfs/.*ipfs"
79
86 -log "Remove /ipfs/"
87 -CMD_SLASH="$TMPDIR/ipfs_cmd_slash.txt"
88 -egrep -v '/ipfs/' "$CMD_ECHO" >"$CMD_SLASH" ||
89 -die "Could not remove /ipfs/"
80 +grep_out '/ipfs/' echo slash "/ipfs/"
81
91 -log "Remove .ipfs"
92 -CMD_DOT="$TMPDIR/ipfs_cmd_dot.txt"
93 -egrep -v '\.ipfs' "$CMD_SLASH" >"$CMD_DOT" ||
94 -die "Could not remove .ipfs"
82 +grep_in '\Wipfs\W.*\.ipfs' slash dot_in1 "ipfs.*\.ipfs"
83 +grep_in '\.ipfs.*\Wipfs\W' slash dot_in2 "\.ipfs.*ipfs"
84
85 +grep_out '\.ipfs' slash dot ".ipfs"
86
87 log "Print result"
98 -cat "$CMD_DOT" "$CMD_SLASH_OK" "$CMD_DOT_OK" | sort
88 +for f in dot slash_in1 slash_in2 dot_in1 dot_in2
89 +do
90 + cat "$TMPDIR/ipfs_cmd_${f}.txt"
91 +done | sort | uniq
92
93 # Remove temp directory...