diff options
author | Andrew Bartlett <abartlet@samba.org> | 2011-04-18 13:44:36 +1000 |
---|---|---|
committer | Karolin Seeger <kseeger@samba.org> | 2011-04-26 20:11:17 +0200 |
commit | 6f971090309ce1cc2de9428a520c7d6dcf02bb0f (patch) | |
tree | feaa9a1d657a0a4caef5ad8eb79adceeea43a85d /selftest | |
parent | 945555db4d6b4ba2cba021515e7116c0aaea2b47 (diff) | |
download | samba-6f971090309ce1cc2de9428a520c7d6dcf02bb0f.tar.gz samba-6f971090309ce1cc2de9428a520c7d6dcf02bb0f.tar.xz samba-6f971090309ce1cc2de9428a520c7d6dcf02bb0f.zip |
selftest: put the target on the environment
This will allow us to have a 'switch' target type that creates
environments from Samba3 or Samba4 as required.
Andrew Bartlett
(cherry picked from commit d041ed233d1b10604ef1b9f7f1e68f6f5cd96132)
(cherry picked from commit 2df698ffec823938566de0a3c7120d149b57bf0a)
Diffstat (limited to 'selftest')
-rwxr-xr-x | selftest/selftest.pl | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/selftest/selftest.pl b/selftest/selftest.pl index 9db3f21bb87..158ff480d21 100755 --- a/selftest/selftest.pl +++ b/selftest/selftest.pl @@ -846,12 +846,15 @@ sub setup_env($$) $testenv_vars = {}; } elsif (defined(get_running_env($envname))) { $testenv_vars = get_running_env($envname); - if (not $target->check_env($testenv_vars)) { - print $target->getlog_env($testenv_vars); + if (not $testenv_vars->{target}->check_env($testenv_vars)) { + print $testenv_vars->{target}->getlog_env($testenv_vars); $testenv_vars = undef; } } else { $testenv_vars = $target->setup_env($envname, $prefix); + if (defined($testenv_vars) && not defined($testenv_vars->{target})) { + $testenv_vars->{target} = $target; + } } return undef unless defined($testenv_vars); @@ -897,21 +900,24 @@ sub getlog_env($) { my ($envname) = @_; return "" if ($envname eq "none"); - return $target->getlog_env(get_running_env($envname)); + my $env = get_running_env($envname); + return $env->{target}->getlog_env($env); } sub check_env($) { my ($envname) = @_; return 1 if ($envname eq "none"); - return $target->check_env(get_running_env($envname)); + my $env = get_running_env($envname); + return $env->{target}->check_env($env); } sub teardown_env($) { my ($envname) = @_; return if ($envname eq "none"); - $target->teardown_env(get_running_env($envname)); + my $env = get_running_env($envname); + $env->{target}->teardown_env($env); delete $running_envs{$envname}; } |