xref: /plan9/sys/src/cmd/wikifs/testwrite.c (revision 9a747e4fd48b9f4522c70c07e8f882a15030f964)
1 #include <u.h>
2 #include <libc.h>
3 #include <bio.h>
4 #include <String.h>
5 #include <thread.h>
6 #include "wiki.h"
7 
8 char *wikidir = ".";
9 
10 void
usage(void)11 usage(void)
12 {
13 	fprint(2, "usage: testwrite [-d dir] wikifile n\n");
14 	exits("usage");
15 }
16 
17 void
main(int argc,char ** argv)18 main(int argc, char **argv)
19 {
20 	ulong t;
21 	int i;
22 	Biobuf *b;
23 	String *h;
24 	Whist *doc;
25 	char tmp[20];
26 
27 	t = 0;
28 	ARGBEGIN{
29 	case 't':
30 		t = strtoul(EARGF(usage()), 0, 0);
31 		break;
32 	default:
33 		usage();
34 	}ARGEND
35 
36 	if(argc != 2)
37 		usage();
38 
39 	if((b = Bopen(argv[0], OREAD)) == nil)
40 		sysfatal("Bopen: %r");
41 
42 	if((doc = Brdwhist(b)) == nil)
43 		sysfatal("Brdwtxt: %r");
44 
45 	sprint(tmp, "D%lud\n", time(0));
46 	if((h = pagetext(s_copy(tmp), (doc->doc+doc->ndoc-1)->wtxt, 1))==nil)
47 		sysfatal("wiki2text: %r");
48 
49 	if(writepage(atoi(argv[1]), t, h, doc->title) <0)
50 		sysfatal("writepage: %r");
51 	exits(0);
52 }
53