summaryrefslogtreecommitdiff
path: root/support/dktools/test-mkdir.ctr
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /support/dktools/test-mkdir.ctr
Initial commit
Diffstat (limited to 'support/dktools/test-mkdir.ctr')
-rw-r--r--support/dktools/test-mkdir.ctr106
1 files changed, 106 insertions, 0 deletions
diff --git a/support/dktools/test-mkdir.ctr b/support/dktools/test-mkdir.ctr
new file mode 100644
index 0000000000..51be7cabd6
--- /dev/null
+++ b/support/dktools/test-mkdir.ctr
@@ -0,0 +1,106 @@
+
+
+#include <stdio.h>
+
+
+
+#include "dk4app.h"
+#include "dk4fput.h"
+#include "dk4appmkdh.h"
+
+
+
+$!trace-include
+
+
+
+static const dkChar * const test_mkdir_help_text[] = {
+$!text macro=dkT
+This is a test program to create directories.
+$!end
+};
+
+static const dkChar * const test_mkdir_license_text[] = {
+$!text macro=dkT
+Copyright (c) 2014-2016, Dirk Krause
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+
+* Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+* Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+* Neither the name of the Dirk Krause nor the names of contributors may be
+ used to endorse or promote products derived from this software without
+ specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED.
+
+IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGE.
+$!end
+};
+
+static dk4_app_t *app = NULL;
+
+/** Main function.
+ @param argc Number of command line arguments.
+ @param argv Command line arguments array.
+ @return 0 on success, all other values indicate errors.
+*/
+#if DK4_CHAR_SIZE > 1
+int wmain(int argc, wchar_t *argv[])
+#else
+int main(int argc, char *argv[])
+#endif
+{
+ int res;
+ int nargs;
+ int i;
+ const dkChar *arg;
+ $!trace-init test-mkdir.deb
+ app = dk4app_open_cmd(
+ argc, argv, NULL, 0,
+ dkT("dktools-4-test"), dkT("1.0.0"),
+ dkT("test-mkdir.txt"), test_mkdir_help_text,
+ test_mkdir_license_text
+ );
+ if (NULL != app) { $? ". app"
+ nargs = dk4app_get_argc(app);
+ if (0 < nargs) {
+ dk4fput_initialize_stdout();
+ for (i = 0; i < nargs; i++) {
+ arg = dk4app_get_argv(app, i);
+ if (NULL != arg) {
+ res = dk4app_mkdir_hierarchy(arg, 1, app);
+ dk4fputs(arg, stdout, NULL);
+ dk4fputc(dkT(' '), stdout, NULL);
+ if (0 < res) {
+ dk4fputs(dkT("SUCCESS"), stdout, NULL);
+ } else {
+ dk4fputs(dkT("FAILED"), stdout, NULL);
+ }
+ dk4fputc(dkT('\n'), stdout, NULL);
+ }
+ }
+ }
+ dk4app_close(app);
+ } else { $? "! app"
+ }
+ $!trace-end
+ return 0;
+}
+