xref: /xnu-11417.121.6/tools/tests/perf_index/perfindex-ram_file_write.c (revision a1e26a70f38d1d7daa7b49b258e2f8538ad81650)
1*a1e26a70SApple OSS Distributions #include "perf_index.h"
2*a1e26a70SApple OSS Distributions #include "fail.h"
3*a1e26a70SApple OSS Distributions #include "test_file_helper.h"
4*a1e26a70SApple OSS Distributions #include "ramdisk.h"
5*a1e26a70SApple OSS Distributions #include <sys/param.h>
6*a1e26a70SApple OSS Distributions #include <stdio.h>
7*a1e26a70SApple OSS Distributions 
8*a1e26a70SApple OSS Distributions const char ramdisk_name[] = "StressRAMDisk";
9*a1e26a70SApple OSS Distributions char ramdisk_path[MAXPATHLEN];
10*a1e26a70SApple OSS Distributions 
11*a1e26a70SApple OSS Distributions DECL_SETUP {
12*a1e26a70SApple OSS Distributions 	int retval;
13*a1e26a70SApple OSS Distributions 
14*a1e26a70SApple OSS Distributions 	retval = setup_ram_volume(ramdisk_name, ramdisk_path);
15*a1e26a70SApple OSS Distributions 	VERIFY(retval == PERFINDEX_SUCCESS, "setup_ram_volume failed");
16*a1e26a70SApple OSS Distributions 
17*a1e26a70SApple OSS Distributions 	printf("ramdisk: %s\n", ramdisk_path);
18*a1e26a70SApple OSS Distributions 
19*a1e26a70SApple OSS Distributions 	return test_file_write_setup(ramdisk_path, num_threads, length);
20*a1e26a70SApple OSS Distributions }
21*a1e26a70SApple OSS Distributions 
22*a1e26a70SApple OSS Distributions DECL_TEST {
23*a1e26a70SApple OSS Distributions 	return test_file_write(ramdisk_path, thread_id, num_threads, length, 0L);
24*a1e26a70SApple OSS Distributions }
25*a1e26a70SApple OSS Distributions 
26*a1e26a70SApple OSS Distributions DECL_CLEANUP {
27*a1e26a70SApple OSS Distributions 	int retval;
28*a1e26a70SApple OSS Distributions 
29*a1e26a70SApple OSS Distributions 	retval = test_file_write_cleanup(ramdisk_path, num_threads, length);
30*a1e26a70SApple OSS Distributions 	VERIFY(retval == PERFINDEX_SUCCESS, "test_file_read_cleanup failed");
31*a1e26a70SApple OSS Distributions 
32*a1e26a70SApple OSS Distributions 	retval = cleanup_ram_volume(ramdisk_path);
33*a1e26a70SApple OSS Distributions 	VERIFY(retval == 0, "cleanup_ram_volume failed");
34*a1e26a70SApple OSS Distributions 
35*a1e26a70SApple OSS Distributions 	return PERFINDEX_SUCCESS;
36*a1e26a70SApple OSS Distributions }
37