diff options
Diffstat (limited to 'src/tests')
-rw-r--r-- | src/tests/bigmyriad.cpp | 9 | ||||
-rw-r--r-- | src/tests/myriad.cpp | 23 | ||||
-rw-r--r-- | src/tests/myriadfs.cpp | 62 |
3 files changed, 90 insertions, 4 deletions
diff --git a/src/tests/bigmyriad.cpp b/src/tests/bigmyriad.cpp index 9d24741..73a3315 100644 --- a/src/tests/bigmyriad.cpp +++ b/src/tests/bigmyriad.cpp | |||
@@ -5,14 +5,15 @@ | |||
5 | int main() | 5 | int main() |
6 | { | 6 | { |
7 | Bu::File f("big.myr", Bu::File::Read|Bu::File::Write|Bu::File::Create ); | 7 | Bu::File f("big.myr", Bu::File::Read|Bu::File::Write|Bu::File::Create ); |
8 | Bu::Myriad m( f, 256, 12 ); | 8 | Bu::Myriad m( f, 512, 12 ); |
9 | 9 | ||
10 | char *buf = new char[1024*1024*10]; | 10 | #define SSIZE (1024*8) // 1024*1024*10 |
11 | char *buf = new char[SSIZE]; | ||
11 | 12 | ||
12 | for( int j = 0; j < 25; j++ ) | 13 | for( int j = 0; j < 25; j++ ) |
13 | { | 14 | { |
14 | memset( buf, j, 1024*1024*10 ); | 15 | memset( buf, j, SSIZE ); |
15 | m.create( Bu::Myriad::Write ).write( buf, 1024*1024*10 ); | 16 | m.create( Bu::Myriad::Write ).write( buf, SSIZE ); |
16 | // m.sync(); | 17 | // m.sync(); |
17 | printf("\r%03d%%", (j+1)*100/25 ); | 18 | printf("\r%03d%%", (j+1)*100/25 ); |
18 | fflush( stdout ); | 19 | fflush( stdout ); |
diff --git a/src/tests/myriad.cpp b/src/tests/myriad.cpp new file mode 100644 index 0000000..ee4eac4 --- /dev/null +++ b/src/tests/myriad.cpp | |||
@@ -0,0 +1,23 @@ | |||
1 | #include <bu/myriad.h> | ||
2 | #include <bu/myriadstream.h> | ||
3 | #include <bu/string.h> | ||
4 | #include <bu/sio.h> | ||
5 | #include <bu/file.h> | ||
6 | |||
7 | int main( int , char *[] ) | ||
8 | { | ||
9 | Bu::File fMyriad("test.myr", Bu::File::WriteNew|Bu::File::Read ); | ||
10 | Bu::Myriad m( fMyriad, 32 ); | ||
11 | |||
12 | Bu::MyriadStream ms = m.create( Bu::Myriad::ReadWrite ); | ||
13 | ms.setSize( 150 ); | ||
14 | ms.setPos( 145 ); | ||
15 | char stuff[10]; | ||
16 | int32_t iRead = ms.read( stuff, 10 ); | ||
17 | |||
18 | Bu::println("Tried to read 10, expect 5, got %1").arg( iRead ); | ||
19 | |||
20 | |||
21 | return 0; | ||
22 | } | ||
23 | |||
diff --git a/src/tests/myriadfs.cpp b/src/tests/myriadfs.cpp new file mode 100644 index 0000000..29ac3d9 --- /dev/null +++ b/src/tests/myriadfs.cpp | |||
@@ -0,0 +1,62 @@ | |||
1 | #include "bu/file.h" | ||
2 | #include "bu/membuf.h" | ||
3 | #include "bu/myriadfs.h" | ||
4 | #include "bu/myriadstream.h" | ||
5 | #include "bu/sio.h" | ||
6 | |||
7 | using namespace Bu; | ||
8 | |||
9 | int main() | ||
10 | { | ||
11 | // Bu::MemBuf mb; | ||
12 | Bu::File mb("store.mfs", File::Read|File::Write|File::Create ); | ||
13 | Bu::MyriadFs mfs( mb, 512 ); | ||
14 | |||
15 | sio << "Creating dirs..." << sio.nl; | ||
16 | mfs.create("/etc", Bu::MyriadFs::typeDir|0755 ); | ||
17 | mfs.create("/dev", Bu::MyriadFs::typeDir|0755 ); | ||
18 | mfs.create("/usr", Bu::MyriadFs::typeDir|0755 ); | ||
19 | |||
20 | mfs.create("/dev/null", Bu::MyriadFs::typeChrDev|0666, 1, 3 ); | ||
21 | mfs.create("/dev/zero", Bu::MyriadFs::typeChrDev|0666, 1, 5 ); | ||
22 | mfs.create("/dev/sda", Bu::MyriadFs::typeBlkDev|0660, 8, 0 ); | ||
23 | |||
24 | sio << "Creating files..." << sio.nl; | ||
25 | { | ||
26 | Bu::MyriadStream ms = mfs.open("/hello", Bu::MyriadFs::Read ); | ||
27 | ms.write("world!"); | ||
28 | } | ||
29 | { | ||
30 | Bu::MyriadStream ms = mfs.open("/etc/hello", Bu::MyriadFs::Read ); | ||
31 | ms.write("world, again!"); | ||
32 | } | ||
33 | { | ||
34 | Bu::MyriadStream ms = mfs.open("/etc/trunc", Bu::MyriadFs::Write ); | ||
35 | ms.write("[longer text shouldn't be seen]"); | ||
36 | } | ||
37 | { | ||
38 | Bu::MyriadStream ms = mfs.open("/etc/trunc", Bu::MyriadFs::Write|Bu::MyriadFs::Create|Bu::MyriadFs::Truncate ); | ||
39 | ms.write("[short text]"); | ||
40 | } | ||
41 | |||
42 | sio << "Reading files..." << sio.nl; | ||
43 | { | ||
44 | Bu::MyriadStream ms = mfs.open("/hello", Bu::MyriadFs::Read ); | ||
45 | char buf[512]; | ||
46 | buf[ms.read( buf, 512 )] = '\0'; | ||
47 | sio << "read: '" << buf << "'" << sio.nl; | ||
48 | } | ||
49 | { | ||
50 | Bu::MyriadStream ms = mfs.open("/etc/hello", Bu::MyriadFs::Read ); | ||
51 | char buf[512]; | ||
52 | buf[ms.read( buf, 512 )] = '\0'; | ||
53 | sio << "read: '" << buf << "'" << sio.nl; | ||
54 | } | ||
55 | { | ||
56 | Bu::MyriadStream ms = mfs.open("/etc/trunc", Bu::MyriadFs::Read ); | ||
57 | char buf[512]; | ||
58 | buf[ms.read( buf, 512 )] = '\0'; | ||
59 | sio << "read: '" << buf << "'" << sio.nl; | ||
60 | } | ||
61 | } | ||
62 | |||