summaryrefslogtreecommitdiffstats
path: root/private/ole32/stg/docfile/tests/timest.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'private/ole32/stg/docfile/tests/timest.cxx')
-rw-r--r--private/ole32/stg/docfile/tests/timest.cxx89
1 files changed, 89 insertions, 0 deletions
diff --git a/private/ole32/stg/docfile/tests/timest.cxx b/private/ole32/stg/docfile/tests/timest.cxx
new file mode 100644
index 000000000..5f8cf5656
--- /dev/null
+++ b/private/ole32/stg/docfile/tests/timest.cxx
@@ -0,0 +1,89 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <time.h>
+#include "tsupp.hxx"
+
+void _CRTAPI1 main(int argc, char *argv[])
+{
+ IStorage *pstg, *pstgEm;
+ IStream *pstEm;
+ ULARGE_INTEGER ulSize;
+ STATSTG stat;
+
+ StartTest("timest");
+ CmdArgs(argc, argv);
+ printf("Create root docfile = %lX\n",
+ StgCreateDocfile(TEXT("TEST.DFL"), ROOTP(STGM_RW) |
+ STGM_CREATE, 0, &pstg));
+ printf("Create embedded docfile = %lX\n",
+ pstg->CreateStorage(TEXT("TEST"), STGP(STGM_RW) |
+ STGM_FAILIFTHERE, 0, 0, &pstgEm));
+ printf("Create embedded stream = %lX\n",
+ pstgEm->CreateStream(TEXT("TestEmSt"), STMP(STGM_RW) |
+ STGM_FAILIFTHERE, 0, 0, &pstEm));
+ printf("Commit embedded stream = %lX\n",
+ pstEm->Commit(0));
+ printf("Release embedded stream = %lX\n",
+ pstEm->Release());
+ printf("Commit embedded docfile = %lX\n",
+ pstgEm->Commit(0));
+
+ printf("Stat embedded docfile = %lX\n",
+ pstgEm->Stat(&stat, STATFLAG_NONAME));
+ printf("Embedded docfile modify time = %s\n",
+ AscFileTime(&stat.mtime));
+
+ printf("Release embedded docfile = %lX\n",
+ pstgEm->Release());
+ printf("Commit root docfile = %lX\n",
+ pstg->Commit(0));
+ printf("Release root docfile = %lX\n",
+ pstg->Release());
+
+ int i;
+ time_t curtm;
+ curtm = time(NULL);
+ printf("Waiting five seconds from %s", ctime(&curtm));
+ while (time(NULL)-curtm < 5)
+ for (i = 0; i<25000; i++)
+ ;
+ curtm = time(NULL);
+ printf("Time is now %s", ctime(&curtm));
+
+ printf("Open root docfile = %lX\n",
+ StgOpenStorage(TEXT("TEST.DFL"), NULL, ROOTP(STGM_RW),
+ NULL, 0, &pstg));
+ printf("Open embedded docfile = %lX\n",
+ pstg->OpenStorage(TEXT("TEST"), NULL, STGP(STGM_RW),
+ NULL, 0, &pstgEm));
+ printf("Open embedded stream = %lX\n",
+ pstgEm->OpenStream(TEXT("TestEmSt"), NULL,
+ STMP(STGM_RW), 0, &pstEm));
+ ULISet32(ulSize, 64);
+ printf("SetSize embedded stream = %lX\n",
+ pstEm->SetSize(ulSize));
+
+ printf("Commit embedded stream = %lX\n",
+ pstEm->Commit(0));
+ printf("Release embedded stream = %lX\n",
+ pstEm->Release());
+
+ printf("Commit embedded docfile = %lX\n",
+ pstgEm->Commit(0));
+ printf("Stat embedded docfile = %lX\n",
+ pstgEm->Stat(&stat, STATFLAG_NONAME));
+ printf("Embedded docfile modify time = %s\n",
+ AscFileTime(&stat.mtime));
+ printf("Release embedded docfile = %lX\n",
+ pstgEm->Release());
+
+ printf("Commit root docfile = %lX\n",
+ pstg->Commit(0));
+ printf("Stat root docfile = %lX\n",
+ pstg->Stat(&stat, STATFLAG_NONAME));
+ printf("Root storage modify time = %s\n",
+ AscFileTime(&stat.mtime));
+ printf("Release root docfile = %lX\n",
+ pstg->Release());
+ EndTest(0);
+}