diff options
author | Jon Bratseth <bratseth@yahoo-inc.com> | 2016-06-15 23:09:44 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@yahoo-inc.com> | 2016-06-15 23:09:44 +0200 |
commit | 72231250ed81e10d66bfe70701e64fa5fe50f712 (patch) | |
tree | 2728bba1131a6f6e5bdf95afec7d7ff9358dac50 /fastos/src/tests/tests.h |
Publish
Diffstat (limited to 'fastos/src/tests/tests.h')
-rw-r--r-- | fastos/src/tests/tests.h | 174 |
1 files changed, 174 insertions, 0 deletions
diff --git a/fastos/src/tests/tests.h b/fastos/src/tests/tests.h new file mode 100644 index 00000000000..fdaa719669d --- /dev/null +++ b/fastos/src/tests/tests.h @@ -0,0 +1,174 @@ +// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +#include <stdio.h> +#include <string.h> + +#include <vespa/fastos/app.h> + +class BaseTest : public FastOS_Application +{ +private: + BaseTest(const BaseTest&); + BaseTest &operator=(const BaseTest&); + + int totallen; +public: + const char *okString; + const char *failString; + + BaseTest () + : totallen(70), + okString("SUCCESS"), + failString("FAILURE") + { + } + + virtual ~BaseTest() {}; + + void PrintSeparator () + { + for(int i=0; i<totallen; i++) printf("-"); + printf("\n"); + } + + virtual void PrintProgress (char *string) + { + printf(string); + } +#define MAX_STR_LEN 3000 + bool Progress (bool result, const char *str) + { + char string[MAX_STR_LEN]; + sprintf(string, "%s: %s\n", + result ? okString : failString, str); + PrintProgress(string); + return result; + } + + bool Progress (bool result, const char *str, int d1) + { + char string[MAX_STR_LEN]; + sprintf(string, "%s: ", result ? okString : failString); + sprintf(&string[strlen(string)], str, d1); + sprintf(&string[strlen(string)], "\n"); + PrintProgress(string); + return result; + } + + bool Progress (bool result, const char *str, int d1, int d2) + { + char string[MAX_STR_LEN]; + sprintf(string, "%s: ", result ? okString : failString); + sprintf(&string[strlen(string)], str, d1, d2); + sprintf(&string[strlen(string)], "\n"); + PrintProgress(string); + return result; + } + + bool Progress (bool result, const char *str, const char *s1) + { + char string[MAX_STR_LEN]; + sprintf(string, "%s: ", result ? okString : failString); + sprintf(&string[strlen(string)], str, s1); + sprintf(&string[strlen(string)], "\n"); + PrintProgress(string); + return result; + } + + bool Progress (bool result, const char *str, const FastOS_ThreadInterface *s1) + { + char string[MAX_STR_LEN]; + sprintf(string, "%s: ", result ? okString : failString); + sprintf(&string[strlen(string)], str, s1); + sprintf(&string[strlen(string)], "\n"); + PrintProgress(string); + return result; + } + + bool Progress (bool result, const char *str, const FastOS_Socket *s1) + { + char string[MAX_STR_LEN]; + sprintf(string, "%s: ", result ? okString : failString); + sprintf(&string[strlen(string)], str, s1); + sprintf(&string[strlen(string)], "\n"); + PrintProgress(string); + return result; + } + + bool Progress (bool result, const char *str, const char *s1, const char *s2) + { + char string[MAX_STR_LEN]; + sprintf(string, "%s: ", result ? okString : failString); + sprintf(&string[strlen(string)], str, s1, s2); + sprintf(&string[strlen(string)], "\n"); + PrintProgress(string); + return result; + } + + bool Progress (bool result, const char *str, const char *s1, int d1) + { + char string[MAX_STR_LEN]; + sprintf(string, "%s: ", result ? okString : failString); + sprintf(&string[strlen(string)], str, s1, d1); + sprintf(&string[strlen(string)], "\n"); + PrintProgress(string); + return result; + } + + bool Progress (bool result, const char *str, int d1, const char *s1) + { + char string[MAX_STR_LEN]; + sprintf(string, "%s: ", result ? okString : failString); + sprintf(&string[strlen(string)], str, d1, s1); + sprintf(&string[strlen(string)], "\n"); + PrintProgress(string); + return result; + } + + bool ProgressI64 (bool result, const char *str, int64_t val) + { + char string[MAX_STR_LEN]; + sprintf(string, "%s: ", result ? okString : failString); + sprintf(&string[strlen(string)], str, val); + sprintf(&string[strlen(string)], "\n"); + PrintProgress(string); + return result; + } + + bool ProgressFloat (bool result, const char *str, float val) + { + char string[MAX_STR_LEN]; + sprintf(string, "%s: ", result ? okString : failString); + sprintf(&string[strlen(string)], str, val); + sprintf(&string[strlen(string)], "\n"); + PrintProgress(string); + return result; + } + + void Ok (const char *string) + { + Progress(true, string); + } + + void Fail (const char *string) + { + Progress(false, string); + } + + void TestHeader (const char *string) + { + int len = strlen(string); + int leftspace = (totallen - len)/2 - 2; + int rightspace = totallen - 4 - len - leftspace; + int i; + + printf("\n\n"); + for(i=0; i<totallen; i++) printf("*"); + printf("\n**"); + for(i=0; i<leftspace; i++) printf(" "); //forgot printf-specifier.. + printf(string); + for(i=0; i<rightspace; i++) printf(" "); + printf("**\n"); + for(i=0; i<totallen; i++) printf("*"); + printf("\n"); + } +}; |