Example #1
0
TEST(Descriptor, WriteAndReadSucceedsForValidDescriptor) {
    Descriptor expected;
    expected.num_partitions = 1;
    expected.map_type = Descriptor::TYPE_MAP;
    ASSERT_NO_THROW(expected.writeToDirectory(TMPDIR));

    Descriptor actual = Descriptor::readFromDirectory(TMPDIR);
    ASSERT_EQ(expected.map_type, actual.map_type);
    ASSERT_EQ(expected.num_partitions, actual.num_partitions);
    ASSERT_EQ(expected.major_version, actual.major_version);
    ASSERT_EQ(expected.minor_version, actual.minor_version);

    expected.map_type = Descriptor::TYPE_IMMUTABLE_MAP;
    ASSERT_NO_THROW(expected.writeToDirectory(TMPDIR));

    actual = Descriptor::readFromDirectory(TMPDIR);
    ASSERT_EQ(expected.map_type, actual.map_type);
    ASSERT_EQ(expected.num_partitions, actual.num_partitions);
    ASSERT_EQ(expected.major_version, actual.major_version);
    ASSERT_EQ(expected.minor_version, actual.minor_version);
}
Example #2
0
TEST(Descriptor, TryReadReturnsTrueIfDirectoryContainsDescriptor) {
    Descriptor descriptor;
    descriptor.num_partitions = 1;
    descriptor.map_type = Descriptor::TYPE_MAP;
    descriptor.writeToDirectory(TMPDIR);

    Descriptor read_descriptor;
    ASSERT_TRUE(Descriptor::tryReadFromDirectory(TMPDIR, &read_descriptor));
    ASSERT_EQ(descriptor.map_type, read_descriptor.map_type);
    ASSERT_EQ(descriptor.num_partitions, read_descriptor.num_partitions);
    ASSERT_EQ(descriptor.major_version, read_descriptor.major_version);
    ASSERT_EQ(descriptor.minor_version, read_descriptor.minor_version);
}
Example #3
0
TEST(Descriptor, WriteThrowsIfMapTypeIsZero) {
    Descriptor descriptor;
    descriptor.map_type = 0;
    ASSERT_THROW(descriptor.writeToDirectory(TMPDIR), mt::AssertionError);
}
Example #4
0
TEST(Descriptor, WriteThrowsIfNumPartitionsIsZero) {
    Descriptor descriptor;
    descriptor.num_partitions = 0;
    ASSERT_THROW(descriptor.writeToDirectory(TMPDIR), mt::AssertionError);
}