2323
2424// Includes std::string internal_banana
2525#include " banana.ascii"
26+ static std::shared_ptr<fs::Disk> disk;
2627
27- std::shared_ptr<fs::Disk> disk;
28-
29- const uint64_t SIZE = 4000000000 ;
28+ const uint64_t SIZE = 4294967296 ;
3029const std::string shallow_banana{" /banana.txt" };
3130const std::string deep_banana{" /dir1/dir2/dir3/dir4/dir5/dir6/banana.txt" };
3231
@@ -35,16 +34,17 @@ void is_done() {
3534 if (++counter == 3 ) INFO (" FAT32" ," SUCCESS\n " );
3635}
3736
38- void test2 () {
37+ void test2 ()
38+ {
3939 INFO (" FAT32" , " Remounting disk." );
40+
41+ CHECKSERT (not disk->empty (), " Disk not empty" );
42+ CHECKSERT (disk->dev ().size () == SIZE / 512 , " Disk size is %llu bytes" , SIZE);
43+
4044 disk->init_fs (disk->MBR ,
41- [] (fs::error_t err)
45+ [] (fs::error_t err, auto & fs )
4246 {
4347 CHECKSERT (not err, " Filesystem mounted on VBR1" );
44- CHECKSERT (not disk->empty (), " Disk not empty" );
45- CHECKSERT (disk->dev ().size () == SIZE / 512 , " Disk size is %llu bytes" , SIZE);
46-
47- auto & fs = disk->fs ();
4848
4949 fs.stat (shallow_banana,
5050 [] (auto err, const auto & ent) {
@@ -97,7 +97,7 @@ void test2() {
9797 });
9898}
9999
100- void Service::start (const std::string& )
100+ void Service::start ()
101101{
102102 auto & device = hw::Devices::drive (0 );
103103 disk = std::make_shared<fs::Disk> (device);
@@ -112,11 +112,10 @@ void Service::start(const std::string&)
112112
113113 // auto-mount filesystem
114114 disk->init_fs (
115- [] (fs::error_t err)
115+ [] (fs::error_t err, auto & fs )
116116 {
117117 CHECKSERT (!err, " Filesystem auto-initializedd" );
118118
119- auto & fs = disk->fs ();
120119 std::string fat32_str{" FAT32" };
121120 CHECKSERT (fs.name () == fat32_str, " Filesystem recognized as FAT32" );
122121
@@ -128,9 +127,8 @@ void Service::start(const std::string&)
128127 auto & e = ents->at (0 );
129128 CHECKSERT (e.is_file (), " Ent is a file" );
130129 CHECKSERT (e.name () == " banana.txt" , " Ents name is 'banana.txt'" );
130+
131131 test2 ();
132132 });
133133 });
134-
135- /* */
136134}
0 commit comments