comparison src/parallel_execution/perlTests/Interface.t @ 693:aeab4866ee36

defined separate_code_and_data_gear_after_parse test
author anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
date Fri, 21 Aug 2020 17:07:01 +0900
parents 39f856a85565
children 89abde9fb7ce
comparison
equal deleted inserted replaced
692:3d959f470c8b 693:aeab4866ee36
1 #!/usr/bin/env perl 1 #!/usr/bin/env perl
2 use strict; 2 use strict;
3 use warnings; 3 use warnings;
4 use FindBin; 4 use FindBin;
5 5
6 use Test::More tests => 2; #subtests 6 use Test::More tests => 3; #subtests
7 7
8 use_ok "Gears::Interface"; #use test 8 use_ok "Gears::Interface"; #use test
9 9
10 subtest 'parse' => sub { 10 subtest 'parse' => sub {
11 subtest 'file_checking' => sub { 11 subtest 'file_checking' => sub {
43 43
44 is_deeply ($res, $expand, "parsing stack.h"); 44 is_deeply ($res, $expand, "parsing stack.h");
45 }; 45 };
46 }; 46 };
47 47
48
49 subtest 'separate_code_and_data_gear_after_parse' => sub {
50 subtest 'Queue' => sub {
51 plan tests => 1;
52
53 my $queue_header = "$FindBin::Bin/../Queue.h";
54
55 my $expand = {
56 'data' => [
57 'union Data* queue;',
58 'union Data* data;'
59 ],
60 'content' => [
61 'enum Code whenEmpty;',
62 'enum Code clear;',
63 'union Data* queue;',
64 'enum Code put;',
65 'union Data* data;',
66 'enum Code take;',
67 'enum Code isEmpty;',
68 'enum Code next;'
69 ],
70 'file_name' => $queue_header,
71 'name' => 'Queue',
72 'codes' => [
73 {
74 'args' => '...',
75 'name' => 'whenEmpty'
76 },
77 {
78 'args' => 'Impl* queue, __code next(...)',
79 'name' => 'clear'
80 },
81 {
82 'name' => 'put',
83 'args' => 'Impl* queue, union Data* data, __code next(...)'
84 },
85 {
86 'args' => 'Impl* queue, __code next(union Data* data, ...)',
87 'name' => 'take'
88 },
89 {
90 'name' => 'isEmpty',
91 'args' => 'Impl* queue, __code next(...), __code whenEmpty(...)'
92 },
93 {
94 'name' => 'next',
95 'args' => '...'
96 }
97 ],
98 'hasOutputArgs' => {
99 'take' => {
100 'Data' => 'union',
101 'data' => '*'
102 }
103 }
104 };
105
106 my $res = Gears::Interface->separate_code_and_data_gear_after_parse($queue_header);
107
108 is_deeply ($res, $expand, "parsing Queue.h");
109 };
110
111 };