コード例 #1
0
ファイル: UUIDTest.cpp プロジェクト: apache/activemq-cpp
void UUIDTest::testNameUUIDFromBytes() {
    char name[16] = {
        (char) 0x6b, (char) 0xa7, (char) 0xb8, (char) 0x11,
        (char) 0x9d, (char) 0xad, (char) 0x11, (char) 0xd1,
        (char) 0x80, (char) 0xb4, (char) 0x00, (char) 0xc0,
        (char) 0x4f, (char) 0xd4, (char) 0x30, (char) 0xc8 };

    UUID uuid = UUID::nameUUIDFromBytes(&name[0], 16);

    CPPUNIT_ASSERT_EQUAL(2, uuid.variant());
    CPPUNIT_ASSERT_EQUAL(3, uuid.version());

    CPPUNIT_ASSERT_EQUAL(0xaff565bc2f771745ULL, (unsigned long long) uuid.getLeastSignificantBits());
    CPPUNIT_ASSERT_EQUAL(0x14cdb9b4de013faaLL, uuid.getMostSignificantBits());

    uuid = UUID::nameUUIDFromBytes(std::vector<char>());
    CPPUNIT_ASSERT_EQUAL(2, uuid.variant());
    CPPUNIT_ASSERT_EQUAL(3, uuid.version());

    CPPUNIT_ASSERT_EQUAL(0xa9800998ecf8427eULL, (unsigned long long) uuid.getLeastSignificantBits());
    CPPUNIT_ASSERT_EQUAL(0xd41d8cd98f003204ULL, (unsigned long long) uuid.getMostSignificantBits());

    CPPUNIT_ASSERT_THROW_MESSAGE(
        "Should throw an NullPointerException exception",
        UUID::nameUUIDFromBytes(NULL, 1),
        NullPointerException);
}
コード例 #2
0
ファイル: UUIDTest.cpp プロジェクト: apache/activemq-cpp
void UUIDTest::testFromString() {
    UUID actual = UUID::fromString("f81d4fae-7dec-11d0-a765-00a0c91e6bf6");
    UUID expected = UUID(0xf81d4fae7dec11d0LL, 0xa76500a0c91e6bf6LL);
    CPPUNIT_ASSERT(expected.equals(actual));

    CPPUNIT_ASSERT_EQUAL(2, actual.variant());
    CPPUNIT_ASSERT_EQUAL(1, actual.version());
    CPPUNIT_ASSERT_EQUAL(130742845922168750LL, actual.timestamp());
    CPPUNIT_ASSERT_EQUAL(10085, actual.clockSequence());
    CPPUNIT_ASSERT_EQUAL(690568981494LL, actual.node());

    actual = UUID::fromString("00000000-0000-1000-8000-000000000000");
    expected = UUID(0x0000000000001000LL, 0x8000000000000000L);
    CPPUNIT_ASSERT(expected.equals(actual));

    CPPUNIT_ASSERT_EQUAL(2, actual.variant());
    CPPUNIT_ASSERT_EQUAL(1, actual.version());
    CPPUNIT_ASSERT_EQUAL(0LL, actual.timestamp());
    CPPUNIT_ASSERT_EQUAL(0, actual.clockSequence());
    CPPUNIT_ASSERT_EQUAL(0LL, actual.node());

    CPPUNIT_ASSERT_THROW_MESSAGE(
        "Should throw an IllegalArgumentException exception",
        UUID::fromString(""),
        IllegalArgumentException);

    CPPUNIT_ASSERT_THROW_MESSAGE(
        "Should throw an IllegalArgumentException exception",
        UUID::fromString("f81d4fae_7dec-11d0-a765-00a0c91e6bf6"),
        IllegalArgumentException);

    CPPUNIT_ASSERT_THROW_MESSAGE(
        "Should throw an IllegalArgumentException exception",
        UUID::fromString("f81d4fae-7dec_11d0-a765-00a0c91e6bf6"),
        IllegalArgumentException);

    CPPUNIT_ASSERT_THROW_MESSAGE(
        "Should throw an IllegalArgumentException exception",
        UUID::fromString("f81d4fae-7dec-11d0_a765-00a0c91e6bf6"),
        IllegalArgumentException);

    CPPUNIT_ASSERT_THROW_MESSAGE(
        "Should throw an IllegalArgumentException exception",
        UUID::fromString("f81d4fae-7dec-11d0-a765_00a0c91e6bf6"),
        IllegalArgumentException);
}
コード例 #3
0
ファイル: UUIDGeneratorTest.cpp プロジェクト: ichenq/PocoNet
TEST(UUIDGeneratorTest, testRandom)
{
	UUIDGenerator& gen = UUIDGenerator::defaultGenerator();

	std::set<UUID> uuids;
	for (int i = 0; i < 1000; ++i)
	{
		UUID uuid = gen.createRandom();
		EXPECT_TRUE (uuid.version() == UUID::UUID_RANDOM);
		EXPECT_TRUE (uuids.find(uuid) == uuids.end());
		uuids.insert(uuid);
	}
}
コード例 #4
0
ファイル: UUIDGeneratorTest.cpp プロジェクト: ichenq/PocoNet
TEST(UUIDGeneratorTest, testTimeBased)
{
	UUIDGenerator& gen = UUIDGenerator::defaultGenerator();
	
	std::set<UUID> uuids;
	for (int i = 0; i < 1000; ++i)
	{
		UUID uuid = gen.create();
		EXPECT_TRUE (uuid.version() == UUID::UUID_TIME_BASED);
		EXPECT_TRUE (uuids.find(uuid) == uuids.end());
		uuids.insert(uuid);
	}
}
コード例 #5
0
ファイル: UUIDTest.cpp プロジェクト: apache/activemq-cpp
void UUIDTest::testRandomUUID() {
    UUID uuid = UUID::randomUUID();
    CPPUNIT_ASSERT_EQUAL(2, uuid.variant());
    CPPUNIT_ASSERT_EQUAL(4, uuid.version());
}