Skip to content

Commit

Permalink
#116 tests reformatted
Browse files Browse the repository at this point in the history
  • Loading branch information
yegor256 committed Oct 20, 2023
1 parent d2e48ef commit fc5be6b
Show file tree
Hide file tree
Showing 14 changed files with 208 additions and 164 deletions.
30 changes: 17 additions & 13 deletions tests/filters/test-070-delete-invalid-files.sh
Expand Up @@ -28,20 +28,24 @@ stdout=$2

list=${temp}/temp/filter-lists/invalid-files.txt

java="${temp}/foo/dir (with) _ long & and 'weird' \"name\" /Foo.java"
mkdir -p "$(dirname "${java}")"
echo "class Foo{} class Bar{}" > "${java}"
rm -f "${list}"
msg=$("${LOCAL}/filters/070-delete-invalid-files.sh" "${temp}" "${temp}/temp")
echo "${msg}" | grep "that's why were deleted" >> "${stdout}" 2>&1
test ! -e "${java}"
test -e "${list}"
test "$(wc -l < "${list}" | xargs)" = 1
{
java="${temp}/foo/dir (with) _ long & and 'weird' \"name\" /Foo.java"
mkdir -p "$(dirname "${java}")"
echo "class Foo{} class Bar{}" > "${java}"
rm -f "${list}"
msg=$("${LOCAL}/filters/070-delete-invalid-files.sh" "${temp}" "${temp}/temp")
echo "${msg}" | grep "that's why were deleted"
test ! -e "${java}"
test -e "${list}"
test "$(wc -l < "${list}" | xargs)" = 1
} > "${stdout}" 2>&1
echo "👍🏻 An invalid Java file was deleted"

rm -f "${list}"
mkdir -p "${temp}/empty"
msg=$("${LOCAL}/filters/070-delete-invalid-files.sh" "${temp}/empty" "${temp}/temp")
echo "${msg}" | grep "There are no Java classes, nothing to delete" >> "${stdout}" 2>&1
{
rm -f "${list}"
mkdir -p "${temp}/empty"
msg=$("${LOCAL}/filters/070-delete-invalid-files.sh" "${temp}/empty" "${temp}/temp")
echo "${msg}" | grep "There are no Java classes, nothing to delete"
} > "${stdout}" 2>&1
echo "👍🏻 A empty directory didn't fail the script"

22 changes: 12 additions & 10 deletions tests/filters/test-080-delete-symlinks.sh
Expand Up @@ -26,14 +26,16 @@ set -o pipefail
temp=$1
stdout=$2

link="${temp}/foo/dir (with) _ long & and 'weird' \"name\" /a/b/c/Foo.java"
mkdir -p "$(dirname "${link}")"
file="${temp}/x/y- ;/dir (with) ; ' _ l/Bar.java"
mkdir -p "$(dirname "${file}")"
echo > "${file}"
ln -s "${file}" "${link}"
msg=$("${LOCAL}/filters/080-delete-symlinks.sh" "${temp}" "${temp}/temp")
echo "${msg}" | grep "all of them were deleted" >> "${stdout}" 2>&1
test ! -e "${link}"
test -e "${file}"
{
link="${temp}/foo/dir (with) _ long & and 'weird' \"name\" /a/b/c/Foo.java"
mkdir -p "$(dirname "${link}")"
file="${temp}/x/y- ;/dir (with) ; ' _ l/Bar.java"
mkdir -p "$(dirname "${file}")"
echo > "${file}"
ln -s "${file}" "${link}"
msg=$("${LOCAL}/filters/080-delete-symlinks.sh" "${temp}" "${temp}/temp")
echo "${msg}" | grep "all of them were deleted"
test ! -e "${link}"
test -e "${file}"
} > "${stdout}" 2>&1
echo "👍🏻 A symblink was deleted"
34 changes: 19 additions & 15 deletions tests/filters/test-090-delete-empty-directories.sh
Expand Up @@ -26,21 +26,25 @@ set -o pipefail
temp=$1
stdout=$2

