1# See the file LICENSE for redistribution information.
2#
3# Copyright (c) 1999,2008 Oracle.  All rights reserved.
4#
5# $Id: env005.tcl,v 12.6 2008/01/08 20:58:53 bostic Exp $
6#
7# TEST	env005
8# TEST	Test that using subsystems without initializing them correctly
9# TEST	returns an error.  Cannot test mpool, because it is assumed in
10# TEST	the Tcl code.
11proc env005 { } {
12	source ./include.tcl
13
14	puts "Env005: Uninitialized env subsystems test."
15
16	env_cleanup $testdir
17	puts "\tEnv005.a: Creating env with no subsystems."
18	set e [berkdb_env_noerr -create -home $testdir]
19	error_check_good dbenv [is_valid_env $e] TRUE
20	set db [berkdb_open -create -btree $testdir/env005.db]
21	error_check_good dbopen [is_valid_db $db] TRUE
22
23	set rlist {
24	{ "lock_detect"			"Env005.b0"}
25	{ "lock_get read 1 1"		"Env005.b1"}
26	{ "lock_id"			"Env005.b2"}
27	{ "lock_stat"			"Env005.b3"}
28	{ "lock_timeout 100"		"Env005.b4"}
29	{ "log_archive"			"Env005.c0"}
30	{ "log_cursor"			"Env005.c1"}
31	{ "log_file {1 1}"		"Env005.c2"}
32	{ "log_flush"			"Env005.c3"}
33	{ "log_put record"		"Env005.c4"}
34	{ "log_stat"			"Env005.c5"}
35	{ "txn"				"Env005.d0"}
36	{ "txn_checkpoint"		"Env005.d1"}
37	{ "txn_stat"			"Env005.d2"}
38	{ "txn_timeout 100"		"Env005.d3"}
39	}
40
41	foreach pair $rlist {
42		set cmd [lindex $pair 0]
43		set msg [lindex $pair 1]
44		puts "\t$msg: $cmd"
45		set stat [catch {eval $e $cmd} ret]
46		error_check_good $cmd $stat 1
47		error_check_good $cmd.err [is_substr $ret invalid] 1
48	}
49	error_check_good dbclose [$db close] 0
50	error_check_good envclose [$e close] 0
51}
52