__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
#!/bin/sh
# Usage: Run 'contrib/coverage-diff.sh <version1> <version2>' from source-root
# after running
#
# make coverage-test
# make coverage-report
#
# while checked out at <version2>. This script combines the *.gcov files
# generated by the 'make' commands above with 'git diff <version1> <version2>'
# to report new lines that are not covered by the test suite.
V1=$1
V2=$2
diff_lines () {
perl -e '
my $line_num;
while (<>) {
# Hunk header? Grab the beginning in postimage.
if (/^@@ -\d+(?:,\d+)? \+(\d+)(?:,\d+)? @@/) {
$line_num = $1;
next;
}
# Have we seen a hunk? Ignore "diff --git" etc.
next unless defined $line_num;
# Deleted line? Ignore.
if (/^-/) {
next;
}
# Show only the line number of added lines.
if (/^\+/) {
print "$line_num\n";
}
# Either common context or added line appear in
# the postimage. Count it.
$line_num++;
}
'
}
files=$(git diff --name-only "$V1" "$V2" -- \*.c)
# create empty file
>coverage-data.txt
for file in $files
do
git diff "$V1" "$V2" -- "$file" |
diff_lines |
sort >new_lines.txt
if ! test -s new_lines.txt
then
continue
fi
hash_file=$(echo $file | sed "s/\//\#/")
if ! test -s "$hash_file.gcov"
then
continue
fi
sed -ne '/#####:/{
s/ #####://
s/:.*//
s/ //g
p
}' "$hash_file.gcov" |
sort >uncovered_lines.txt
comm -12 uncovered_lines.txt new_lines.txt |
sed -e 's/$/\)/' |
sed -e 's/^/ /' >uncovered_new_lines.txt
grep -q '[^[:space:]]' <uncovered_new_lines.txt &&
echo $file >>coverage-data.txt &&
git blame -s "$V2" -- "$file" |
sed 's/\t//g' |
grep -f uncovered_new_lines.txt >>coverage-data.txt &&
echo >>coverage-data.txt
rm -f new_lines.txt uncovered_lines.txt uncovered_new_lines.txt
done
cat coverage-data.txt
echo "Commits introducing uncovered code:"
commit_list=$(cat coverage-data.txt |
grep -E '^[0-9a-f]{7,} ' |
awk '{print $1;}' |
sort |
uniq)
(
for commit in $commit_list
do
git log --no-decorate --pretty=format:'%an %h: %s' -1 $commit
echo
done
) | sort
rm coverage-data.txt
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| buildsystems | Folder | 0755 |
|
|
| coccinelle | Folder | 0755 |
|
|
| contacts | Folder | 0755 |
|
|
| credential | Folder | 0755 |
|
|
| diff-highlight | Folder | 0755 |
|
|
| examples | Folder | 0755 |
|
|
| fast-import | Folder | 0755 |
|
|
| git-jump | Folder | 0755 |
|
|
| git-shell-commands | Folder | 0755 |
|
|
| hg-to-git | Folder | 0755 |
|
|
| hooks | Folder | 0755 |
|
|
| long-running-filter | Folder | 0755 |
|
|
| persistent-https | Folder | 0755 |
|
|
| remote-helpers | Folder | 0755 |
|
|
| stats | Folder | 0755 |
|
|
| subtree | Folder | 0755 |
|
|
| thunderbird-patch-inline | Folder | 0755 |
|
|
| update-unicode | Folder | 0755 |
|
|
| vscode | Folder | 0755 |
|
|
| workdir | Folder | 0755 |
|
|
| README | File | 2.05 KB | 0644 |
|
| coverage-diff.sh | File | 2.05 KB | 0644 |
|
| git-resurrect.sh | File | 4.25 KB | 0644 |
|
| remotes2config.sh | File | 770 B | 0644 |
|
| rerere-train.sh | File | 1.62 KB | 0644 |
|