empty="${temp}/foo/dir (with) _ long & and 'weird' \"name\" /a/b/c"
mkdir -p "${empty}"
full="${temp}/x/ ; 'w' \"nx\" /f/d/k"
mkdir -p "${full}"
java=${full}/Foo.java
touch "${java}"
msg=$("${LOCAL}/filters/090-delete-empty-directories.sh" "${temp}" "${temp}/temp")
echo "${msg}" | grep "all of them were deleted" >> "${stdout}" 2>&1
test ! -e "${empty}"
test -e "${full}"
test -e "${java}"
{
empty="${temp}/foo/dir (with) _ long & and 'weird' \"name\" /a/b/c"
mkdir -p "${empty}"
full="${temp}/x/ ; 'w' \"nx\" /f/d/k"
mkdir -p "${full}"
java=${full}/Foo.java
touch "${java}"
msg=$("${LOCAL}/filters/090-delete-empty-directories.sh" "${temp}" "${temp}/temp")
echo "${msg}" | grep "all of them were deleted"
test ! -e "${empty}"
test -e "${full}"
test -e "${java}"
} > "${stdout}" 2>&1
echo "👍🏻 A empty directory was deleted"

mkdir -p "${temp}/bar/a/b/c/d/e/f"
msg=$("${LOCAL}/filters/090-delete-empty-directories.sh" "${temp}" "${temp}/temp")
echo "${msg}" | grep "all of them were deleted" >> "${stdout}" 2>&1
test ! -e "${temp}/bar"
{
mkdir -p "${temp}/bar/a/b/c/d/e/f"
msg=$("${LOCAL}/filters/090-delete-empty-directories.sh" "${temp}" "${temp}/temp")
echo "${msg}" | grep "all of them were deleted"
test ! -e "${temp}/bar"
} > "${stdout}" 2>&1
echo "👍🏻 All empty directories deleted recursively"
68 changes: 40 additions & 28 deletions tests/filters/test-delete-non-classes.sh
Expand Up @@ -26,43 +26,55 @@ set -o pipefail
temp=$1
stdout=$2

java="${temp}/Foo (x).java"
echo "interface Foo {}" > "${java}"
"${LOCAL}/filters/delete-non-classes.py" "${java}" "${temp}/deleted.txt"
test ! -e "${java}"
grep "${java}" "${temp}/deleted.txt" >> "${stdout}" 2>&1
{
java="${temp}/Foo (x).java"
echo "interface Foo {}" > "${java}"
"${LOCAL}/filters/delete-non-classes.py" "${java}" "${temp}/deleted.txt"
test ! -e "${java}"
grep "${java}" "${temp}/deleted.txt"
} > "${stdout}" 2>&1
echo "👍🏻 A Java file with a small interface inside was deleted correctly"

java="${temp}/foo/dir (with) _ long & and weird name /Foo.java"
mkdir -p "$(dirname "${java}")"
echo "/* hello */ package foo.bar.xxx; import java.io.File; public interface Foo { File bar(); }" > "${java}"
"${LOCAL}/filters/delete-non-classes.py" "${java}" "${temp}/deleted.txt"
test ! -e "${java}"
grep "${java}" "${temp}/deleted.txt" >> "${stdout}" 2>&1
{
java="${temp}/foo/dir (with) _ long & and weird name /Foo.java"
mkdir -p "$(dirname "${java}")"
echo "/* hello */ package foo.bar.xxx; import java.io.File; public interface Foo { File bar(); }" > "${java}"
"${LOCAL}/filters/delete-non-classes.py" "${java}" "${temp}/deleted.txt"
test ! -e "${java}"
grep "${java}" "${temp}/deleted.txt"
} > "${stdout}" 2>&1
echo "👍🏻 A Java file with a bigger interface inside was deleted correctly"

