changeset 689:39f856a85565

add Interface.t
author anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
date Fri, 21 Aug 2020 15:42:03 +0900
parents 317ff12ab253
children a2483a5bd633
files src/parallel_execution/lib/Gears/Util.pm src/parallel_execution/perlTests/Interface.t src/parallel_execution/perlTests/Util.t src/parallel_execution/perlTests/invalid_interface.h src/parallel_execution/perlTests/util.t src/parallel_execution/tools/check_convert_context_struct.pl
diffstat 6 files changed, 81 insertions(+), 61 deletions(-) [+]
line wrap: on
line diff
--- a/src/parallel_execution/lib/Gears/Util.pm	Fri Aug 21 15:33:24 2020 +0900
+++ b/src/parallel_execution/lib/Gears/Util.pm	Fri Aug 21 15:42:03 2020 +0900
@@ -1,10 +1,8 @@
 package Gears::Util;
 use strict;
 use warnings;
-use Carp qw/croak carp/;
-use File::Find;
-
-
+use Carp qw/croak/;
+use File::Find qw/find/;
 
 sub uniq {
   my $class = shift;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/parallel_execution/perlTests/Interface.t	Fri Aug 21 15:42:03 2020 +0900
@@ -0,0 +1,47 @@
+#!/usr/bin/env perl
+use strict;
+use warnings;
+use FindBin;
+
+use Test::More  tests => 2; #subtests
+
+use_ok "Gears::Interface"; #use test
+
+subtest 'parse' => sub {
+  subtest 'file_checking' => sub {
+    plan tests => 2;
+
+    eval { Gears::Interface->parse("nonexistent_file.c") };
+    ok $@;
+    like( $@, qr/invalid filepath/ );
+  };
+
+  subtest 'parsing_stack' => sub {
+    plan tests => 1;
+
+    my $stack_header = "$FindBin::Bin/../Stack.h";
+    my $expand = {
+          name => 'Stack',
+          file_name => $stack_header,
+          content => [
+                         'union Data* stack;',
+                         'union Data* data;',
+                         'union Data* data1;',
+                         'enum Code whenEmpty;',
+                         'enum Code clear;',
+                         'enum Code push;',
+                         'enum Code pop;',
+                         'enum Code pop2;',
+                         'enum Code isEmpty;',
+                         'enum Code get;',
+                         'enum Code get2;',
+                         'enum Code next;'
+                       ]
+     };
+
+     my $res = Gears::Interface->parse($stack_header);
+
+     is_deeply ($res, $expand, "parsing stack.h");
+  };
+};
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/parallel_execution/perlTests/Util.t	Fri Aug 21 15:42:03 2020 +0900
@@ -0,0 +1,25 @@
+#!/usr/bin/env perl
+use strict;
+use warnings;
+use FindBin;
+
+use Test::More  tests => 2; #subtests
+
+use_ok "Gears::Util"; #use test
+
+use Gears::Util;
+
+subtest 'file_checking' => sub {
+  plan tests => 3;
+
+  eval { Gears::Util->file_checking("nonexistent_file.c") };
+  ok $@;
+  like( $@, qr/invalid filepath/ );
+
+  my $exists_file = "$FindBin::Bin/README.md";
+  my $found_file  = Gears::Util->file_checking($exists_file);
+  is $found_file, $exists_file;
+};
+
+
+done_testing;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/parallel_execution/perlTests/invalid_interface.h	Fri Aug 21 15:42:03 2020 +0900
@@ -0,0 +1,4 @@
+typedef struct Hoge {
+  int i;
+  char* str;
+} HOGE;
--- a/src/parallel_execution/perlTests/util.t	Fri Aug 21 15:33:24 2020 +0900
+++ b/src/parallel_execution/perlTests/util.t	Fri Aug 21 15:42:03 2020 +0900
@@ -3,7 +3,7 @@
 use warnings;
 use FindBin;
 
-use Test::More  tests => 4; #subtests
+use Test::More  tests => 2; #subtests
 
 use_ok "Gears::Util"; #use test
 
@@ -21,59 +21,5 @@
   is $found_file, $exists_file;
 };
 
-subtest 'parse' => sub {
-  subtest 'file_checking' => sub {
-    plan tests => 2;
-
-    eval { Gears::Util->parse("nonexistent_file.c") };
-    ok $@;
-    like( $@, qr/invalid filepath/ );
-  };
-
-  subtest 'parsing_stack' => sub {
-    plan tests => 1;
-
-    my $stack_header = "$FindBin::Bin/../Stack.h";
-    my $expand = {
-          name => 'Stack',
-          file_name => $stack_header,
-          content => [
-                         'union Data* stack;',
-                         'union Data* data;',
-                         'union Data* data1;',
-                         'enum Code whenEmpty;',
-                         'enum Code clear;',
-                         'enum Code push;',
-                         'enum Code pop;',
-                         'enum Code pop2;',
-                         'enum Code isEmpty;',
-                         'enum Code get;',
-                         'enum Code get2;',
-                         'enum Code next;'
-                       ]
-     };
-
-     my $res = Gears::Util->parse($stack_header);
-
-     is_deeply ($res, $expand, "parsing stack.h");
-  };
-};
-
-subtest 'parse_interface' => sub {
-
-  subtest 'invalid_case' => sub {
-    plan tests => 2;
-
-    my $invalid_interface = "$FindBin::Bin/invalid_interface.h";
-
-    local $SIG{__WARN__} = sub {
-      my $msg = shift; like( $msg, qr/\[WARN] invalid interface name at $invalid_interface/);
-    };
-
-    my $res = Gears::Util->parse_interface($invalid_interface);
-    is $res, undef;
-  };
-
-};
 
 done_testing;
--- a/src/parallel_execution/tools/check_convert_context_struct.pl	Fri Aug 21 15:33:24 2020 +0900
+++ b/src/parallel_execution/tools/check_convert_context_struct.pl	Fri Aug 21 15:42:03 2020 +0900
@@ -15,14 +15,14 @@
 
 use FindBin;
 use lib "$FindBin::Bin/../lib";
-use Gears::Util;
+use Gears::Interface;
 use Gears::Context;
 
 use Pod::Usage qw/pod2usage/;
 
 
 my $interface_file = shift or pod2usage(1);
-my $h2context = Gears::Util->parse_interface($interface_file);
+my $h2context = Gears::Interface->parse($interface_file);
 my $context = Gears::Context->h2context_str($h2context);
 
 print "$context";