initial commit of file from CVS for e-smith-test on Wed 12 Jul 09:10:30 BST 2023
This commit is contained in:
72
root/etc/e-smith/events/actions/testing-conf
Normal file
72
root/etc/e-smith/events/actions/testing-conf
Normal file
@@ -0,0 +1,72 @@
|
||||
#!/usr/bin/perl -w
|
||||
|
||||
#----------------------------------------------------------------------
|
||||
# Copyright 1999-2003 Mitel Networks Corporation
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the same terms as Perl itself.
|
||||
#----------------------------------------------------------------------
|
||||
|
||||
=head1 NAME
|
||||
|
||||
testing-conf -- configure testing service
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
This action sets up the testing service when you first install
|
||||
e-smith-test, setting the "destruction" property to 0 (non-destructive).
|
||||
It is a no-op if the "destruction" property is already defined.
|
||||
|
||||
=begin testing
|
||||
|
||||
use esmith::ConfigDB;
|
||||
|
||||
$ENV{ESMITH_CONFIG_DB} = "00e-smith-test/configuration";
|
||||
unlink $ENV{ESMITH_CONFIG_DB};
|
||||
|
||||
ok(my $conf = esmith::ConfigDB->create(), "Create new config file");
|
||||
ok(my $test_service = $conf->new_record('testing', {type => 'service'}),
|
||||
"Create new record for testing service");
|
||||
isa_ok($test_service, 'esmith::DB::Record');
|
||||
|
||||
ok(not(defined($test_service->prop('destruction'))),
|
||||
"Testing should be absent before we run");
|
||||
|
||||
is(system("$^X $Original_File"), 0, "System command returned 0");
|
||||
$conf = esmith::ConfigDB->open();
|
||||
$test_service = $conf->get('testing');
|
||||
ok(defined($test_service->prop('destruction')), "Destruction is now defined");
|
||||
|
||||
$test_service->set_prop('destruction', 1);
|
||||
is(system("$^X $Original_File"), 0, "System command returned 0");
|
||||
$conf = esmith::ConfigDB->open();
|
||||
$test_service = $conf->get('testing');
|
||||
is($test_service->prop('destruction'), 1,
|
||||
"Destruction is left alone if already defined");
|
||||
|
||||
$test_service->set_prop('destruction', 0);
|
||||
is(system("$^X $Original_File"), 0, "System command returned 0");
|
||||
$conf = esmith::ConfigDB->open();
|
||||
$test_service = $conf->get('testing');
|
||||
is($test_service->prop('destruction'), 0,
|
||||
"Destruction is left alone if already defined, even if 0");
|
||||
|
||||
=end testing
|
||||
|
||||
=cut
|
||||
|
||||
use strict;
|
||||
use esmith::ConfigDB;
|
||||
|
||||
my $conf = esmith::ConfigDB->open()
|
||||
or die "Configuration database does not exist";
|
||||
|
||||
if (my $test_service = $conf->get('testing')
|
||||
|| $conf->new_record('testing', { type => 'service'} ))
|
||||
{
|
||||
unless (defined $test_service->prop('destruction'))
|
||||
{
|
||||
$test_service->set_prop('destruction', 0);
|
||||
}
|
||||
}
|
||||
|
||||
exit 0;
|
0
root/etc/e-smith/events/e-smith-test-update/.gitignore
vendored
Normal file
0
root/etc/e-smith/events/e-smith-test-update/.gitignore
vendored
Normal file
Reference in New Issue
Block a user