Skip to content

Commit

Permalink
Merge branch 'master' into jwi-bitmask
Browse files Browse the repository at this point in the history
  • Loading branch information
jwillemsen authored Jul 18, 2023
2 parents 9cb7b15 + 86f36ca commit f9ff083
Show file tree
Hide file tree
Showing 6 changed files with 161 additions and 0 deletions.
2 changes: 2 additions & 0 deletions bin/taox11_tests.lst
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,8 @@ tests/idl4/explicit_ints/run_test.pl:
tests/idl4/explicit_ints/run_illegal_idl3_test.pl:
tests/idl4/map/run_test.pl:
tests/idl4/map/run_illegal_idl3_test.pl:
tests/idl4/union/run_test.pl:
tests/idl4/union/run_illegal_idl3_test.pl:
tests/illegal_idl/run_test.pl: !CROSS
tests/interface/run_cross_tao_client.pl:
tests/interface/run_cross_tao_server.pl:
Expand Down
19 changes: 19 additions & 0 deletions tests/idl4/union/client.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
/**
* @file client.cpp
* @author Johnny Willemsen
*
* @brief CORBA C++11 client application
*
* @copyright Copyright (c) Remedy IT Expertise BV
*/

#include "testC.h"

int main (int /*argc*/, char* /*argv*/[])
{
// Just compilation test

TestUnion_Octet myunion_octet;
TestUnion_WChar myunion_wchar;
return 0;
}
69 changes: 69 additions & 0 deletions tests/idl4/union/run_illegal_idl3_test.pl
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
#---------------------------------------------------------------------
# @file run_illegal_idl3_test.pl
# @author Mark Drijver
#
# @copyright Copyright (c) Remedy IT Expertise BV
#---------------------------------------------------------------------
eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
& eval 'exec perl -S $0 $argv:q'
if 0;

print "IDL test\n";

use lib "$ENV{ACE_ROOT}/bin";
use PerlACE::TestTarget;
use File::Spec;

my $status =0;
my $server = PerlACE::TestTarget::create_target(2) || die "Create target 2 failed\n";

# The location of the ridl utility
my $ridl = "$ENV{X11_BASE_ROOT}/bin/ridlc";

unless (-e $ridl) {
die "ERROR: Cannot find " . $ridl;
}

opendir(DIRH, ".") or die "Could not open dir. $!";
@files = grep(/\.idl$/,readdir(DIRH));
foreach (sort(@files)){
print "Testing ", $_, ": ";
my $input_file = $_;

#Redirect the screen output to the null device.
open (OLDOUT, ">&STDOUT");
# open (STDOUT, ">" . File::Spec->devnull());
open (STDOUT, ">" . output);
open (OLDERR, ">&STDERR");
open (STDERR, ">&STDOUT");

# Compile the IDL
system ("$ridl", "$input_file");

#Redirect the null device output back to the screen
open (STDOUT, ">&OLDOUT");
open (STDERR, ">&OLDERR");

$found = 0;
open FILE, "<output";
while (my $line = <FILE>)
{
#print $line;
if ($line =~ "IDL::Parse")
{
$found = 1;
close FILE;
last;
}
}
#print "\nFound: " . $found;
if ($found>0) {
print "parsing failed as expected.\n";
} else {
print STDERR "ERROR: Unable to detect expected ridlc error.\n";
$status = 1;
}

}

exit $status;
31 changes: 31 additions & 0 deletions tests/idl4/union/run_test.pl
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
#---------------------------------------------------------------------
# @file run_test.pl
# @author Marcel Smit
#
# @copyright Copyright (c) Remedy IT Expertise BV
#---------------------------------------------------------------------
eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
& eval 'exec perl -S $0 $argv:q'
if 0;

# -*- perl -*-

use lib "$ENV{ACE_ROOT}/bin";
use PerlACE::TestTarget;

my $target = PerlACE::TestTarget::create_target(2) || die "Create target 2 failed\n";

$status = 0;

$SV = $target->CreateProcess ("client");

$server = $SV->SpawnWaitKill ($target->ProcessStartWaitInterval());

if ($server != 0) {
print STDERR "ERROR: const returned $server\n";
$status = 1;
}

$target->GetStderrLog();

exit $status;
20 changes: 20 additions & 0 deletions tests/idl4/union/test.idl
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
/**
* @file test.idl
* @author Johnny Willemsen
*
* @copyright Copyright (c) Remedy IT Expertise BV
*/

union TestUnion_Octet switch(octet) {
case 1:
short FirstCase;
case 2:
long SecondCase;
};

union TestUnion_WChar switch(wchar) {
case L'X':
short FirstCase;
case L'\\':
long SecondCase;
};
20 changes: 20 additions & 0 deletions tests/idl4/union/test.mpc
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
// -*- MPC -*-

project(*idl4_union_gen_idl): ridl_ostream_defaults {
IDL_Files {
test.idl
idlflags += --idl-version=4
}
custom_only = 1
}

project(*idl4_union_client): taox11_client {
after += *idl4_union_gen_idl
Source_Files {
client.cpp
}
Source_Files {
testC.cpp
}
}

0 comments on commit f9ff083

Please sign in to comment.