diff options
author | Nathan Sidwell <nathan@acm.org> | 2020-12-23 08:04:52 -0800 |
---|---|---|
committer | Nathan Sidwell <nathan@acm.org> | 2020-12-23 08:07:16 -0800 |
commit | 16929214fd139c9d092f9bfbd9d8287d5903f593 (patch) | |
tree | dd88c7ca9124d36e3d838853de4f80144d071750 | |
parent | c142ae5e17ee3364c281753d7507b3e8a2be9d4f (diff) | |
download | gcc-16929214fd139c9d092f9bfbd9d8287d5903f593.zip gcc-16929214fd139c9d092f9bfbd9d8287d5903f593.tar.gz gcc-16929214fd139c9d092f9bfbd9d8287d5903f593.tar.bz2 |
libcody: Remove testsuite [PR 98318]
libcody's testsuite is not very portable, and is testing a host
library, so will do weird things on cross compiling, I think. Let's
just drop it.
libcody/
* Makefile.in (LDFLAGS): Drop -L..
* tests/01-serialize/connect.cc: Delete.
* tests/01-serialize/decoder.cc: Delete.
* tests/01-serialize/encoder.cc: Delete.
* tests/02-comms/client-1.cc: Delete.
* tests/02-comms/pivot-1.cc: Delete.
* tests/02-comms/server-1.cc: Delete.
* tests/Makesub.in: Delete.
* tests/jouster: Delete.
-rw-r--r-- | libcody/Makefile.in | 2 | ||||
-rw-r--r-- | libcody/tests/01-serialize/connect.cc | 30 | ||||
-rw-r--r-- | libcody/tests/01-serialize/decoder.cc | 73 | ||||
-rw-r--r-- | libcody/tests/01-serialize/encoder.cc | 48 | ||||
-rw-r--r-- | libcody/tests/02-comms/client-1.cc | 97 | ||||
-rw-r--r-- | libcody/tests/02-comms/pivot-1.cc | 76 | ||||
-rw-r--r-- | libcody/tests/02-comms/server-1.cc | 68 | ||||
-rw-r--r-- | libcody/tests/Makesub.in | 36 | ||||
-rwxr-xr-x | libcody/tests/jouster | 11 |
9 files changed, 1 insertions, 440 deletions
diff --git a/libcody/Makefile.in b/libcody/Makefile.in index a0722f9..6e38d51 100644 --- a/libcody/Makefile.in +++ b/libcody/Makefile.in @@ -100,7 +100,7 @@ endif CXXOPTS += $(filter-out -DHAVE_CONFIG_H,@DEFS@) -include config.h # Linker options -LDFLAGS := -L. @LDFLAGS@ +LDFLAGS := @LDFLAGS@ LIBS := @LIBS@ # Per-source & per-directory compile flags (warning: recursive) diff --git a/libcody/tests/01-serialize/connect.cc b/libcody/tests/01-serialize/connect.cc deleted file mode 100644 index 85277c8..0000000 --- a/libcody/tests/01-serialize/connect.cc +++ /dev/null @@ -1,30 +0,0 @@ - -// Test client connection handshake -// RUN: <<HELLO 1 TESTING -// RUN: $subdir$stem | ezio -p OUT $test |& ezio -p ERR $test -// RUN-END: - -// OUT-NEXT:^HELLO {:[0-9]+} TEST IDENT$ -// OUT-NEXT:$EOF - -// ERR-NEXT:Code:{:[0-9]+}$ -// ERR-NEXT:Version:1$ -// ERR-NEXT:$EOF - - -// Cody -#include "cody.hh" -// C++ -#include <iostream> - -using namespace Cody; - -int main (int, char *[]) -{ - Client client (0, 1); - - auto token = client.Connect ("TEST", "IDENT"); - - std::cerr << "Code:" << token.GetCode () << '\n'; - std::cerr << "Version:" << token.GetInteger () << '\n'; -} diff --git a/libcody/tests/01-serialize/decoder.cc b/libcody/tests/01-serialize/decoder.cc deleted file mode 100644 index a3495d1..0000000 --- a/libcody/tests/01-serialize/decoder.cc +++ /dev/null @@ -1,73 +0,0 @@ -// CODYlib -*- mode:c++ -*- -// Copyright (C) 2020 Nathan Sidwell, nathan@acm.org -// License: Apache v2.0 - -// RUN: <<bob 'frob dob''\nF\_b\20\61\\' -// RUN: $subdir$stem |& ezio $test -// CHECK-NEXT: ^line:0 word:0 'bob' -// CHECK-NEXT: ^line:0 word:1 'frob dob$ -// CHECK-OPTION: matchSpace -// CHECK-NEXT: ^F b a\'$ -// CHECK-NEXT: $EOF - -/* RUN: <<line-1 word:1 ; - RUN: <<'line 2' ; - RUN: << -*/ -// RUN: $subdir$stem |& ezio -p CHECK2 $test -// CHECK2-NEXT: line:0 word:0 'line-1' -// CHECK2-NEXT: line:0 word:1 'word:1' -// CHECK2-NEXT: line:1 word:0 'line 2' -// CHECK2-NEXT: error:No -// CHECK2-NEXT: $EOF - -// RUN: <<' -// RUN: $subdir$stem |& ezio -p CHECK3 $test -// CHECK3-NEXT: error:Invalid argument -// CHECK3-NEXT: line:0 word:0 ''' -// CHECK3-NEXT: $EOF - -/* RUN: << ; - RUN: <<'\g' -*/ -// RUN: $subdir$stem |& ezio -p CHECK4 $test -// CHECK4-NEXT: error:No -// CHECK4-NEXT: error:Invalid argument -// CHECK4-NEXT: line:1 word:0 ''\g'' -// CHECK4-NEXT: $EOF - -// RUN-END: - -// Cody -#include "cody.hh" -// C++ -#include <iostream> -// C -#include <cstring> - -using namespace Cody; - -int main (int, char *[]) -{ - Detail::MessageBuffer reader; - - reader.PrepareToRead (); - while (int e = reader.Read (0)) - if (e != EAGAIN && e != EINTR) - break; - - std::vector<std::string> words; - for (unsigned line = 0; !reader.IsAtEnd (); line++) - { - if (int e = reader.Lex (words)) - std::cerr << "error:" << strerror (e) << '\n'; - for (unsigned ix = 0; ix != words.size (); ix++) - { - auto &word = words[ix]; - - std::cerr << "line:" << line << " word:" << ix - << " '" << word << "'\n"; - } - } - return 0; -} diff --git a/libcody/tests/01-serialize/encoder.cc b/libcody/tests/01-serialize/encoder.cc deleted file mode 100644 index c4cab6c..0000000 --- a/libcody/tests/01-serialize/encoder.cc +++ /dev/null @@ -1,48 +0,0 @@ -// CODYlib -*- mode:c++ -*- -// Copyright (C) 2020 Nathan Sidwell, nathan@acm.org -// License: Apache v2.0 - -// Test message encoding, both string quoting and continuation lines - -// RUN: $subdir$stem |& ezio $test -// RUN-END: -// The ¯ is utf8-encoded as c2 af -// CHECK-NEXT: ^bob 'frob dob''\n¯\\'$ -// CHECK-NEXT: ^2 ;$ -// CHECK-NEXT: ^3$ -// CHECK-NEXT: $EOF - -// Cody -#include "cody.hh" - -using namespace Cody; - -int main (int, char *[]) -{ - Detail::MessageBuffer writer; - - writer.BeginLine (); - writer.AppendWord ("bob"); - writer.AppendWord ("frob dob", true); - writer.Append ("\n\xc2\xaf\\", true); - writer.EndLine (); - - writer.PrepareToWrite (); - while (int err = writer.Write (2)) - if (err != EAGAIN && err != EINTR) - break; - - writer.BeginLine (); - writer.Append ("2", true); - writer.EndLine (); - writer.BeginLine (); - writer.Append ("3", true); - writer.EndLine (); - - writer.PrepareToWrite (); - while (int err = writer.Write (2)) - if (err != EAGAIN && err != EINTR) - break; - - return 0; -} diff --git a/libcody/tests/02-comms/client-1.cc b/libcody/tests/02-comms/client-1.cc deleted file mode 100644 index edff0ab..0000000 --- a/libcody/tests/02-comms/client-1.cc +++ /dev/null @@ -1,97 +0,0 @@ - -// Test client message round tripping -/* - RUN: <<HELLO 1 TESTING ; - RUN: <<PATHNAME REPO ; - RUN: <<PATHNAME biz/bar ; - RUN: <<PATHNAME blob ; - RUN: <<BOOL FALSE ; - RUN: << BOOL TRUE ; - RUN: << PATHNAME foo ; - RUN: <<OK -*/ -// RUN: $subdir$stem | ezio -p OUT $test |& ezio -p ERR $test -// RUN-END: - -/* - OUT-NEXT:^HELLO {:[0-9]+} TEST IDENT ;$ - OUT-NEXT:^MODULE-REPO ; - OUT-NEXT:^MODULE-EXPORT bar ; - OUT-NEXT:^MODULE-IMPORT foo ; - OUT-NEXT:^INCLUDE-TRANSLATE baz.frob ; - OUT-NEXT:^INCLUDE-TRANSLATE ./corge ; - OUT-NEXT:^INCLUDE-TRANSLATE ./quux ; - OUT-NEXT:^MODULE-COMPILED bar -*/ -// OUT-NEXT:$EOF - -// ERR-NEXT:Code:1$ -// ERR-NEXT:Integer:1$ -// ERR-NEXT:Code:5$ -// ERR-NEXT:String:REPO$ -// ERR-NEXT:Code:5$ -// ERR-NEXT:String:biz/bar$ -// ERR-NEXT:Code:5$ -// ERR-NEXT:String:blob$ -// ERR-NEXT:Code:4$ -// ERR-NEXT:Integer:0$ -// ERR-NEXT:Code:4$ -// ERR-NEXT:Integer:1$ -// ERR-NEXT:Code:5$ -// ERR-NEXT:String:foo -// ERR-NEXT:Code:3$ -// ERR-NEXT:Integer: -// ERR-NEXT:$EOF - - -// Cody -#include "cody.hh" -// C++ -#include <iostream> - -using namespace Cody; - -int main (int, char *[]) -{ - Client client (0, 1); - - client.Cork (); - if (client.Connect ("TEST", "IDENT").GetCode () != Client::PC_CORKED) - std::cerr << "Not corked!\n"; - if (client.ModuleRepo ().GetCode () != Client::PC_CORKED) - std::cerr << "Not corked!\n"; - if (client.ModuleExport ("bar").GetCode () != Client::PC_CORKED) - std::cerr << "Not corked!\n"; - if (client.ModuleImport ("foo").GetCode () != Client::PC_CORKED) - std::cerr << "Not corked!\n"; - if (client.IncludeTranslate ("baz.frob").GetCode () != Client::PC_CORKED) - std::cerr << "Not corked!\n"; - if (client.IncludeTranslate ("./corge").GetCode () != Client::PC_CORKED) - std::cerr << "Not corked!\n"; - if (client.IncludeTranslate ("./quux").GetCode () != Client::PC_CORKED) - std::cerr << "Not corked!\n"; - if (client.ModuleCompiled ("bar").GetCode () != Client::PC_CORKED) - std::cerr << "Not corked!\n"; - - auto result = client.Uncork (); - for (auto iter = result.begin (); iter != result.end (); ++iter) - { - std::cerr << "Code:" << iter->GetCode () << '\n'; - switch (iter->GetCategory ()) - { - case Packet::INTEGER: - std::cerr << "Integer:" << iter->GetInteger () << '\n'; - break; - case Packet::STRING: - std::cerr << "String:" << iter->GetString () << '\n'; - break; - case Packet::VECTOR: - { - auto const &v = iter->GetVector (); - for (unsigned ix = 0; ix != v.size (); ix++) - std::cerr << "Vector[" << ix << "]:" << v[ix] << '\n'; - } - break; - } - } -} diff --git a/libcody/tests/02-comms/pivot-1.cc b/libcody/tests/02-comms/pivot-1.cc deleted file mode 100644 index b98c833..0000000 --- a/libcody/tests/02-comms/pivot-1.cc +++ /dev/null @@ -1,76 +0,0 @@ - -// Test resolver pivot - -// RUN:<<HELLO 1 TEST IDENT ; -// RUN:<<MODULE-REPO ; -// RUN:<<HELLO 1 TEST IDENT -// RUN: $subdir$stem | ezio -p OUT1 $test |& ezio -p ERR1 $test -// OUT1-NEXT:HELLO 1 default ; -// OUT1-NEXT:PATHNAME cmi.cache ; -// OUT1-NEXT:ERROR 'already connected -// OUT1-NEXT:$EOF -// ERR1-NEXT:resolver is handler -// ERR1-NEXT:$EOF - -// RUN:<<MODULE-REPO ; -// RUN:<<HELLO 1 TEST IDENT ; -// RUN:<<MODULE-REPO -// RUN: $subdir$stem | ezio -p OUT2 $test |& ezio -p ERR2 $test -// OUT2-NEXT:ERROR 'not connected -// OUT2-NEXT:HELLO 1 default ; -// OUT2-NEXT:PATHNAME cmi.cache -// OUT2-NEXT:$EOF -// ERR2-NEXT:resolver is handler -// ERR2-NEXT:$EOF - -// RUN-END: -#include "cody.hh" -#include <iostream> - -using namespace Cody; - -class Handler : public Resolver -{ - virtual Handler *ConnectRequest (Server *s, unsigned , - std::string &, std::string &) - { - ErrorResponse (s, "unexpected connect call"); - return nullptr; - } -}; - -Handler handler; - -class Initial : public Resolver -{ - virtual Handler *ConnectRequest (Server *s, unsigned v, - std::string &agent, std::string &ident) - { - Resolver::ConnectRequest (s, v, agent, ident); - return &handler; - } -}; - -Initial initial; - -int main (int, char *[]) -{ - Server server (&initial, 0, 1); - - while (int e = server.Read ()) - if (e != EAGAIN && e != EINTR) - break; - - server.ProcessRequests (); - if (server.GetResolver () == &handler) - std::cerr << "resolver is handler\n"; - else if (server.GetResolver () == &initial) - std::cerr << "resolver is initial\n"; - else - std::cerr << "resolver is surprising\n"; - - server.PrepareToWrite (); - while (int e = server.Write ()) - if (e != EAGAIN && e != EINTR) - break; -} diff --git a/libcody/tests/02-comms/server-1.cc b/libcody/tests/02-comms/server-1.cc deleted file mode 100644 index 0a8694e..0000000 --- a/libcody/tests/02-comms/server-1.cc +++ /dev/null @@ -1,68 +0,0 @@ - -// Test server message round tripping -/* - RUN:<<HELLO 1 TEST IDENT ; - RUN:<<MODULE-REPO ; - RUN:<<MODULE-EXPORT bar ; - RUN:<<MODULE-IMPORT foo ; - RUN:<<NOT A COMMAND ; - RUN:<<INCLUDE-TRANSLATE baz.frob ; - RUN:<<INCLUDE-TRANSLATE ./quux ; - RUN:<<MODULE-COMPILED bar ; - RUN:<<MODULE-IMPORT '' -*/ -// RUN: $subdir$stem | ezio -p OUT1 $test |& ezio -p ERR1 $test - -// These all fail because there's nothing in the server interpretting stuff -/* - OUT1-NEXT: ^HELLO 1 default ; - OUT1-NEXT: ^PATHNAME cmi.cache ; - OUT1-NEXT: ^PATHNAME bar.cmi ; - OUT1-NEXT: ^PATHNAME foo.cmi ; - OUT1-NEXT: ^ERROR 'unrecognized \'NOT - OUT1-NEXT: ^BOOL FALSE ; - OUT1-NEXT: ^BOOL FALSE ; - OUT1-NEXT: ^OK - OUT1-NEXT: ^ERROR 'malformed -*/ -// OUT1-NEXT:$EOF -// ERR1-NEXT:$EOF - -/* - RUN:<<HELLO 1 TEST IDENT - RUN:<<MODULE-REPO -*/ -// RUN: $subdir$stem | ezio -p OUT2 $test |& ezio -p ERR2 $test -/* - OUT2-NEXT: ^HELLO 1 default -*/ -// OUT2-NEXT:$EOF -// ERR2-NEXT:$EOF - -// RUN-END: - -// Cody -#include "cody.hh" -// C++ -#include <iostream> - -using namespace Cody; - -int main (int, char *[]) -{ - Resolver r; - Server server (&r, 0, 1); - - while (int e = server.Read ()) - if (e != EAGAIN && e != EINTR) - break; - - server.ProcessRequests (); - if (server.GetResolver () != &r) - std::cerr << "resolver changed\n"; - server.PrepareToWrite (); - - while (int e = server.Write ()) - if (e != EAGAIN && e != EINTR) - break; -} diff --git a/libcody/tests/Makesub.in b/libcody/tests/Makesub.in deleted file mode 100644 index 329e946..0000000 --- a/libcody/tests/Makesub.in +++ /dev/null @@ -1,36 +0,0 @@ -# CODYlib -*- mode:Makefile -*- -# Copyright (C) 2019-2020 Nathan Sidwell, nathan@acm.org -# License: Apache v2.0 - -ALOY := @ALOY@ -TESTS := $(patsubst $(srcdir)/%.cc,%,\ - $(wildcard $(srcdir)/tests/*/*.cc)) -TESTDIRS = $(shell cd $(srcdir)/${<D} ; echo *(/)) -testdir := $(and $(filter-out /%,$(srcdir)),../)$(srcdir)/tests - -check:: tests/cody.defs $(TESTS) - +cd ${<D} && srcbuilddir=$(srcdir)/tests JOUST=${<F} \ - $(ALOY) -t kratos -o cody -g $(testdir)/jouster $(TESTDIRS) -ifeq ($(firstword $(aloy)),:) - @echo WARNING: tests were not run as Joust test harness was not found -endif - -tests/cody.defs: tests/Makesub - echo '# Automatically generated by Make' >$@ - echo 'testdir=$(testdir)' >>$@ - echo 'timelimit=60' >>$@ - echo 'memlimit=1' >>$@ - echo 'cpulimit=60' >>$@ - echo 'filelimit=1' >>$@ - echo 'SHELL=$(SHELL)' >>$@ - -$(TESTS): %: %.o libcody.a - $(CXX) $(LDFLAGS) $< -lcody $(LIBS) -o $@ - -clean:: - rm -f $(TESTS) - rm -f $(TESTS:=.o) $(TESTS:=.d) - -ifeq ($(filter clean%,$(MAKECMDGOALS)),) --include $(TESTS:=.d) -endif diff --git a/libcody/tests/jouster b/libcody/tests/jouster deleted file mode 100755 index c7a913c..0000000 --- a/libcody/tests/jouster +++ /dev/null @@ -1,11 +0,0 @@ -#! /bin/zsh -# CODYlib -*- mode:Makefile -*- -# Copyright (C) 2019-2020 Nathan Sidwell, nathan@acm.org -# License Apache v2.0 - -pushd ${0%/*} -setopt nullglob -for subdir in $@ ; do - echo $subdir/*(.^*) -done -popd |