java=${temp}/Bar.java
echo "enum Bar {}" > "${java}"
"${LOCAL}/filters/delete-non-classes.py" "${java}" "${temp}/deleted.txt"
test ! -e "${java}"
grep "${java}" "${temp}/deleted.txt" >> "${stdout}" 2>&1
{
java=${temp}/Bar.java
echo "enum Bar {}" > "${java}"
"${LOCAL}/filters/delete-non-classes.py" "${java}" "${temp}/deleted.txt"
test ! -e "${java}"
grep "${java}" "${temp}/deleted.txt"
} > "${stdout}" 2>&1
echo "👍🏻 A Java file with a enum inside was deleted correctly"

java=${temp}/Broken.java
echo "broken syntax" > "${java}"
"${LOCAL}/filters/delete-non-classes.py" "${java}" "${temp}/deleted.txt"
test -e "${java}"
grep -v "${java}" "${temp}/deleted.txt" >> "${stdout}" 2>&1
{
java=${temp}/Broken.java
echo "broken syntax" > "${java}"
"${LOCAL}/filters/delete-non-classes.py" "${java}" "${temp}/deleted.txt"
test -e "${java}"
grep -v "${java}" "${temp}/deleted.txt"
} > "${stdout}" 2>&1
echo "👍🏻 A Java file with broken syntax was not deleted, this is correct"

"${LOCAL}/filters/delete-non-classes.py" "${temp}/file-is-absent.java" "${temp}/deleted.txt"
grep -v "${temp}/file-is-absent.java" "${temp}/deleted.txt" >> "${stdout}" 2>&1
{
"${LOCAL}/filters/delete-non-classes.py" "${temp}/file-is-absent.java" "${temp}/deleted.txt"
grep -v "${temp}/file-is-absent.java" "${temp}/deleted.txt"
} > "${stdout}" 2>&1
echo "👍🏻 Absent file didn't fail the script"

java=${temp}/Good.java
echo "class Good {}" > "${java}"
"${LOCAL}/filters/delete-non-classes.py" "${java}" "${temp}/deleted.txt"
test -e "${java}"
grep -v "${java}" "${temp}/deleted.txt" >> "${stdout}" 2>&1
{
java=${temp}/Good.java
echo "class Good {}" > "${java}"
"${LOCAL}/filters/delete-non-classes.py" "${java}" "${temp}/deleted.txt"
test -e "${java}"
grep -v "${java}" "${temp}/deleted.txt"
} > "${stdout}" 2>&1
echo "👍🏻 A good Java file was not deleted, it's correct behavior"

30 changes: 18 additions & 12 deletions tests/filters/test-delete-unparseable.sh
Expand Up @@ -26,20 +26,26 @@ set -o pipefail
temp=$1
stdout=$2

java="${temp}/Foo (; '''''\" привет.java"
echo "this is not Java code at all" > "${java}"
"${LOCAL}/filters/delete-unparseable.py" "${java}" "${temp}/deleted.txt"
test ! -e "${java}"
grep "${java}" "${temp}/deleted.txt" >> "${stdout}" 2>&1
{
java="${temp}/Foo (; '''''\" привет.java"
echo "this is not Java code at all" > "${java}"
"${LOCAL}/filters/delete-unparseable.py" "${java}" "${temp}/deleted.txt"
test ! -e "${java}"
grep "${java}" "${temp}/deleted.txt"
} > "${stdout}" 2>&1
echo "👍🏻 A Java file with a broken syntax inside was deleted correctly"

java=${temp}/Bar.java
echo "class привет { --- }" > "${java}"
"${LOCAL}/filters/delete-unparseable.py" "${java}" "${temp}/deleted.txt"
test ! -e "${java}"
grep "${java}" "${temp}/deleted.txt" >> "${stdout}" 2>&1
{
java=${temp}/Bar.java
echo "class привет { --- }" > "${java}"
"${LOCAL}/filters/delete-unparseable.py" "${java}" "${temp}/deleted.txt"
test ! -e "${java}"
grep "${java}" "${temp}/deleted.txt"
} > "${stdout}" 2>&1
echo "👍🏻 Another broken syntax inside was deleted correctly"

"${LOCAL}/filters/delete-unparseable.py" "${temp}/file-is-absent.java" "${temp}/deleted.txt"
grep -v "${temp}/file-is-absent.java" "${temp}/deleted.txt" >> "${stdout}" 2>&1
{
"${LOCAL}/filters/delete-unparseable.py" "${temp}/file-is-absent.java" "${temp}/deleted.txt"
grep -v "${temp}/file-is-absent.java" "${temp}/deleted.txt"
} > "${stdout}" 2>&1
echo "👍🏻 Absent file didn't fail the script"
28 changes: 15 additions & 13 deletions tests/git-metrics/test-authors.sh
Expand Up @@ -26,17 +26,19 @@ set -o pipefail
temp=$1
stdout=$2

cd "${temp}"
rm -rf ./*
rm -rf .git
git init --quiet .
git config user.email 'foo@example.com'
git config user.name 'Foo'
java="Foo long 'weird' name (--).java"
echo "class Foo {}" > "${java}"
git add "${java}"
git config commit.gpgsign false
git commit --quiet -am start
"${LOCAL}/git-metrics/authors.sh" "${java}" stdout >> "${stdout}" 2>&1
grep "authors 1" stdout >> "${stdout}" 2>&1
{
cd "${temp}"
rm -rf ./*
rm -rf .git
git init --quiet .
git config user.email 'foo@example.com'
git config user.name 'Foo'
java="Foo long 'weird' name (--).java"
echo "class Foo {}" > "${java}"
git add "${java}"
git config commit.gpgsign false
git commit --quiet -am start
"${LOCAL}/git-metrics/authors.sh" "${java}" stdout
grep "authors 1" stdout
} > "${stdout}" 2>&1
echo "👍🏻 Correctly calculated authors"
12 changes: 7 additions & 5 deletions tests/metrics/test-cyclomatic_complexity.sh
Expand Up @@ -26,9 +26,11 @@ set -o pipefail
temp=$1
stdout=$2

java="${temp}/foo/dir (with) _ long & and 'weird' \"name\" /FooTest.java"
mkdir -p "$(dirname "${java}")"
echo "class Foo {}" > "${java}"
"${LOCAL}/metrics/cyclomatic_complexity.py" "${java}" "${temp}/stdout"
grep "cc 1" "${temp}/stdout" >> "${stdout}" 2>&1
{
java="${temp}/foo/dir (with) _ long & and 'weird' \"name\" /FooTest.java"
mkdir -p "$(dirname "${java}")"
echo "class Foo {}" > "${java}"
"${LOCAL}/metrics/cyclomatic_complexity.py" "${java}" "${temp}/stdout"
grep "cc 1" "${temp}/stdout"
} > "${stdout}" 2>&1
echo "👍🏻 Correctly calculated cyclomatic complexity"
24 changes: 14 additions & 10 deletions tests/metrics/test-jpeek.sh
Expand Up @@ -26,16 +26,20 @@ set -o pipefail
temp=$1
stdout=$2

java="${TARGET}/github/foo/bar/Foo.java"
mkdir -p "$(dirname "${java}")"
echo "class Foo {}" > "${java}"
"${LOCAL}/metrics/jpeek.sh" "${java}" "${temp}/stdout" >> "${stdout}" 2>&1
test ! -e "${temp}/stdout"
{
java="${TARGET}/github/foo/bar/Foo.java"
mkdir -p "$(dirname "${java}")"
echo "class Foo {}" > "${java}"
"${LOCAL}/metrics/jpeek.sh" "${java}" "${temp}/stdout"
test ! -e "${temp}/stdout"
} > "${stdout}" 2>&1
echo "👍🏻 Correctly ignored metrics generation"

java="${TARGET}/temp/Test.java"
mkdir -p "$(dirname "${java}")"
echo "class Foo {}" > "${java}"
"${LOCAL}/metrics/jpeek.sh" "${java}" "${temp}/stdout" >> "${stdout}" 2>&1
test -e "${temp}/stdout"
{
java="${TARGET}/temp/Test.java"
mkdir -p "$(dirname "${java}")"
echo "class Foo {}" > "${java}"
"${LOCAL}/metrics/jpeek.sh" "${java}" "${temp}/stdout"
test -e "${temp}/stdout"
} > "${stdout}" 2>&1
echo "👍🏻 Correctly generated metrics description"
24 changes: 12 additions & 12 deletions tests/metrics/test-multimetric.sh
Expand Up @@ -29,25 +29,25 @@ stdout=$2
# To make sure it is installed
multimetric --help >/dev/null

java="${temp}/Foo long 'weird' name (--).java"
cat > "${java}" <<EOT
class Foo extends Boo implements Bar {
// This is static
private static int X = 1;
private String z;
{
java="${temp}/Foo long 'weird' name (--).java"
cat > "${java}" <<EOT
class Foo extends Boo implements Bar {
// This is static
private static int X = 1;
private String z;
Foo(String zz) {
this.z = zz;
Foo(String zz) {
this.z = zz;
}
private final boolean boom() { return true; }
}
private final boolean boom() { return true; }
}
EOT
{
"${LOCAL}/metrics/multimetric.sh" "${java}" "${temp}/stdout"
cat "${temp}/stdout"
grep "hsdif 6.188" "${temp}/stdout"
grep "hsef 758.735" "${temp}/stdout"
grep "hsvol 122.624" "${temp}/stdout"
grep "midx 100" "${temp}/stdout"
} >> "${stdout}" 2>&1
} > "${stdout}" 2>&1
echo "👍🏻 Correctly counted lines of code"
8 changes: 4 additions & 4 deletions tests/metrics/test-pmd.sh
Expand Up @@ -31,11 +31,11 @@ pmd pmd --help > /dev/null
xmllint --version > /dev/null 2>&1
ruby --version > /dev/null

java="${temp}/Foo long 'weird' name (--).java"
mkdir -p "$(dirname "${java}")"
echo "class Foo {}" > "${java}"
{
java="${temp}/Foo long 'weird' name (--).java"
mkdir -p "$(dirname "${java}")"
echo "class Foo {}" > "${java}"
"${LOCAL}/metrics/pmd.sh" "${java}" "${temp}/stdout"
grep "coco 0" "${temp}/stdout"
} >> "${stdout}" 2>&1
} > "${stdout}" 2>&1
echo "👍🏻 Correctly calculated congitive complexity"
22 changes: 12 additions & 10 deletions tests/steps/test-aggregate-join.sh
Expand Up @@ -25,14 +25,16 @@ set -o pipefail

stdout=$2

repo="foo/bar,1"
dir="${TARGET}/data/${repo}"
mkdir -p "${dir}"
echo -e "java_file,loc\nFoo.java,42\nBar.java,256" > "${dir}/loc.csv"
msg=$("${LOCAL}/steps/aggregate-join.sh" "${repo}" "${dir}" 1 1)
echo "${msg}" >> "${stdout}"
test "$(echo "${msg}" | grep -c "sum=0")" = 0
test -e "${TARGET}/data/loc.csv"
grep "repo,java_file,loc" "${TARGET}/data/loc.csv" >> "${stdout}" 2>&1
grep "foo/bar\\\\,1,Foo.java,42" "${TARGET}/data/loc.csv" >> "${stdout}" 2>&1
{
repo="foo/bar,1"
dir="${TARGET}/data/${repo}"
mkdir -p "${dir}"
echo -e "java_file,loc\nFoo.java,42\nBar.java,256" > "${dir}/loc.csv"
msg=$("${LOCAL}/steps/aggregate-join.sh" "${repo}" "${dir}" 1 1)
echo "${msg}" >> "${stdout}"
test "$(echo "${msg}" | grep -c "sum=0")" = 0
test -e "${TARGET}/data/loc.csv"
grep "repo,java_file,loc" "${TARGET}/data/loc.csv"
grep "foo/bar\\\\,1,Foo.java,42" "${TARGET}/data/loc.csv"
} > "${stdout}" 2>&1
echo "👍🏻 A data joined correctly"

0 comments on commit fc5be6b

Please sign in to comment.