<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="testConf.xsl"?>

<!--
   Licensed to the Apache Software Foundation (ASF) under one or more
   contributor license agreements.  See the NOTICE file distributed with
   this work for additional information regarding copyright ownership.
   The ASF licenses this file to You under the Apache License, Version 2.0
   (the "License"); you may not use this file except in compliance with
   the License.  You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
-->

<configuration>
  <!-- Normal mode is test. To run just the commands and dump the output
       to the log, set it to nocompare -->
  <mode>test</mode>
  
  <!--  Comparator types:
           ExactComparator
           SubstringComparator
           RegexpComparator
           TokenComparator
           -->
  <tests>
    <test>
      <description>setfattr : Add an xattr</description>
      <test-commands>
        <command>-fs NAMENODE -touchz /file1</command>
        <command>-fs NAMENODE -setfattr -n user.a1 -v 123456 /file1</command>
        <command>-fs NAMENODE -getfattr -d /file1</command>
      </test-commands>
      <cleanup-commands>
        <command>-fs NAMENODE -rm /file1</command>
      </cleanup-commands>
      <comparators>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output># file: /file1</expected-output>
        </comparator>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output>user.a1="123456"</expected-output>
        </comparator>
      </comparators>
    </test>
    
    <test>
      <description>setfattr : Add an xattr which has wrong prefix</description>
      <test-commands>
        <command>-fs NAMENODE -touchz /file1</command>
        <command>-fs NAMENODE -setfattr -n uuu.a1 -v 123456 /file1</command>
      </test-commands>
      <cleanup-commands>
        <command>-fs NAMENODE -rm /file1</command>
      </cleanup-commands>
      <comparators>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output>name must be prefixed with user/trusted/security/system/raw, followed by a '.'</expected-output>
        </comparator>
      </comparators>
    </test>
    
    <test>
      <description>setfattr : Add an xattr of trusted namespace</description>
      <test-commands>
        <command>-fs NAMENODE -touchz /file1</command>
        <command>-fs NAMENODE -setfattr -n trusted.a1 -v 123456 /file1</command>
        <command>-fs NAMENODE -getfattr -d /file1</command>
      </test-commands>
      <cleanup-commands>
        <command>-fs NAMENODE -rm /file1</command>
      </cleanup-commands>
      <comparators>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output># file: /file1</expected-output>
        </comparator>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output>trusted.a1="123456"</expected-output>
        </comparator>
      </comparators>
    </test>
    
    <test>
      <description>setfattr : Add an xattr of system namespace</description>
      <test-commands>
        <command>-fs NAMENODE -touchz /file1</command>
        <command>-fs NAMENODE -setfattr -n system.a1 -v 123456 /file1</command>
      </test-commands>
      <cleanup-commands>
        <command>-fs NAMENODE -rm /file1</command>
      </cleanup-commands>
      <comparators>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output>setfattr: User doesn't have permission for xattr: system.a1</expected-output>
        </comparator>
      </comparators>
    </test>
    
    <test>
      <description>setfattr : Add an xattr of security namespace</description>
      <test-commands>
        <command>-fs NAMENODE -touchz /file1</command>
        <command>-fs NAMENODE -setfattr -n security.a1 -v 123456 /file1</command>
      </test-commands>
      <cleanup-commands>
        <command>-fs NAMENODE -rm /file1</command>
      </cleanup-commands>
      <comparators>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output>setfattr: User doesn't have permission for xattr: security.a1</expected-output>
        </comparator>
      </comparators>
    </test>

    <test>
        <description>setfattr : Add the unreadable by superuser xattr to security namespace</description>
        <test-commands>
            <command>-fs NAMENODE -touchz /file1</command>
            <command>-fs NAMENODE -setfattr -n security.hdfs.unreadable.by.superuser /file1</command>
            <command>-fs NAMENODE -getfattr -d /file1</command>
        </test-commands>
        <cleanup-commands>
            <command>-fs NAMENODE -rm /file1</command>
        </cleanup-commands>
        <comparators>
            <comparator>
                <type>SubstringComparator</type>
                <expected-output>security.hdfs.unreadable.by.superuser</expected-output>
            </comparator>
        </comparators>
    </test>

    <test>
        <description>setfattr : Try to delete the unreadable by superuser xattr from security namespace</description>
        <test-commands>
            <command>-fs NAMENODE -touchz /file1</command>
            <command>-fs NAMENODE -setfattr -n security.hdfs.unreadable.by.superuser /file1</command>
            <command>-fs NAMENODE -setfattr -x security.hdfs.unreadable.by.superuser /file1</command>
        </test-commands>
        <cleanup-commands>
            <command>-fs NAMENODE -rm /file1</command>
        </cleanup-commands>
        <comparators>
            <comparator>
                <type>SubstringComparator</type>
                <expected-output>can not be deleted</expected-output>
            </comparator>
        </comparators>
    </test>

    <test>
        <description>setfattr : Try to read a file protected by the unreadable by superuser xattr</description>
        <test-commands>
            <command>-fs NAMENODE -touchz /file1</command>
            <command>-fs NAMENODE -setfattr -n security.hdfs.unreadable.by.superuser /file1</command>
            <command>-fs NAMENODE -get /file1 /tmp/file1</command>
        </test-commands>
        <cleanup-commands>
            <command>-fs NAMENODE -rm /file1</command>
            <command>rm /tmp/file1</command>
        </cleanup-commands>
        <comparators>
            <comparator>
                <type>SubstringComparator</type>
                <expected-output>Access is denied</expected-output>
            </comparator>
        </comparators>
    </test>

    <test>
        <description>setfattr : Try to add a value to the unreadable by superuser xattr</description>
        <test-commands>
            <command>-fs NAMENODE -touchz /file1</command>
            <command>-fs NAMENODE -setfattr -n security.hdfs.unreadable.by.superuser /file1</command>
            <command>-fs NAMENODE -setfattr -n security.hdfs.unreadable.by.superuser -v 1234 /file1</command>
        </test-commands>
        <cleanup-commands>
            <command>-fs NAMENODE -rm /file1</command>
        </cleanup-commands>
        <comparators>
            <comparator>
                <type>SubstringComparator</type>
                <expected-output>Values are not allowed</expected-output>
            </comparator>
        </comparators>
    </test>
    
    <test>
      <description>setfattr : Add an xattr of raw namespace</description>
      <test-commands>
          <command>-fs NAMENODE -touchz /file1</command>
          <command>-fs NAMENODE -setfattr -n raw.a1 -v 123456 /file1</command>
      </test-commands>
      <cleanup-commands>
          <command>-fs NAMENODE -rm /file1</command>
      </cleanup-commands>
      <comparators>
          <comparator>
              <type>SubstringComparator</type>
              <expected-output>setfattr: User doesn't have permission for xattr: raw.a1</expected-output>
          </comparator>
      </comparators>

    </test>

    <test>
        <description>setfattr : Add an xattr of raw namespace</description>
        <test-commands>
            <command>-fs NAMENODE -touchz /file1</command>
            <command>-fs NAMENODE -setfattr -n raw.a1 -v 123456 /.reserved/raw/file1</command>
            <command>-fs NAMENODE -getfattr -n raw.a1 /.reserved/raw/file1</command>
        </test-commands>
        <cleanup-commands>
            <command>-fs NAMENODE -rm /file1</command>
        </cleanup-commands>
        <comparators>
            <comparator>
                <type>SubstringComparator</type>
                <expected-output>raw.a1="123456"</expected-output>
            </comparator>
        </comparators>
    </test>

    <test>
      <description>setfattr : Add an xattr, and encode is text</description>
      <test-commands>
        <command>-fs NAMENODE -touchz /file1</command>
        <command>-fs NAMENODE -setfattr -n user.a1 -v "123456" /file1</command>
        <command>-fs NAMENODE -getfattr -d /file1</command>
      </test-commands>
      <cleanup-commands>
        <command>-fs NAMENODE -rm /file1</command>
      </cleanup-commands>
      <comparators>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output># file: /file1</expected-output>
        </comparator>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output>user.a1="123456"</expected-output>
        </comparator>
      </comparators>
    </test>
    
    <test>
      <description>setfattr : Add an xattr, and encode is hex</description>
      <test-commands>
        <command>-fs NAMENODE -touchz /file1</command>
        <command>-fs NAMENODE -setfattr -n user.a1 -v 0x313233343536 /file1</command>
        <command>-fs NAMENODE -getfattr -d /file1</command>
      </test-commands>
      <cleanup-commands>
        <command>-fs NAMENODE -rm /file1</command>
      </cleanup-commands>
      <comparators>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output># file: /file1</expected-output>
        </comparator>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output>user.a1="123456"</expected-output>
        </comparator>
      </comparators>
    </test>
    
    <test>
      <description>setfattr : Add an xattr, and encode is base64</description>
      <test-commands>
        <command>-fs NAMENODE -touchz /file1</command>
        <command>-fs NAMENODE -setfattr -n user.a1 -v 0sMTIzNDU2 /file1</command>
        <command>-fs NAMENODE -getfattr -d /file1</command>
      </test-commands>
      <cleanup-commands>
        <command>-fs NAMENODE -rm /file1</command>
      </cleanup-commands>
      <comparators>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output># file: /file1</expected-output>
        </comparator>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output>user.a1="123456"</expected-output>
        </comparator>
      </comparators>
    </test>
    
    <test>
      <description>setfattr : Add multiple xattrs</description>
      <test-commands>
        <command>-fs NAMENODE -touchz /file1</command>
        <command>-fs NAMENODE -setfattr -n user.a1 -v 123456 /file1</command>
        <command>-fs NAMENODE -setfattr -n user.a2 -v abc /file1</command>
        <command>-fs NAMENODE -getfattr -d /file1</command>
      </test-commands>
      <cleanup-commands>
        <command>-fs NAMENODE -rm /file1</command>
      </cleanup-commands>
      <comparators>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output># file: /file1</expected-output>
        </comparator>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output>user.a1="123456"</expected-output>
        </comparator>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output>user.a2="abc"</expected-output>
        </comparator>
      </comparators>
    </test>
    
    <test>
      <description>setfattr : Remove an xattr</description>
      <test-commands>
        <command>-fs NAMENODE -touchz /file1</command>
        <command>-fs NAMENODE -setfattr -n user.a1 -v 123456 /file1</command>
        <command>-fs NAMENODE -setfattr -n user.a2 -v abc /file1</command>
        <command>-fs NAMENODE -setfattr -x user.a1 /file1</command>
        <command>-fs NAMENODE -getfattr -d /file1</command>
      </test-commands>
      <cleanup-commands>
        <command>-fs NAMENODE -rm /file1</command>
      </cleanup-commands>
      <comparators>
      	<comparator>
          <type>ExactComparator</type>
          <expected-output># file: /file1#LF#user.a2="abc"#LF#</expected-output>
        </comparator>
      </comparators>
    </test>
    
    <test>
      <description>setfattr : Remove an xattr which doesn't exist</description>
      <test-commands>
        <command>-fs NAMENODE -touchz /file1</command>
        <command>-fs NAMENODE -setfattr -n user.a1 -v 123456 /file1</command>
        <command>-fs NAMENODE -setfattr -x user.a2 /file1</command>
        <command>-fs NAMENODE -getfattr -d /file1</command>
      </test-commands>
      <cleanup-commands>
        <command>-fs NAMENODE -rm /file1</command>
      </cleanup-commands>
      <comparators>
      	<comparator>
          <type>ExactComparator</type>
          <expected-output># file: /file1#LF#user.a1="123456"#LF#</expected-output>
        </comparator>
      </comparators>
    </test>

    <test>
        <description>setfattr : Remove an xattr of raw namespace</description>
        <test-commands>
            <command>-fs NAMENODE -touchz /file1</command>
            <command>-fs NAMENODE -setfattr -n raw.a1 -v 123456 /.reserved/raw/file1</command>
            <command>-fs NAMENODE -setfattr -n raw.a2 -v 123456 /.reserved/raw/file1</command>
            <command>-fs NAMENODE -setfattr -x raw.a2 /.reserved/raw/file1</command>
            <command>-fs NAMENODE -getfattr -d /.reserved/raw/file1</command>
        </test-commands>
        <cleanup-commands>
            <command>-fs NAMENODE -rm /file1</command>
        </cleanup-commands>
        <comparators>
            <comparator>
                <type>SubstringComparator</type>
		<expected-output># file: /.reserved/raw/file1#LF#raw.a1="123456"#LF#</expected-output>
            </comparator>
        </comparators>
    </test>
    
    <test>
      <description>getfattr : Get an xattr</description>
      <test-commands>
        <command>-fs NAMENODE -touchz /file1</command>
        <command>-fs NAMENODE -setfattr -n user.a1 -v 123456 /file1</command>
        <command>-fs NAMENODE -setfattr -n user.a2 -v abc /file1</command>
        <command>-fs NAMENODE -getfattr -n user.a1 /file1</command>
      </test-commands>
      <cleanup-commands>
        <command>-fs NAMENODE -rm /file1</command>
      </cleanup-commands>
      <comparators>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output># file: /file1</expected-output>
        </comparator>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output>user.a1="123456"</expected-output>
        </comparator>
      </comparators>
    </test>
    
    <test>
      <description>getfattr : Get an xattr which doesn't exist</description>
      <test-commands>
        <command>-fs NAMENODE -touchz /file1</command>
        <command>-fs NAMENODE -getfattr -n user.a1 /file1</command>
      </test-commands>
      <cleanup-commands>
        <command>-fs NAMENODE -rm /file1</command>
      </cleanup-commands>
      <comparators>
      	<comparator>
          <type>SubstringComparator</type>
          <expected-output>At least one of the attributes provided was not found</expected-output>
        </comparator>
      </comparators>
    </test>
    
    <test>
      <description>getfattr : Get an xattr, and encode is text</description>
      <test-commands>
        <command>-fs NAMENODE -touchz /file1</command>
        <command>-fs NAMENODE -setfattr -n user.a1 -v 123456 /file1</command>
        <command>-fs NAMENODE -setfattr -n user.a2 -v abc /file1</command>
        <command>-fs NAMENODE -getfattr -n user.a1 -e text /file1</command>
      </test-commands>
      <cleanup-commands>
        <command>-fs NAMENODE -rm /file1</command>
      </cleanup-commands>
      <comparators>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output># file: /file1</expected-output>
        </comparator>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output>user.a1="123456"</expected-output>
        </comparator>
      </comparators>
    </test>
    
    <test>
      <description>getfattr : Get an xattr, and encode is hex</description>
      <test-commands>
        <command>-fs NAMENODE -touchz /file1</command>
        <command>-fs NAMENODE -setfattr -n user.a1 -v 123456 /file1</command>
        <command>-fs NAMENODE -setfattr -n user.a2 -v abc /file1</command>
        <command>-fs NAMENODE -getfattr -n user.a1 -e hex /file1</command>
      </test-commands>
      <cleanup-commands>
        <command>-fs NAMENODE -rm /file1</command>
      </cleanup-commands>
      <comparators>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output># file: /file1</expected-output>
        </comparator>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output>user.a1=0x313233343536</expected-output>
        </comparator>
      </comparators>
    </test>
    
    <test>
      <description>getfattr : Get an xattr, and encode is base64</description>
      <test-commands>
        <command>-fs NAMENODE -touchz /file1</command>
        <command>-fs NAMENODE -setfattr -n user.a1 -v 123456 /file1</command>
        <command>-fs NAMENODE -setfattr -n user.a2 -v abc /file1</command>
        <command>-fs NAMENODE -getfattr -n user.a1 -e base64 /file1</command>
      </test-commands>
      <cleanup-commands>
        <command>-fs NAMENODE -rm /file1</command>
      </cleanup-commands>
      <comparators>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output># file: /file1</expected-output>
        </comparator>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output>user.a1=0sMTIzNDU2</expected-output>
        </comparator>
      </comparators>
    </test>
    
    <test>
      <description>getfattr : Get an xattr, and encode is invalid</description>
      <test-commands>
        <command>-fs NAMENODE -touchz /file1</command>
        <command>-fs NAMENODE -setfattr -n user.a1 -v 123456 /file1</command>
        <command>-fs NAMENODE -setfattr -n user.a2 -v abc /file1</command>
        <command>-fs NAMENODE -getfattr -n user.a1 -e invalid /file1</command>
      </test-commands>
      <cleanup-commands>
        <command>-fs NAMENODE -rm /file1</command>
      </cleanup-commands>
      <comparators>
        <comparator>
          <type>SubstringComparator</type>
          <expected-output>Invalid/unsupported encoding option specified: invalid</expected-output>
        </comparator>
      </comparators>
    </test>
    
    <test>
      <description>getfattr -R : recursive</description>
      <test-commands>
        <command>-fs NAMENODE -mkdir /dir1</command>
        <command>-fs NAMENODE -setfattr -n user.a1 -v 123456 /dir1</command>
        <command>-fs NAMENODE -mkdir /dir1/dir2</command>
        <command>-fs NAMENODE -setfattr -n user.a2 -v abc /dir1/dir2</command>
        <command>-fs NAMENODE -getfattr -R -d /dir1</command>
      </test-commands>
      <cleanup-commands>
        <command>-fs NAMENODE -rm -R /dir1</command>
      </cleanup-commands>
      <comparators>
        <comparator>
          <type>ExactComparator</type>
          <expected-output># file: /dir1#LF#user.a1="123456"#LF## file: /dir1/dir2#LF#user.a2="abc"#LF#</expected-output>
        </comparator>
      </comparators>
    </test>
    
  </tests>
</configuration>