#!/bin/bash [ -f testing.sh ] && . testing.sh #testing "name" "command" "result" "infile" "stdin" testcmd "l 1024" "-h 123456789" "118M\n" "" "" testcmd "l 1000" "-d 123456789" "123M\n" "" "" testcmd "s 1024" "-h 5675" "5.5K\n" "" "" testcmd "s 1000" "-d 5675" "5.6k\n" "" "" # An example input where we give a better result than coreutils. # 267350/1024=261.08. We say 261K and coreutils says 262K. testcmd "edge case" "-h 267350" "261K\n" "" "" testcmd "-b" "-b 123" "123B\n" "" "" testcmd "-b" "-b 123456789" "118M\n" "" "" testcmd "-s" "-s 123456789" "118 M\n" "" "" testcmd "-bs" "-bs 123456789" "118 M\n" "" "" testcmd "units" "-b 1c 1b 1k 1kd 1m 1md 1g 1gd 1t 1td 1e 1ed" \ "1B\n512B\n1.0K\n0.9K\n1.0M\n977K\n1.0G\n954M\n1.0T\n931G\n1.0E\n888P\n" \ "" "" testcmd "decimal units" "-d 1c 1b 1k 1kd 1m 1md 1g 1gd 1t 1td 1e 1ed" \ "1\n512\n1.0k\n1.0k\n1.0M\n1.0M\n1.0G\n1.0G\n1.1T\n1.0T\n1.1E\n1.0E\n" \ "" "" testcmd "longer output" "-D6 123 1234567 1234567890" "123\n1206K\n1177M\n" "" ""