summaryrefslogtreecommitdiff
path: root/support/dktools/test-dk4strm.ctr
diff options
context:
space:
mode:
Diffstat (limited to 'support/dktools/test-dk4strm.ctr')
-rw-r--r--support/dktools/test-dk4strm.ctr63
1 files changed, 63 insertions, 0 deletions
diff --git a/support/dktools/test-dk4strm.ctr b/support/dktools/test-dk4strm.ctr
new file mode 100644
index 0000000000..e269597891
--- /dev/null
+++ b/support/dktools/test-dk4strm.ctr
@@ -0,0 +1,63 @@
+
+#include "dk4strm.h"
+#include "dk4strmf.h"
+#include "dk4fopc8.h"
+#include <stdio.h>
+
+
+
+$!trace-include
+
+
+
+
+int main(int argc, char *argv[])
+{
+ FILE *fipo;
+ dk4_stream_t *outstrm;
+ dk4_stream_t *instrm;
+ dk4_er_t er;
+ char c;
+ $!trace-init "test-dk4strm.deb"
+ $? "+ main"
+ if (1 < argc) {
+ dk4error_init(&er);
+ fipo = dk4fopen_c8(argv[1], "w", 0, &er);
+ if (NULL != fipo) {
+ dk4error_init(&er);
+ instrm = dk4stream_open_for_file(stdin, DK4_STREAM_READ, 4096, 0, &er);
+ if (NULL != instrm) {
+ outstrm = dk4stream_open_for_file(fipo, DK4_STREAM_WRITE, 0, 4096, &er);
+ if (NULL != outstrm) {
+ while (dk4stream_c8_read_byte(&c, instrm, &er)) {
+ dk4stream_write_byte(outstrm, (char)c, &er);
+ }
+ (void)dk4stream_close(outstrm, &er);
+ }
+ (void)dk4stream_close(instrm, &er);
+ }
+ fclose(fipo);
+ } else {
+ fprintf(stderr, "Failed to open file %d %d\n", er.ec, er.dt.iDetails1);
+ }
+ } else {
+ dk4error_init(&er);
+ instrm = dk4stream_open_for_file(stdin, DK4_STREAM_READ, 4096, 0, &er);
+ if (NULL != instrm) { $? ". instream ok"
+ outstrm = dk4stream_open_for_file(stdout, DK4_STREAM_WRITE, 0, 4096, &er);
+ if (NULL != outstrm) { $? ". outstream ok"
+ while (dk4stream_c8_read_byte(&c, instrm, &er)) {
+ dk4stream_write_byte(outstrm, (char)c, &er);
+ }
+ dk4stream_close(outstrm, &er);
+ }
+ dk4stream_close(instrm, &er);
+ }
+ }
+ $? "- main"
+ $!trace-end
+ fprintf(stderr, "Error code: %d\n", er.ec);
+ return 0;
+}
+
+