diff options
Diffstat (limited to 'fastos/src/tests/performancetest.cpp')
-rw-r--r-- | fastos/src/tests/performancetest.cpp | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/fastos/src/tests/performancetest.cpp b/fastos/src/tests/performancetest.cpp new file mode 100644 index 00000000000..3865920f981 --- /dev/null +++ b/fastos/src/tests/performancetest.cpp @@ -0,0 +1,55 @@ +// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +#include <stdlib.h> + +#include <vespa/fastos/fastos.h> +#include "tests.h" + +void PerformanceTest (char *buffer); + +int main (int argc, char **argv) +{ + (void)argc; + (void)argv; + + void (*test)(char *buffer) = PerformanceTest; + + test(NULL); + return 0; +} + +void PerformanceTest (char *buffer) +{ + // Cause exception + *static_cast<char *>(NULL) = 'e'; + +#if 1 + FastOS_File file("test.txt"); + + if(file.OpenReadOnly()) + { + file.Read(buffer, 20); + file.Write2(buffer, 20); + file.Read(buffer, 20); + file.Write2(buffer, 20); + file.Read(buffer, 20); + file.Write2(buffer, 20); + } +#else + + int filedes = open("test.txt", O_RDONLY, 0664); + + if(filedes != -1) + { + write(filedes, buffer, 20); + read(filedes, buffer, 20); + write(filedes, buffer, 20); + read(filedes, buffer, 20); + write(filedes, buffer, 20); + read(filedes, buffer, 20); + write(filedes, buffer, 20); + + close(filedes); + } +#endif +} + |