1d7e7cb9cSYuri Pankov#! /usr/bin/ksh -p 2d7e7cb9cSYuri Pankov# 3d7e7cb9cSYuri Pankov# 4d7e7cb9cSYuri Pankov# This file and its contents are supplied under the terms of the 5d7e7cb9cSYuri Pankov# Common Development and Distribution License ("CDDL"), version 1.0. 6d7e7cb9cSYuri Pankov# You may only use this file in accordance with the terms of version 7d7e7cb9cSYuri Pankov# 1.0 of the CDDL. 8d7e7cb9cSYuri Pankov# 9d7e7cb9cSYuri Pankov# A full copy of the text of the CDDL should have accompanied this 10d7e7cb9cSYuri Pankov# source. A copy of the CDDL is also available via the Internet at 11d7e7cb9cSYuri Pankov# http://www.illumos.org/license/CDDL. 12d7e7cb9cSYuri Pankov# 13d7e7cb9cSYuri Pankov 14d7e7cb9cSYuri Pankov# 15d7e7cb9cSYuri Pankov# Copyright 2015 Nexenta Systems, Inc. All rights reserved. 16d7e7cb9cSYuri Pankov# 17d7e7cb9cSYuri Pankov 18*1d32ba66SJohn Wren Kennedy# 19*1d32ba66SJohn Wren Kennedy# Copyright (c) 2016 by Delphix. All rights reserved. 20*1d32ba66SJohn Wren Kennedy# 21*1d32ba66SJohn Wren Kennedy 22d7e7cb9cSYuri Pankov. $STF_SUITE/tests/functional/casenorm/casenorm.kshlib 23d7e7cb9cSYuri Pankov 24d7e7cb9cSYuri Pankov# DESCRIPTION: 25d7e7cb9cSYuri Pankov# Check that we can create FS with all supported normalization forms. 26d7e7cb9cSYuri Pankov# 27d7e7cb9cSYuri Pankov# STRATEGY: 28d7e7cb9cSYuri Pankov# 1. Create FS with all supported normalization forms. 29d7e7cb9cSYuri Pankov# 2. Check that utf8only is set on except for normalization=none. 30d7e7cb9cSYuri Pankov# 3. Check that it's not possible to create FS with utf8only=off 31d7e7cb9cSYuri Pankov# and normalization other than none. 32d7e7cb9cSYuri Pankov 33d7e7cb9cSYuri Pankovverify_runnable "global" 34d7e7cb9cSYuri Pankov 35d7e7cb9cSYuri Pankovfunction cleanup 36d7e7cb9cSYuri Pankov{ 37d7e7cb9cSYuri Pankov destroy_testfs 38d7e7cb9cSYuri Pankov} 39d7e7cb9cSYuri Pankov 40d7e7cb9cSYuri Pankovlog_onexit cleanup 41d7e7cb9cSYuri Pankovlog_assert "Can create FS with all supported normalization forms" 42d7e7cb9cSYuri Pankov 43d7e7cb9cSYuri Pankovfor form in none formC formD formKC formKD; do 44d7e7cb9cSYuri Pankov create_testfs "-o normalization=$form" 45d7e7cb9cSYuri Pankov if [[ $form != "none" ]] ; then 46*1d32ba66SJohn Wren Kennedy utf8only=$(zfs get -H -o value utf8only $TESTPOOL/$TESTFS) 47d7e7cb9cSYuri Pankov if [[ $utf8only != "on" ]]; then 48d7e7cb9cSYuri Pankov log_fail "Turning on normalization didn't set " \ 49d7e7cb9cSYuri Pankov "utf8only to on" 50d7e7cb9cSYuri Pankov fi 51d7e7cb9cSYuri Pankov fi 52d7e7cb9cSYuri Pankov destroy_testfs 53d7e7cb9cSYuri Pankovdone 54d7e7cb9cSYuri Pankov 55d7e7cb9cSYuri Pankovfor form in formC formD formKC formKD; do 56*1d32ba66SJohn Wren Kennedy log_mustnot zfs create -o utf8only=off -o normalization=$form \ 57d7e7cb9cSYuri Pankov $TESTPOOL/$TESTFS 58d7e7cb9cSYuri Pankov destroy_testfs 59d7e7cb9cSYuri Pankovdone 60d7e7cb9cSYuri Pankov 61d7e7cb9cSYuri Pankovlog_pass "Can create FS with all supported normalization forms" 62