| 24 | namespace { |
| 25 | |
| 26 | TEST(RandomInputStream, ReadNBytes) { |
| 27 | Env* env = Env::Default(); |
| 28 | string fname = testing::TmpDir() + "/random_inputbuffer_test"; |
| 29 | TF_ASSERT_OK(WriteStringToFile(env, fname, "0123456789")); |
| 30 | |
| 31 | std::unique_ptr<RandomAccessFile> file; |
| 32 | TF_ASSERT_OK(env->NewRandomAccessFile(fname, &file)); |
| 33 | string read; |
| 34 | RandomAccessInputStream in(file.get()); |
| 35 | TF_ASSERT_OK(in.ReadNBytes(3, &read)); |
| 36 | EXPECT_EQ(read, "012"); |
| 37 | EXPECT_EQ(3, in.Tell()); |
| 38 | TF_ASSERT_OK(in.ReadNBytes(0, &read)); |
| 39 | EXPECT_EQ(read, ""); |
| 40 | EXPECT_EQ(3, in.Tell()); |
| 41 | TF_ASSERT_OK(in.ReadNBytes(5, &read)); |
| 42 | EXPECT_EQ(read, "34567"); |
| 43 | EXPECT_EQ(8, in.Tell()); |
| 44 | TF_ASSERT_OK(in.ReadNBytes(0, &read)); |
| 45 | EXPECT_EQ(read, ""); |
| 46 | EXPECT_EQ(8, in.Tell()); |
| 47 | EXPECT_TRUE(errors::IsOutOfRange(in.ReadNBytes(20, &read))); |
| 48 | EXPECT_EQ(read, "89"); |
| 49 | EXPECT_EQ(10, in.Tell()); |
| 50 | TF_ASSERT_OK(in.ReadNBytes(0, &read)); |
| 51 | EXPECT_EQ(read, ""); |
| 52 | EXPECT_EQ(10, in.Tell()); |
| 53 | } |
| 54 | |
| 55 | TEST(RandomInputStream, SkipNBytes) { |
| 56 | Env* env = Env::Default(); |
nothing calls this directly
no test coverage detected