Print this page
7290 ZFS test suite needs to control what utilities it can run
Reviewed by: Dan Kimmel <dan.kimmel@delphix.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>

Split Close
Expand all
Collapse all
          --- old/usr/src/test/zfs-tests/tests/functional/refquota/refquota_002_pos.ksh
          +++ new/usr/src/test/zfs-tests/tests/functional/refquota/refquota_002_pos.ksh
↓ open down ↓ 18 lines elided ↑ open up ↑
  19   19  #
  20   20  # CDDL HEADER END
  21   21  #
  22   22  
  23   23  #
  24   24  # Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
  25   25  # Use is subject to license terms.
  26   26  #
  27   27  
  28   28  #
  29      -# Copyright (c) 2013 by Delphix. All rights reserved.
       29 +# Copyright (c) 2013, 2016 by Delphix. All rights reserved.
  30   30  #
  31   31  
  32   32  . $STF_SUITE/include/libtest.shlib
  33   33  
  34   34  #
  35   35  # DESCRIPTION:
  36   36  #       Quotas are enforced using the minimum of the two properties:
  37   37  #       quota & refquota
  38   38  #
  39   39  # STRATEGY:
  40   40  #       1. Set value for quota and refquota. Quota less than refquota.
  41   41  #       2. Creating file which should be limited by quota.
  42   42  #       3. Switch the value of quota and refquota.
  43   43  #       4. Verify file should be limited by refquota.
  44   44  #
  45   45  
  46   46  verify_runnable "both"
  47   47  
  48   48  function cleanup
  49   49  {
  50      -        log_must $ZFS destroy -rf $TESTPOOL/$TESTFS
  51      -        log_must $ZFS create $TESTPOOL/$TESTFS
  52      -        log_must $ZFS set mountpoint=$TESTDIR $TESTPOOL/$TESTFS
       50 +        log_must zfs destroy -rf $TESTPOOL/$TESTFS
       51 +        log_must zfs create $TESTPOOL/$TESTFS
       52 +        log_must zfs set mountpoint=$TESTDIR $TESTPOOL/$TESTFS
  53   53  }
  54   54  
  55   55  log_assert "Quotas are enforced using the minimum of the two properties"
  56   56  log_onexit cleanup
  57   57  
  58   58  TESTFILE='testfile'
  59   59  fs=$TESTPOOL/$TESTFS
  60      -log_must $ZFS set quota=15M $fs
  61      -log_must $ZFS set refquota=25M $fs
       60 +log_must zfs set quota=15M $fs
       61 +log_must zfs set refquota=25M $fs
  62   62  
  63   63  mntpnt=$(get_prop mountpoint $fs)
  64      -log_mustnot $MKFILE 20M $mntpnt/$TESTFILE
       64 +log_mustnot mkfile 20M $mntpnt/$TESTFILE
  65   65  typeset -i used quota
  66   66  used=$(get_prop used $fs)
  67   67  quota=$(get_prop quota $fs)
  68   68  ((used = used / (1024 * 1024)))
  69   69  ((quota = quota / (1024 * 1024)))
  70   70  if [[ $used -ne $quota ]]; then
  71   71          log_fail "ERROR: $used -ne $quota Quotas are not limited by quota"
  72   72  fi
  73   73  
  74   74  #
  75   75  # Switch the value of them and try again
  76   76  #
  77      -log_must $RM $mntpnt/$TESTFILE
  78      -log_must $ZFS set quota=25M $fs
  79      -log_must $ZFS set refquota=15M $fs
       77 +log_must rm $mntpnt/$TESTFILE
       78 +log_must zfs set quota=25M $fs
       79 +log_must zfs set refquota=15M $fs
  80   80  
  81      -log_mustnot $MKFILE 20M $mntpnt/$TESTFILE
       81 +log_mustnot mkfile 20M $mntpnt/$TESTFILE
  82   82  used=$(get_prop used $fs)
  83   83  refquota=$(get_prop refquota $fs)
  84   84  ((used = used / (1024 * 1024)))
  85   85  ((refquota = refquota / (1024 * 1024)))
  86   86  if [[ $used -ne $refquota ]]; then
  87   87          log_fail "ERROR: $used -ne $refquota Quotas are not limited by refquota"
  88   88  fi
  89   89  
  90   90  log_pass "Quotas are enforced using the minimum of the two properties"
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX