/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_013_neg.ksh

https://bitbucket.org/freebsd/freebsd-base · Korn Shell · 87 lines · 24 code · 11 blank · 52 comment · 4 complexity · efa4f4293365613cb186d34f07b8d54b MD5 · raw file

  1. #!/usr/local/bin/ksh93 -p
  2. #
  3. # CDDL HEADER START
  4. #
  5. # The contents of this file are subject to the terms of the
  6. # Common Development and Distribution License (the "License").
  7. # You may not use this file except in compliance with the License.
  8. #
  9. # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
  10. # or http://www.opensolaris.org/os/licensing.
  11. # See the License for the specific language governing permissions
  12. # and limitations under the License.
  13. #
  14. # When distributing Covered Code, include this CDDL HEADER in each
  15. # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  16. # If applicable, add the following below this CDDL HEADER, with the
  17. # fields enclosed by brackets "[]" replaced with your own identifying
  18. # information: Portions Copyright [yyyy] [name of copyright owner]
  19. #
  20. # CDDL HEADER END
  21. #
  22. # $FreeBSD$
  23. #
  24. # Copyright 2007 Sun Microsystems, Inc. All rights reserved.
  25. # Use is subject to license terms.
  26. #
  27. # ident "@(#)zpool_import_013_neg.ksh 1.1 07/10/09 SMI"
  28. #
  29. . $STF_SUITE/include/libtest.kshlib
  30. #################################################################################
  31. #
  32. # __stc_assertion_start
  33. #
  34. # ID: zpool_import_013_neg
  35. #
  36. # DESCRIPTION:
  37. # For pool may be in use from other system,
  38. # 'zpool import' will prompt the warning and fails.
  39. #
  40. # STRATEGY:
  41. # 1. Prepare rawfile that are created from other system.
  42. # 2. Verify 'zpool import' will fail.
  43. # 3. Verify 'zpool import -f' succeed.
  44. #
  45. # TESTABILITY: explicit
  46. #
  47. # TEST_AUTOMATION_LEVEL: automated
  48. #
  49. # CODING_STATUS: COMPLETED (2007-07-05)
  50. #
  51. # __stc_assertion_end
  52. #
  53. ################################################################################
  54. verify_runnable "global"
  55. POOL_NAME=unclean_export
  56. POOL_FILE=unclean_export.dat
  57. function uncompress_pool
  58. {
  59. log_note "Creating pool from $POOL_FILE"
  60. log_must $BZCAT \
  61. $STF_SUITE/tests/cli_root/zpool_import/blockfiles/$POOL_FILE.bz2 \
  62. > $TMPDIR/$POOL_FILE
  63. return 0
  64. }
  65. function cleanup
  66. {
  67. poolexists $POOL_NAME && log_must zpool destroy $POOL_NAME
  68. [[ -e $TMPDIR/$POOL_FILE ]] && rm $TMPDIR/$POOL_FILE
  69. return 0
  70. }
  71. log_assert "'zpool import' fails for pool that was not cleanly exported"
  72. log_onexit cleanup
  73. uncompress_pool
  74. log_mustnot zpool import -d $TMPDIR $POOL_NAME
  75. log_must zpool import -d $TMPDIR -f $POOL_NAME
  76. log_pass "'zpool import' fails for pool that was not cleanly exported"