[git commit] bc: generate large bc tests on the fly, -5 mbytes in the git tree

Denys Vlasenko vda.linux at googlemail.com
Wed Jan 2 13:00:20 UTC 2019


commit: https://git.busybox.net/busybox/commit/?id=cb7c955aeb593abdde67fd919864185be2eb335d
branch: https://git.busybox.net/busybox/commit/?id=refs/heads/master

Signed-off-by: Denys Vlasenko <vda.linux at googlemail.com>
---
 testsuite/bc.tests        |  54 ++++++++++++++++++++++++++++++++++++----------
 testsuite/bc_large.tar.xz | Bin 5118896 -> 0 bytes
 2 files changed, 43 insertions(+), 11 deletions(-)

diff --git a/testsuite/bc.tests b/testsuite/bc.tests
index fbcfff2e4..7795183a7 100755
--- a/testsuite/bc.tests
+++ b/testsuite/bc.tests
@@ -208,17 +208,17 @@ testing "bc continue in if" \
 	"" "\
 i=2
 while(i--) {
-        11
-        if(i) {
-                21
-                continue
-                22
-        } else {
-                31
-                continue
-                32
+	11
+	if(i) {
+		21
+		continue
+		22
+	} else {
+		31
+		continue
+	32
 	}
-        12
+	12
 }
 99
 "
@@ -245,7 +245,39 @@ testing "bc ibase" \
 	"99\n1295\n1224\n" \
 	"" "a=ZZ;a;ibase=36;a=ZZ;a;ibase=Z;a=ZZ;a"
 
-tar xJf bc_large.tar.xz
+testing "bc parsing of numbers" \
+	"bc 2>&1 | bc 2>&1 | md5sum 2>&1" \
+	"465d8c01308d0863b6f5669e8a1c69fb  -\n" \
+	"" '
+for (b = 2; b <= 16; ++b) {
+	if (b == 10) continue
+	obase = 10
+	print "ibase = A; ibase = ", b, "\n"
+	obase = b
+	for (i = 0; i <= 65536; ++i) {
+		i
+		print "0.", i, "\n"
+		print "1.", i, "\n"
+		print i, ".", i, "\n"
+	}
+}'
+
+testing "bc printing of numbers" \
+	"bc 2>&1 | bc 2>&1 | md5sum 2>&1" \
+	"d884b35d251ca096410712743aeafb9e  -\n" \
+	"" '
+for (b = 2; b <= 101; ++b) {
+	if (b == 10) continue
+	s = b * b
+	print "obase = ", b, "\n"
+	for (i = 0; i <= s; ++i) {
+		i
+		print "0.", i, "\n"
+		print "1.", i, "\n"
+		print i, ".", i, "\n"
+	}
+	2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+}'
 
 for f in bc*.bc; do
 	r="`basename "$f" .bc`_results.txt"
diff --git a/testsuite/bc_large.tar.xz b/testsuite/bc_large.tar.xz
deleted file mode 100644
index b2e358a79..000000000
Binary files a/testsuite/bc_large.tar.xz and /dev/null differ


More information about the busybox-cvs mailing list