1c0268375ec64ef3751e7f7f2378cf184475192a
[sfrench/samba-autobuild/.git] / source / build / pidl / tests / ndr_simple.pl
1 #!/usr/bin/perl
2 use strict;
3
4 use FindBin qw($RealBin);
5 use lib "$RealBin/..";
6 use test;
7
8 my %settings = (
9         'IDL-Arguments' => ['--quiet', '--parse', '--parser=ndr_test.c', '--header=ndr_test.h'],
10         'IncludeFiles' => ['ndr_test.h'],
11         'ExtraFiles' => ['ndr_test.c'],
12 );
13
14 Test::test_idl(
15         # Name
16         'UInt8',
17         
18         # Settings
19         \%settings,
20         
21         # IDL 
22         'void Test();',
23         
24         # C Test
25         '
26         uint8_t data[] = { 0x02 };
27         uint8_t result;
28         DATA_BLOB b;
29         struct ndr_pull *ndr;
30
31         b.data = data;
32         b.length = 1;
33         ndr = ndr_pull_init_blob(&b, mem_ctx);
34
35         if (NT_STATUS_IS_ERR(ndr_pull_uint8(ndr, ndr_flags, &result)))
36                 return 1;
37
38         if (result != 0x02) 
39                 return 2;
40 ');