1#!/usr/bin/env bats
2
3load helper
4
5setup() {
6  $HDFS mkdir -p /_test_cmd/du/dir1
7  $HDFS mkdir -p /_test_cmd/du/dir2
8  $HDFS mkdir -p /_test_cmd/du/dir3
9  $HADOOP_FS -cp hdfs://$HADOOP_NAMENODE/_test/foo.txt hdfs://$HADOOP_NAMENODE/_test_cmd/du/dir1/foo1.txt
10}
11
12@test "du" {
13  run $HDFS du /_test/foo.txt
14  assert_success
15  assert_output <<OUT
164       /_test/foo.txt
17OUT
18}
19
20@test "du human readable" {
21  run $HDFS du -h /_test/foo.txt
22  assert_success
23  assert_output <<OUT
244B      /_test/foo.txt
25OUT
26}
27
28
29@test "du dir" {
30  run $HDFS du /_test_cmd/du/dir1
31  assert_success
32  assert_output <<OUT
334       /_test_cmd/du/dir1/foo1.txt
344       /_test_cmd/du/dir1
35OUT
36}
37
38@test "du summary" {
39  run $HDFS du -s /_test_cmd/du/dir1
40  assert_success
41  assert_output <<OUT
424       /_test_cmd/du/dir1
43OUT
44}
45
46@test "du nonexistent" {
47  run $HDFS du /_test_cmd/nonexistent
48  assert_failure
49  assert_output <<OUT
50stat /_test_cmd/nonexistent: file does not exist
51OUT
52}
53
54teardown() {
55  $HDFS rm -r /_test_cmd/du
56}
57