From: Timothy Manning Date: Sat, 24 Jul 2021 02:17:44 +0000 (+1200) Subject: Added tests for 32 and 64 bit time. X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs2.git;a=commitdiff_plain;h=c0af9aaf1f09bb197276aa63d672f789a80cec94 Added tests for 32 and 64 bit time. Signed-off-by: Timothy Manning --- diff --git a/direct/test-framework/unit_tests/64_and_32_bit_time/32_bit/Makefile b/direct/test-framework/unit_tests/64_and_32_bit_time/32_bit/Makefile new file mode 100644 index 0000000..daec176 --- /dev/null +++ b/direct/test-framework/unit_tests/64_and_32_bit_time/32_bit/Makefile @@ -0,0 +1,38 @@ +# Makefile for 64 bit time test. +# +# +# YAFFS: Yet another Flash File System. A NAND-flash specific file system. +# +# Copyright (C) 2002-2018 Aleph One Ltd. +# +# +# Created by Timothy Manning +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License version 2 as +# published by the Free Software Foundation. +# +# NB Warning this Makefile does not include header dependencies. +# + +YDI_DIR = ../../../../ +YDI_FRAMEWORK_DIR = ../../../ + +CLEAN_OBJS = time_32_tests emfile-2k-0 emfile-nand emfile-nand128MB +TESTFILES = time_32_tests.o + +all: time_32_tests + +YAFFS_TEST_OBJS = $(COMMONTESTOBJS) $(TESTFILES) + + +ALL_UNSORTED_OBJS += $(YAFFS_TEST_OBJS) $(FUZZER_OBJS) + +include $(YDI_FRAMEWORK_DIR)/FrameworkRules.mk + +phony. test: time_32_tests + ./time_32_tests + +time_32_tests: $(FRAMEWORK_SOURCES) $(YAFFS_TEST_OBJS) + gcc $(CFLAGS) -o $@ $(YAFFS_TEST_OBJS) -lpthread + diff --git a/direct/test-framework/unit_tests/64_and_32_bit_time/32_bit/time_32_tests.c b/direct/test-framework/unit_tests/64_and_32_bit_time/32_bit/time_32_tests.c new file mode 100644 index 0000000..8d10d27 --- /dev/null +++ b/direct/test-framework/unit_tests/64_and_32_bit_time/32_bit/time_32_tests.c @@ -0,0 +1,28 @@ +#include "yaffsfs.h" +#define YAFFS_MOUNT_POINT "/yflash2/" +#define FILE_PATH "/yflash2/foo.txt" + +int random_seed; +int simulate_power_failure = 0; + + +int main() +{ + yaffs_start_up(); + + //test that ytime is 64 bits + + if (sizeof(YTIME_T) != 8) { + printf("Error:size of YTIME_T is not 64 bits\n"); + return 1; + } + + + //create several times and save them + // + + //extra tests + //save the time and get it to overflow. + printf("all tests pass\n"); + return 0; +} diff --git a/direct/test-framework/unit_tests/64_and_32_bit_time/64_bit/Makefile b/direct/test-framework/unit_tests/64_and_32_bit_time/64_bit/Makefile new file mode 100644 index 0000000..a682ed6 --- /dev/null +++ b/direct/test-framework/unit_tests/64_and_32_bit_time/64_bit/Makefile @@ -0,0 +1,38 @@ +# Makefile for 64 bit time test. +# +# +# YAFFS: Yet another Flash File System. A NAND-flash specific file system. +# +# Copyright (C) 2002-2018 Aleph One Ltd. +# +# +# Created by Timothy Manning +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License version 2 as +# published by the Free Software Foundation. +# +# NB Warning this Makefile does not include header dependencies. +# + +YDI_DIR = ../../../../ +YDI_FRAMEWORK_DIR = ../../../ + +CLEAN_OBJS = time_64_tests emfile-2k-0 emfile-nand emfile-nand128MB +TESTFILES = time_64_tests.o + +all: time_64_tests + +YAFFS_TEST_OBJS = $(COMMONTESTOBJS) $(TESTFILES) + + +ALL_UNSORTED_OBJS += $(YAFFS_TEST_OBJS) $(FUZZER_OBJS) + +include $(YDI_FRAMEWORK_DIR)/FrameworkRules.mk + +phony. test: time_64_tests + ./time_64_tests + +time_64_tests: $(FRAMEWORK_SOURCES) $(YAFFS_TEST_OBJS) + gcc $(CFLAGS) -o $@ $(YAFFS_TEST_OBJS) -lpthread + diff --git a/direct/test-framework/unit_tests/64_and_32_bit_time/64_bit/time_64_tests.c b/direct/test-framework/unit_tests/64_and_32_bit_time/64_bit/time_64_tests.c new file mode 100644 index 0000000..8d10d27 --- /dev/null +++ b/direct/test-framework/unit_tests/64_and_32_bit_time/64_bit/time_64_tests.c @@ -0,0 +1,28 @@ +#include "yaffsfs.h" +#define YAFFS_MOUNT_POINT "/yflash2/" +#define FILE_PATH "/yflash2/foo.txt" + +int random_seed; +int simulate_power_failure = 0; + + +int main() +{ + yaffs_start_up(); + + //test that ytime is 64 bits + + if (sizeof(YTIME_T) != 8) { + printf("Error:size of YTIME_T is not 64 bits\n"); + return 1; + } + + + //create several times and save them + // + + //extra tests + //save the time and get it to overflow. + printf("all tests pass\n"); + return 0; +}