patch 7.4.1769
Problem:    No "closed", "errors" and "encoding" attribute on Python output.
Solution:   Add attributes and more tests. (Roland Puntaier, closes #622)
diff --git a/src/testdir/test86.in b/src/testdir/test86.in
index 6f47ff6..71fe920 100644
--- a/src/testdir/test86.in
+++ b/src/testdir/test86.in
@@ -1289,6 +1289,11 @@
 ee('assert sys.stdout.readable()==False')
 ee('assert sys.stderr.writable()==True')
 ee('assert sys.stderr.readable()==False')
+ee('assert sys.stdout.closed()==False')
+ee('assert sys.stderr.closed()==False')
+ee('assert sys.stdout.errors=="strict"')
+ee('assert sys.stderr.errors=="strict"')
+ee('assert sys.stdout.encoding==sys.stderr.encoding')
 ee('sys.stdout.write(None)')
 cb.append(">> OutputWriteLines")
 ee('sys.stdout.writelines(None)')
diff --git a/src/testdir/test86.ok b/src/testdir/test86.ok
index fe27c05..8529040 100644
--- a/src/testdir/test86.ok
+++ b/src/testdir/test86.ok
@@ -449,7 +449,7 @@
 dictionary:__dir__,__members__,get,has_key,items,keys,locked,pop,popitem,scope,update,values
 list:__dir__,__members__,extend,locked
 function:__dir__,__members__,args,self,softspace
-output:__dir__,__members__,close,flush,isatty,readable,seekable,softspace,writable,write,writelines
+output:__dir__,__members__,close,closed,flush,isatty,readable,seekable,softspace,writable,write,writelines
 {}
 {'a': 1}
 {'a': 1}
@@ -600,6 +600,11 @@
 assert sys.stdout.readable()==False:NOT FAILED
 assert sys.stderr.writable()==True:NOT FAILED
 assert sys.stderr.readable()==False:NOT FAILED
+assert sys.stdout.closed()==False:NOT FAILED
+assert sys.stderr.closed()==False:NOT FAILED
+assert sys.stdout.errors=="strict":NOT FAILED
+assert sys.stderr.errors=="strict":NOT FAILED
+assert sys.stdout.encoding==sys.stderr.encoding:NOT FAILED
 sys.stdout.write(None):TypeError:('coercing to Unicode: need string or buffer, NoneType found',)
 >> OutputWriteLines
 sys.stdout.writelines(None):TypeError:("'NoneType' object is not iterable",)
diff --git a/src/testdir/test87.in b/src/testdir/test87.in
index e3bc994..0df002f 100644
--- a/src/testdir/test87.in
+++ b/src/testdir/test87.in
@@ -1283,6 +1283,11 @@
 ee('assert sys.stdout.readable()==False')
 ee('assert sys.stderr.writable()==True')
 ee('assert sys.stderr.readable()==False')
+ee('assert sys.stdout.closed()==False')
+ee('assert sys.stderr.closed()==False')
+ee('assert sys.stdout.errors=="strict"')
+ee('assert sys.stderr.errors=="strict"')
+ee('assert sys.stdout.encoding==sys.stderr.encoding')
 ee('sys.stdout.write(None)')
 cb.append(">> OutputWriteLines")
 ee('sys.stdout.writelines(None)')
diff --git a/src/testdir/test87.ok b/src/testdir/test87.ok
index 25c0b51..10069b9 100644
--- a/src/testdir/test87.ok
+++ b/src/testdir/test87.ok
@@ -449,7 +449,7 @@
 dictionary:__dir__,get,has_key,items,keys,locked,pop,popitem,scope,update,values
 list:__dir__,extend,locked
 function:__dir__,args,self,softspace
-output:__dir__,close,flush,isatty,readable,seekable,softspace,writable,write,writelines
+output:__dir__,close,closed,flush,isatty,readable,seekable,softspace,writable,write,writelines
 {}
 {'a': 1}
 {'a': 1}
@@ -600,6 +600,11 @@
 assert sys.stdout.readable()==False:NOT FAILED
 assert sys.stderr.writable()==True:NOT FAILED
 assert sys.stderr.readable()==False:NOT FAILED
+assert sys.stdout.closed()==False:NOT FAILED
+assert sys.stderr.closed()==False:NOT FAILED
+assert sys.stdout.errors=="strict":NOT FAILED
+assert sys.stderr.errors=="strict":NOT FAILED
+assert sys.stdout.encoding==sys.stderr.encoding:NOT FAILED
 sys.stdout.write(None):(<class 'TypeError'>, TypeError("Can't convert 'NoneType' object to str implicitly",))
 >> OutputWriteLines
 sys.stdout.writelines(None):(<class 'TypeError'>, TypeError("'NoneType' object is not iterable",))