summaryrefslogtreecommitdiff
path: root/gnulib-local/tests
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@baserock.org>2014-12-24 07:38:37 +0000
committer <>2015-02-02 12:02:29 +0000
commit482840e61f86ca321838a91e902c41d40c098bbb (patch)
tree01ea2e242fd2792d19fe192476601587901db794 /gnulib-local/tests
downloadgettext-tarball-482840e61f86ca321838a91e902c41d40c098bbb.tar.gz
Imported from /home/lorry/working-area/delta_gettext-tarball/gettext-0.19.4.tar.xz.gettext-0.19.4
Diffstat (limited to 'gnulib-local/tests')
-rw-r--r--gnulib-local/tests/test-environ.c.diff18
-rw-r--r--gnulib-local/tests/test-moo-aroot.oo.c6
-rw-r--r--gnulib-local/tests/test-moo-aroot.oo.h10
-rw-r--r--gnulib-local/tests/test-moo-assign.c32
-rw-r--r--gnulib-local/tests/test-moo-asub1.oo.c17
-rw-r--r--gnulib-local/tests/test-moo-asub1.oo.h10
-rw-r--r--gnulib-local/tests/test-moo-root.oo.c19
-rw-r--r--gnulib-local/tests/test-moo-root.oo.h10
-rw-r--r--gnulib-local/tests/test-moo-sub1.oo.c13
-rw-r--r--gnulib-local/tests/test-moo-sub1.oo.h10
-rw-r--r--gnulib-local/tests/test-moo-sub2.oo.c20
-rw-r--r--gnulib-local/tests/test-moo-sub2.oo.h10
-rwxr-xr-xgnulib-local/tests/test-term-ostream-xterm39
-rw-r--r--gnulib-local/tests/test-term-ostream-xterm-16color.out131
-rw-r--r--gnulib-local/tests/test-term-ostream-xterm-256color.out131
-rw-r--r--gnulib-local/tests/test-term-ostream-xterm-88color.out131
-rw-r--r--gnulib-local/tests/test-term-ostream-xterm-8bit.out131
-rw-r--r--gnulib-local/tests/test-term-ostream-xterm-aix51.out131
-rw-r--r--gnulib-local/tests/test-term-ostream-xterm-basic-italic.out131
-rw-r--r--gnulib-local/tests/test-term-ostream-xterm-basic.out131
-rw-r--r--gnulib-local/tests/test-term-ostream-xterm-irix65.out131
-rw-r--r--gnulib-local/tests/test-term-ostream-xterm-linux-debian.out131
-rw-r--r--gnulib-local/tests/test-term-ostream-xterm-linux-mandriva.out131
-rw-r--r--gnulib-local/tests/test-term-ostream-xterm-mingw.out131
-rw-r--r--gnulib-local/tests/test-term-ostream-xterm-netbsd3.out131
-rw-r--r--gnulib-local/tests/test-term-ostream-xterm-osf51.out131
-rw-r--r--gnulib-local/tests/test-term-ostream-xterm-r6.out131
-rw-r--r--gnulib-local/tests/test-term-ostream-xterm-solaris10.out131
-rw-r--r--gnulib-local/tests/test-term-ostream-xterm-xf86-v32.out131
-rw-r--r--gnulib-local/tests/test-term-ostream.c213
30 files changed, 2523 insertions, 0 deletions
diff --git a/gnulib-local/tests/test-environ.c.diff b/gnulib-local/tests/test-environ.c.diff
new file mode 100644
index 0000000..6cc8f68
--- /dev/null
+++ b/gnulib-local/tests/test-environ.c.diff
@@ -0,0 +1,18 @@
+diff --git a/test-environ.c b/test-environ.c
+index 46a2eab..8afecb7 100644
+--- a/test-environ.c
++++ b/test-environ.c
+@@ -22,6 +22,13 @@
+
+ #include <string.h>
+
++/* environ is the exported symbol referencing the internal
++ __cygwin_environ variable on cygwin64:
++ <https://cygwin.com/ml/cygwin/2013-06/msg00228.html>. */
++#if defined __CYGWIN__ && defined __x86_64__
++extern DLL_VARIABLE char **environ;
++#endif
++
+ int
+ main ()
+ {
diff --git a/gnulib-local/tests/test-moo-aroot.oo.c b/gnulib-local/tests/test-moo-aroot.oo.c
new file mode 100644
index 0000000..ba67742
--- /dev/null
+++ b/gnulib-local/tests/test-moo-aroot.oo.c
@@ -0,0 +1,6 @@
+#include <config.h>
+
+/* Specification. */
+#include "test-moo-aroot.h"
+
+#pragma implementation
diff --git a/gnulib-local/tests/test-moo-aroot.oo.h b/gnulib-local/tests/test-moo-aroot.oo.h
new file mode 100644
index 0000000..ef07447
--- /dev/null
+++ b/gnulib-local/tests/test-moo-aroot.oo.h
@@ -0,0 +1,10 @@
+#include <stdlib.h>
+#include "moo.h"
+
+/* Define an abstract root class. */
+struct aroot
+{
+methods:
+ int write (aroot_t x, void *buf, size_t len);
+ void do_free (aroot_t x);
+};
diff --git a/gnulib-local/tests/test-moo-assign.c b/gnulib-local/tests/test-moo-assign.c
new file mode 100644
index 0000000..642bbe9
--- /dev/null
+++ b/gnulib-local/tests/test-moo-assign.c
@@ -0,0 +1,32 @@
+/* Test assignments.
+ Errors are signalled in C++ mode only, not by a C compiler. */
+#include "test-moo-sub2.h"
+
+void foo ()
+{
+ root_t a;
+ sub1_t b;
+ sub2_t c;
+
+ /* Test initializations. */
+ root_t a1 = a;
+ root_t a2 = b;
+ root_t a3 = c;
+ sub1_t b1 = a; /* ERROR */
+ sub1_t b2 = b;
+ sub1_t b3 = c;
+ sub2_t c1 = a; /* ERROR */
+ sub2_t c2 = b; /* ERROR */
+ sub2_t c3 = c;
+
+ /* Test assignments. */
+ a = a1;
+ a = b1;
+ a = c1;
+ b = a2; /* ERROR */
+ b = b2;
+ b = c2;
+ c = a3; /* ERROR */
+ c = b3; /* ERROR */
+ c = c3;
+}
diff --git a/gnulib-local/tests/test-moo-asub1.oo.c b/gnulib-local/tests/test-moo-asub1.oo.c
new file mode 100644
index 0000000..bb5da83
--- /dev/null
+++ b/gnulib-local/tests/test-moo-asub1.oo.c
@@ -0,0 +1,17 @@
+#include <config.h>
+
+/* Specification. */
+#include "test-moo-asub1.h"
+
+#pragma implementation
+
+int asub1::write (asub1_t x, void *buf, size_t len)
+{
+ fwrite (buf, 1, len, x->fp);
+ return 0;
+}
+
+void asub1::do_free (asub1_t x)
+{
+ free (x);
+}
diff --git a/gnulib-local/tests/test-moo-asub1.oo.h b/gnulib-local/tests/test-moo-asub1.oo.h
new file mode 100644
index 0000000..3a6620d
--- /dev/null
+++ b/gnulib-local/tests/test-moo-asub1.oo.h
@@ -0,0 +1,10 @@
+#include "test-moo-aroot.h"
+
+#include <stdio.h>
+
+/* Define a subclass. */
+struct asub1 : struct aroot
+{
+ FILE *fp;
+methods:
+};
diff --git a/gnulib-local/tests/test-moo-root.oo.c b/gnulib-local/tests/test-moo-root.oo.c
new file mode 100644
index 0000000..00a72fe
--- /dev/null
+++ b/gnulib-local/tests/test-moo-root.oo.c
@@ -0,0 +1,19 @@
+#include <config.h>
+
+/* Specification. */
+#include "test-moo-root.h"
+
+#include <stdio.h>
+
+#pragma implementation
+
+int root::write (root_t x, void *buf, size_t len)
+{
+ fwrite (buf, 1, len, stdout);
+ return 0;
+}
+
+void root::do_free (root_t x)
+{
+ free (x);
+}
diff --git a/gnulib-local/tests/test-moo-root.oo.h b/gnulib-local/tests/test-moo-root.oo.h
new file mode 100644
index 0000000..4fe9d3f
--- /dev/null
+++ b/gnulib-local/tests/test-moo-root.oo.h
@@ -0,0 +1,10 @@
+#include <stdlib.h>
+#include "moo.h"
+
+/* Define a root class. */
+struct root
+{
+methods:
+ int write (root_t x, void *buf, size_t len);
+ void do_free (root_t x);
+};
diff --git a/gnulib-local/tests/test-moo-sub1.oo.c b/gnulib-local/tests/test-moo-sub1.oo.c
new file mode 100644
index 0000000..bc928da
--- /dev/null
+++ b/gnulib-local/tests/test-moo-sub1.oo.c
@@ -0,0 +1,13 @@
+#include <config.h>
+
+/* Specification. */
+#include "test-moo-sub1.h"
+
+#pragma implementation
+
+/* Test an override. */
+int sub1::write (sub1_t x, void *buf, size_t len)
+{
+ fwrite (buf, 1, len, x->fp);
+ return 0;
+}
diff --git a/gnulib-local/tests/test-moo-sub1.oo.h b/gnulib-local/tests/test-moo-sub1.oo.h
new file mode 100644
index 0000000..5814394
--- /dev/null
+++ b/gnulib-local/tests/test-moo-sub1.oo.h
@@ -0,0 +1,10 @@
+#include "test-moo-root.h"
+
+#include <stdio.h>
+
+/* Define a subclass. */
+struct sub1 : struct root
+{
+ FILE *fp;
+methods:
+};
diff --git a/gnulib-local/tests/test-moo-sub2.oo.c b/gnulib-local/tests/test-moo-sub2.oo.c
new file mode 100644
index 0000000..7b61507
--- /dev/null
+++ b/gnulib-local/tests/test-moo-sub2.oo.c
@@ -0,0 +1,20 @@
+#include <config.h>
+
+/* Specification. */
+#include "test-moo-sub2.h"
+
+#include <stdio.h>
+
+#pragma implementation
+
+void
+sub2::begin_indent (sub2_t x)
+{
+ x->indent++;
+}
+
+void
+sub2::end_indent (sub2_t x)
+{
+ x->indent--;
+}
diff --git a/gnulib-local/tests/test-moo-sub2.oo.h b/gnulib-local/tests/test-moo-sub2.oo.h
new file mode 100644
index 0000000..d03b36a
--- /dev/null
+++ b/gnulib-local/tests/test-moo-sub2.oo.h
@@ -0,0 +1,10 @@
+#include "test-moo-sub1.h"
+
+/* Define a subclass. */
+struct sub2 : struct sub1
+{
+ int indent;
+methods:
+ void begin_indent (sub2_t x);
+ void end_indent (sub2_t x);
+};
diff --git a/gnulib-local/tests/test-term-ostream-xterm b/gnulib-local/tests/test-term-ostream-xterm
new file mode 100755
index 0000000..71dc6eb
--- /dev/null
+++ b/gnulib-local/tests/test-term-ostream-xterm
@@ -0,0 +1,39 @@
+#!/bin/sh
+
+tmpfiles=""
+trap 'rm -fr $tmpfiles' 1 2 3 15
+
+tmpfiles="$tmpfiles out1 out"
+# The redirection of stderr into a pipe avoids the output of padding bytes
+# (unnecessary NUL bytes after escape sequences) on some systems.
+(TERM=xterm ./test-term-ostream > out1) 2>&1 | cat 1>&2
+LC_ALL=C tr -d '\r' < out1 > out
+
+# There are several variants of the "xterm" terminal description floating
+# around, each with a different sgr0 escape sequence. Use "infocmp -l -1 xterm"
+# to inspect the escape sequences of xterm on your platform.
+# xterm-r6: sgr0=\E[m
+# xterm-xf86-v32: sgr0=\E[m\017
+# xterm-linux-mandriva: sgr0=\E[m\E(B
+# xterm-basic: sgr0=\E(B\E[m
+# xterm-8bit: sgr0=\2330m\E(B
+
+: ${DIFF=diff}
+ ${DIFF} ${srcdir}/test-term-ostream-xterm-r6.out out > /dev/null \
+|| ${DIFF} ${srcdir}/test-term-ostream-xterm-xf86-v32.out out > /dev/null \
+|| ${DIFF} ${srcdir}/test-term-ostream-xterm-basic.out out > /dev/null \
+|| ${DIFF} ${srcdir}/test-term-ostream-xterm-basic-italic.out out > /dev/null \
+|| ${DIFF} ${srcdir}/test-term-ostream-xterm-8bit.out out > /dev/null \
+|| ${DIFF} ${srcdir}/test-term-ostream-xterm-linux-debian.out out > /dev/null \
+|| ${DIFF} ${srcdir}/test-term-ostream-xterm-linux-mandriva.out out > /dev/null \
+|| ${DIFF} ${srcdir}/test-term-ostream-xterm-netbsd3.out out > /dev/null \
+|| ${DIFF} ${srcdir}/test-term-ostream-xterm-solaris10.out out > /dev/null \
+|| ${DIFF} ${srcdir}/test-term-ostream-xterm-aix51.out out > /dev/null \
+|| ${DIFF} ${srcdir}/test-term-ostream-xterm-osf51.out out > /dev/null \
+|| ${DIFF} ${srcdir}/test-term-ostream-xterm-irix65.out out > /dev/null \
+|| ${DIFF} ${srcdir}/test-term-ostream-xterm-mingw.out out > /dev/null
+result=$?
+
+rm -fr $tmpfiles
+
+exit $result
diff --git a/gnulib-local/tests/test-term-ostream-xterm-16color.out b/gnulib-local/tests/test-term-ostream-xterm-16color.out
new file mode 100644
index 0000000..3c13e71
--- /dev/null
+++ b/gnulib-local/tests/test-term-ostream-xterm-16color.out
@@ -0,0 +1,131 @@
+Colors (foreground/background):
+ |black |blue |green |cyan |red |magenta|yellow |white |default
+black | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+blue | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+green | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+cyan | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+red | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+magenta| Words | Words | Words | Words | Words | Words | Words | Words | Words 
+yellow | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+white | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+default| Words | Words | Words | Words | Words | Words | Words | Words | Words
+
+Colors (hue/saturation):
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+   
+   
+   
+   
+   
+   
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+
+Weights:
+normal, bold, default
+
+Postures:
+normal, italic, default
+
+Text decorations:
+normal, underlined, default
+
diff --git a/gnulib-local/tests/test-term-ostream-xterm-256color.out b/gnulib-local/tests/test-term-ostream-xterm-256color.out
new file mode 100644
index 0000000..792b247
--- /dev/null
+++ b/gnulib-local/tests/test-term-ostream-xterm-256color.out
@@ -0,0 +1,131 @@
+Colors (foreground/background):
+ |black |blue |green |cyan |red |magenta|yellow |white |default
+black | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+blue | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+green | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+cyan | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+red | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+magenta| Words | Words | Words | Words | Words | Words | Words | Words | Words 
+yellow | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+white | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+default| Words | Words | Words | Words | Words | Words | Words | Words | Words
+
+Colors (hue/saturation):
+      
+      
+      
+         
+      
+     
+      
+      
+     
+     
+      
+      
+      
+     
+        
+     
+     
+     
+     
+     
+     
+        
+     
+      
+      
+      
+     
+     
+      
+      
+     
+     
+        
+     
+     
+     
+     
+     
+     
+        
+     
+     
+      
+      
+     
+     
+      
+      
+      
+     
+        
+     
+     
+     
+     
+     
+     
+        
+     
+      
+      
+       
+      
+      
+       
+       
+      
+      
+         
+      
+      
+      
+      
+      
+      
+         
+      
+      
+       
+       
+      
+      
+       
+       
+       
+      
+         
+      
+      
+      
+      
+      
+      
+         
+      
+       
+       
+       
+      
+      
+       
+       
+      
+      
+         
+      
+      
+      
+
+Weights:
+normal, bold, default
+
+Postures:
+normal, italic, default
+
+Text decorations:
+normal, underlined, default
+
diff --git a/gnulib-local/tests/test-term-ostream-xterm-88color.out b/gnulib-local/tests/test-term-ostream-xterm-88color.out
new file mode 100644
index 0000000..5adb82d
--- /dev/null
+++ b/gnulib-local/tests/test-term-ostream-xterm-88color.out
@@ -0,0 +1,131 @@
+Colors (foreground/background):
+ |black |blue |green |cyan |red |magenta|yellow |white |default
+black | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+blue | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+green | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+cyan | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+red | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+magenta| Words | Words | Words | Words | Words | Words | Words | Words | Words 
+yellow | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+white | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+default| Words | Words | Words | Words | Words | Words | Words | Words | Words
+
+Colors (hue/saturation):
+            
+            
+          
+          
+           
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+          
+            
+            
+         
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+           
+        
+            
+         
+            
+            
+           
+          
+               
+           
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+           
+            
+            
+           
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+           
+                
+           
+            
+             
+             
+            
+               
+            
+          
+     
+     
+     
+    
+    
+    
+    
+    
+    
+    
+    
+           
+            
+            
+           
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+         
+           
+              
+           
+            
+
+Weights:
+normal, bold, default
+
+Postures:
+normal, italic, default
+
+Text decorations:
+normal, underlined, default
+
diff --git a/gnulib-local/tests/test-term-ostream-xterm-8bit.out b/gnulib-local/tests/test-term-ostream-xterm-8bit.out
new file mode 100644
index 0000000..671a07f
--- /dev/null
+++ b/gnulib-local/tests/test-term-ostream-xterm-8bit.out
@@ -0,0 +1,131 @@
+Colors (foreground/background):
+ |black |blue |green |cyan |red |magenta|yellow |white |default
+black | Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m
+blue | Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m
+green | Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m
+cyan | Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m
+red | Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m
+magenta| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m
+yellow | Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m
+white | Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m
+default| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words ›39;49m| Words
+
+Colors (hue/saturation):
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+  ›39;49m
+
+Weights:
+normal, ›1mbold, ›0m(Bdefault
+
+Postures:
+normal, italic, default
+
+Text decorations:
+normal, ›4munderlined, ›24mdefault
+
diff --git a/gnulib-local/tests/test-term-ostream-xterm-aix51.out b/gnulib-local/tests/test-term-ostream-xterm-aix51.out
new file mode 100644
index 0000000..d9a83cc
--- /dev/null
+++ b/gnulib-local/tests/test-term-ostream-xterm-aix51.out
@@ -0,0 +1,131 @@
+Colors (foreground/background):
+ |black |blue |green |cyan |red |magenta|yellow |white |default
+black | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+blue | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+green | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+cyan | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+red | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+magenta| Words | Words | Words | Words | Words | Words | Words | Words | Words 
+yellow | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+white | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+default| Words | Words | Words | Words | Words | Words | Words | Words | Words
+
+Colors (hue/saturation):
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+
+Weights:
+normal, bold, (Bdefault
+
+Postures:
+normal, italic, default
+
+Text decorations:
+normal, underlined, default
+
diff --git a/gnulib-local/tests/test-term-ostream-xterm-basic-italic.out b/gnulib-local/tests/test-term-ostream-xterm-basic-italic.out
new file mode 100644
index 0000000..4d74f8a
--- /dev/null
+++ b/gnulib-local/tests/test-term-ostream-xterm-basic-italic.out
@@ -0,0 +1,131 @@
+Colors (foreground/background):
+ |black |blue |green |cyan |red |magenta|yellow |white |default
+black | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+blue | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+green | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+cyan | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+red | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+magenta| Words | Words | Words | Words | Words | Words | Words | Words | Words 
+yellow | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+white | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+default| Words | Words | Words | Words | Words | Words | Words | Words | Words
+
+Colors (hue/saturation):
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+
+Weights:
+normal, bold, (Bdefault
+
+Postures:
+normal, italic, default
+
+Text decorations:
+normal, underlined, default
+
diff --git a/gnulib-local/tests/test-term-ostream-xterm-basic.out b/gnulib-local/tests/test-term-ostream-xterm-basic.out
new file mode 100644
index 0000000..1d6d3a3
--- /dev/null
+++ b/gnulib-local/tests/test-term-ostream-xterm-basic.out
@@ -0,0 +1,131 @@
+Colors (foreground/background):
+ |black |blue |green |cyan |red |magenta|yellow |white |default
+black | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+blue | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+green | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+cyan | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+red | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+magenta| Words | Words | Words | Words | Words | Words | Words | Words | Words 
+yellow | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+white | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+default| Words | Words | Words | Words | Words | Words | Words | Words | Words
+
+Colors (hue/saturation):
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+
+Weights:
+normal, bold, (Bdefault
+
+Postures:
+normal, italic, default
+
+Text decorations:
+normal, underlined, default
+
diff --git a/gnulib-local/tests/test-term-ostream-xterm-irix65.out b/gnulib-local/tests/test-term-ostream-xterm-irix65.out
new file mode 100644
index 0000000..b116768
--- /dev/null
+++ b/gnulib-local/tests/test-term-ostream-xterm-irix65.out
@@ -0,0 +1,131 @@
+Colors (foreground/background):
+ |black |blue |green |cyan |red |magenta|yellow |white |default
+black | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+blue | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+green | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+cyan | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+red | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+magenta| Words | Words | Words | Words | Words | Words | Words | Words | Words 
+yellow | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+white | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+default| Words | Words | Words | Words | Words | Words | Words | Words | Words
+
+Colors (hue/saturation):
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+
+Weights:
+normal, bold, default
+
+Postures:
+normal, italic, default
+
+Text decorations:
+normal, underlined, default
+
diff --git a/gnulib-local/tests/test-term-ostream-xterm-linux-debian.out b/gnulib-local/tests/test-term-ostream-xterm-linux-debian.out
new file mode 100644
index 0000000..3e1ea67
--- /dev/null
+++ b/gnulib-local/tests/test-term-ostream-xterm-linux-debian.out
@@ -0,0 +1,131 @@
+Colors (foreground/background):
+ |black |blue |green |cyan |red |magenta|yellow |white |default
+black | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+blue | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+green | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+cyan | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+red | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+magenta| Words | Words | Words | Words | Words | Words | Words | Words | Words 
+yellow | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+white | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+default| Words | Words | Words | Words | Words | Words | Words | Words | Words
+
+Colors (hue/saturation):
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+
+Weights:
+normal, bold, default
+
+Postures:
+normal, italic, default
+
+Text decorations:
+normal, underlined, default
+
diff --git a/gnulib-local/tests/test-term-ostream-xterm-linux-mandriva.out b/gnulib-local/tests/test-term-ostream-xterm-linux-mandriva.out
new file mode 100644
index 0000000..4aa2880
--- /dev/null
+++ b/gnulib-local/tests/test-term-ostream-xterm-linux-mandriva.out
@@ -0,0 +1,131 @@
+Colors (foreground/background):
+ |black |blue |green |cyan |red |magenta|yellow |white |default
+black | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+blue | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+green | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+cyan | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+red | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+magenta| Words | Words | Words | Words | Words | Words | Words | Words | Words 
+yellow | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+white | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+default| Words | Words | Words | Words | Words | Words | Words | Words | Words
+
+Colors (hue/saturation):
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+
+Weights:
+normal, bold, (Bdefault
+
+Postures:
+normal, italic, default
+
+Text decorations:
+normal, underlined, default
+
diff --git a/gnulib-local/tests/test-term-ostream-xterm-mingw.out b/gnulib-local/tests/test-term-ostream-xterm-mingw.out
new file mode 100644
index 0000000..8c1b7d9
--- /dev/null
+++ b/gnulib-local/tests/test-term-ostream-xterm-mingw.out
@@ -0,0 +1,131 @@
+Colors (foreground/background):
+ |black |blue |green |cyan |red |magenta|yellow |white |default
+black | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+blue | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+green | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+cyan | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+red | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+magenta| Words | Words | Words | Words | Words | Words | Words | Words | Words 
+yellow | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+white | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+default| Words | Words | Words | Words | Words | Words | Words | Words | Words
+
+Colors (hue/saturation):
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+
+Weights:
+normal, bold, default
+
+Postures:
+normal, italic, default
+
+Text decorations:
+normal, underlined, default
+
diff --git a/gnulib-local/tests/test-term-ostream-xterm-netbsd3.out b/gnulib-local/tests/test-term-ostream-xterm-netbsd3.out
new file mode 100644
index 0000000..d45d1e6
--- /dev/null
+++ b/gnulib-local/tests/test-term-ostream-xterm-netbsd3.out
@@ -0,0 +1,131 @@
+Colors (foreground/background):
+ |black |blue |green |cyan |red |magenta|yellow |white |default
+black | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+blue | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+green | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+cyan | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+red | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+magenta| Words | Words | Words | Words | Words | Words | Words | Words | Words 
+yellow | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+white | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+default| Words | Words | Words | Words | Words | Words | Words | Words | Words
+
+Colors (hue/saturation):
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+
+Weights:
+normal, bold, default
+
+Postures:
+normal, italic, default
+
+Text decorations:
+normal, underlined, default
+
diff --git a/gnulib-local/tests/test-term-ostream-xterm-osf51.out b/gnulib-local/tests/test-term-ostream-xterm-osf51.out
new file mode 100644
index 0000000..9fc95ab
--- /dev/null
+++ b/gnulib-local/tests/test-term-ostream-xterm-osf51.out
@@ -0,0 +1,131 @@
+Colors (foreground/background):
+ |black |blue |green |cyan |red |magenta|yellow |white |default
+black | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+blue | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+green | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+cyan | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+red | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+magenta| Words | Words | Words | Words | Words | Words | Words | Words | Words 
+yellow | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+white | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+default| Words | Words | Words | Words | Words | Words | Words | Words | Words
+
+Colors (hue/saturation):
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+
+Weights:
+normal, bold, default
+
+Postures:
+normal, italic, default
+
+Text decorations:
+normal, underlined, default
+
diff --git a/gnulib-local/tests/test-term-ostream-xterm-r6.out b/gnulib-local/tests/test-term-ostream-xterm-r6.out
new file mode 100644
index 0000000..240de88
--- /dev/null
+++ b/gnulib-local/tests/test-term-ostream-xterm-r6.out
@@ -0,0 +1,131 @@
+Colors (foreground/background):
+ |black |blue |green |cyan |red |magenta|yellow |white |default
+black | Words | Words | Words | Words | Words | Words | Words | Words | Words
+blue | Words | Words | Words | Words | Words | Words | Words | Words | Words
+green | Words | Words | Words | Words | Words | Words | Words | Words | Words
+cyan | Words | Words | Words | Words | Words | Words | Words | Words | Words
+red | Words | Words | Words | Words | Words | Words | Words | Words | Words
+magenta| Words | Words | Words | Words | Words | Words | Words | Words | Words
+yellow | Words | Words | Words | Words | Words | Words | Words | Words | Words
+white | Words | Words | Words | Words | Words | Words | Words | Words | Words
+default| Words | Words | Words | Words | Words | Words | Words | Words | Words
+
+Colors (hue/saturation):
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Weights:
+normal, bold, default
+
+Postures:
+normal, italic, default
+
+Text decorations:
+normal, underlined, default
+
diff --git a/gnulib-local/tests/test-term-ostream-xterm-solaris10.out b/gnulib-local/tests/test-term-ostream-xterm-solaris10.out
new file mode 100644
index 0000000..fcb2930
--- /dev/null
+++ b/gnulib-local/tests/test-term-ostream-xterm-solaris10.out
@@ -0,0 +1,131 @@
+Colors (foreground/background):
+ |black |blue |green |cyan |red |magenta|yellow |white |default
+black | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+blue | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+green | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+cyan | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+red | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+magenta| Words | Words | Words | Words | Words | Words | Words | Words | Words 
+yellow | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+white | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+default| Words | Words | Words | Words | Words | Words | Words | Words | Words
+
+Colors (hue/saturation):
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+
+Weights:
+normal, bold, default
+
+Postures:
+normal, italic, default
+
+Text decorations:
+normal, underlined, default
+
diff --git a/gnulib-local/tests/test-term-ostream-xterm-xf86-v32.out b/gnulib-local/tests/test-term-ostream-xterm-xf86-v32.out
new file mode 100644
index 0000000..6e7465d
--- /dev/null
+++ b/gnulib-local/tests/test-term-ostream-xterm-xf86-v32.out
@@ -0,0 +1,131 @@
+Colors (foreground/background):
+ |black |blue |green |cyan |red |magenta|yellow |white |default
+black | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+blue | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+green | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+cyan | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+red | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+magenta| Words | Words | Words | Words | Words | Words | Words | Words | Words 
+yellow | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+white | Words | Words | Words | Words | Words | Words | Words | Words | Words 
+default| Words | Words | Words | Words | Words | Words | Words | Words | Words
+
+Colors (hue/saturation):
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+
+Weights:
+normal, bold, default
+
+Postures:
+normal, italic, default
+
+Text decorations:
+normal, underlined, default
+
diff --git a/gnulib-local/tests/test-term-ostream.c b/gnulib-local/tests/test-term-ostream.c
new file mode 100644
index 0000000..b8bdbd7
--- /dev/null
+++ b/gnulib-local/tests/test-term-ostream.c
@@ -0,0 +1,213 @@
+/* Test for the term-ostream API. */
+
+#include <config.h>
+
+#include "term-ostream.h"
+
+#include <stdlib.h>
+#include <string.h>
+
+int
+main ()
+{
+ static struct { const char *name; term_color_t c; int r; int g; int b; }
+ colors[] =
+ {
+ { "black", -2, 0, 0, 0 },
+ { "blue", -2, 0, 0, 255 },
+ { "green", -2, 0, 255, 0 },
+ { "cyan", -2, 0, 255, 255 },
+ { "red", -2, 255, 0, 0 },
+ { "magenta", -2, 255, 0, 255 },
+ { "yellow", -2, 255, 255, 0 },
+ { "white", -2, 255, 255, 255 },
+ { "default", COLOR_DEFAULT }
+ };
+ term_ostream_t stream;
+ int i, row, col;
+
+ stream = term_ostream_create (1, "stdout");
+
+ for (i = 0; i < 8; i++)
+ colors[i].c =
+ term_ostream_rgb_to_color (stream, colors[i].r, colors[i].g, colors[i].b);
+
+ ostream_write_str (stream, "Colors (foreground/background):\n");
+ ostream_write_str (stream, " ");
+ for (col = 0; col <= 8; col++)
+ {
+ const char *name = colors[col].name;
+ ostream_write_str (stream, "|");
+ ostream_write_str (stream, name);
+ ostream_write_mem (stream, " ", 7 - strlen (name));
+ }
+ ostream_write_str (stream, "\n");
+ for (row = 0; row <= 8; row++)
+ {
+ const char *name = colors[row].name;
+ ostream_write_str (stream, name);
+ ostream_write_mem (stream, " ", 7 - strlen (name));
+ for (col = 0; col <= 8; col++)
+ {
+ term_color_t row_color = colors[row].c;
+ term_color_t col_color = colors[col].c;
+
+ ostream_write_str (stream, "|");
+ term_ostream_set_color (stream, row_color);
+ term_ostream_set_bgcolor (stream, col_color);
+ if (!(term_ostream_get_color (stream) == row_color
+ && term_ostream_get_bgcolor (stream) == col_color))
+ abort ();
+ ostream_write_str (stream, " Words ");
+ term_ostream_set_color (stream, COLOR_DEFAULT);
+ term_ostream_set_bgcolor (stream, COLOR_DEFAULT);
+ if (!(term_ostream_get_color (stream) == COLOR_DEFAULT
+ && term_ostream_get_bgcolor (stream) == COLOR_DEFAULT))
+ abort ();
+ }
+ ostream_write_str (stream, "\n");
+ }
+ ostream_write_str (stream, "\n");
+
+ ostream_write_str (stream, "Colors (hue/saturation):\n");
+ /* Hue from 0 to 1. */
+ for (row = 0; row <= 17; row++)
+ {
+ for (col = 0; col <= 64; col++)
+ {
+ int r = 255;
+ int b = (int) (255.0f / 64.0f * col + 0.5f);
+ int g = b + (int) (row / 17.0f * (r - b) + 0.5f);
+ term_color_t c = term_ostream_rgb_to_color (stream, r, g, b);
+ term_ostream_set_bgcolor (stream, c);
+ ostream_write_str (stream, " ");
+ term_ostream_set_bgcolor (stream, COLOR_DEFAULT);
+ }
+ ostream_write_str (stream, "\n");
+ }
+ /* Hue from 1 to 2. */
+ for (row = 17; row >= 0; row--)
+ {
+ for (col = 0; col <= 64; col++)
+ {
+ int g = 255;
+ int b = (int) (255.0f / 64.0f * col + 0.5f);
+ int r = b + (int) (row / 17.0f * (g - b) + 0.5f);
+ term_color_t c = term_ostream_rgb_to_color (stream, r, g, b);
+ term_ostream_set_bgcolor (stream, c);
+ ostream_write_str (stream, " ");
+ term_ostream_set_bgcolor (stream, COLOR_DEFAULT);
+ }
+ ostream_write_str (stream, "\n");
+ }
+ /* Hue from 2 to 3. */
+ for (row = 0; row <= 17; row++)
+ {
+ for (col = 0; col <= 64; col++)
+ {
+ int g = 255;
+ int r = (int) (255.0f / 64.0f * col + 0.5f);
+ int b = r + (int) (row / 17.0f * (g - r) + 0.5f);
+ term_color_t c = term_ostream_rgb_to_color (stream, r, g, b);
+ term_ostream_set_bgcolor (stream, c);
+ ostream_write_str (stream, " ");
+ term_ostream_set_bgcolor (stream, COLOR_DEFAULT);
+ }
+ ostream_write_str (stream, "\n");
+ }
+ /* Hue from 3 to 4. */
+ for (row = 17; row >= 0; row--)
+ {
+ for (col = 0; col <= 64; col++)
+ {
+ int b = 255;
+ int r = (int) (255.0f / 64.0f * col + 0.5f);
+ int g = r + (int) (row / 17.0f * (b - r) + 0.5f);
+ term_color_t c = term_ostream_rgb_to_color (stream, r, g, b);
+ term_ostream_set_bgcolor (stream, c);
+ ostream_write_str (stream, " ");
+ term_ostream_set_bgcolor (stream, COLOR_DEFAULT);
+ }
+ ostream_write_str (stream, "\n");
+ }
+ /* Hue from 4 to 5. */
+ for (row = 0; row <= 17; row++)
+ {
+ for (col = 0; col <= 64; col++)
+ {
+ int b = 255;
+ int g = (int) (255.0f / 64.0f * col + 0.5f);
+ int r = g + (int) (row / 17.0f * (b - g) + 0.5f);
+ term_color_t c = term_ostream_rgb_to_color (stream, r, g, b);
+ term_ostream_set_bgcolor (stream, c);
+ ostream_write_str (stream, " ");
+ term_ostream_set_bgcolor (stream, COLOR_DEFAULT);
+ }
+ ostream_write_str (stream, "\n");
+ }
+ /* Hue from 5 to 6. */
+ for (row = 17; row >= 0; row--)
+ {
+ for (col = 0; col <= 64; col++)
+ {
+ int r = 255;
+ int g = (int) (255.0f / 64.0f * col + 0.5f);
+ int b = g + (int) (row / 17.0f * (r - g) + 0.5f);
+ term_color_t c = term_ostream_rgb_to_color (stream, r, g, b);
+ term_ostream_set_bgcolor (stream, c);
+ ostream_write_str (stream, " ");
+ term_ostream_set_bgcolor (stream, COLOR_DEFAULT);
+ }
+ ostream_write_str (stream, "\n");
+ }
+ ostream_write_str (stream, "\n");
+
+ ostream_write_str (stream, "Weights:\n");
+ term_ostream_set_weight (stream, WEIGHT_NORMAL);
+ if (term_ostream_get_weight (stream) != WEIGHT_NORMAL)
+ abort ();
+ ostream_write_str (stream, "normal, ");
+ term_ostream_set_weight (stream, WEIGHT_BOLD);
+ if (term_ostream_get_weight (stream) != WEIGHT_BOLD)
+ abort ();
+ ostream_write_str (stream, "bold, ");
+ term_ostream_set_weight (stream, WEIGHT_DEFAULT);
+ if (term_ostream_get_weight (stream) != WEIGHT_DEFAULT)
+ abort ();
+ ostream_write_str (stream, "default \n");
+ ostream_write_str (stream, "\n");
+
+ ostream_write_str (stream, "Postures:\n");
+ term_ostream_set_posture (stream, POSTURE_NORMAL);
+ if (term_ostream_get_posture (stream) != POSTURE_NORMAL)
+ abort ();
+ ostream_write_str (stream, "normal, ");
+ term_ostream_set_posture (stream, POSTURE_ITALIC);
+ if (term_ostream_get_posture (stream) != POSTURE_ITALIC)
+ abort ();
+ ostream_write_str (stream, "italic, ");
+ term_ostream_set_posture (stream, POSTURE_DEFAULT);
+ if (term_ostream_get_posture (stream) != POSTURE_DEFAULT)
+ abort ();
+ ostream_write_str (stream, "default \n");
+ ostream_write_str (stream, "\n");
+
+ ostream_write_str (stream, "Text decorations:\n");
+ term_ostream_set_underline (stream, UNDERLINE_OFF);
+ if (term_ostream_get_underline (stream) != UNDERLINE_OFF)
+ abort ();
+ ostream_write_str (stream, "normal, ");
+ term_ostream_set_underline (stream, UNDERLINE_ON);
+ if (term_ostream_get_underline (stream) != UNDERLINE_ON)
+ abort ();
+ ostream_write_str (stream, "underlined, ");
+ term_ostream_set_underline (stream, UNDERLINE_DEFAULT);
+ if (term_ostream_get_underline (stream) != UNDERLINE_DEFAULT)
+ abort ();
+ ostream_write_str (stream, "default \n");
+ ostream_write_str (stream, "\n");
+
+ ostream_free (stream);
+
+ return 0;
+}