Add test for ChangeMessage UUID format
Change-Id: I3dd98f22b50902f297e6ade86833bff23a8df0cc
This commit is contained in:
@@ -0,0 +1,186 @@
|
||||
// Copyright (C) 2017 The Android Open Source Project
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package com.google.gerrit.server;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
|
||||
import com.google.gerrit.reviewdb.server.AccountAccess;
|
||||
import com.google.gerrit.reviewdb.server.AccountExternalIdAccess;
|
||||
import com.google.gerrit.reviewdb.server.AccountGroupAccess;
|
||||
import com.google.gerrit.reviewdb.server.AccountGroupByIdAccess;
|
||||
import com.google.gerrit.reviewdb.server.AccountGroupByIdAudAccess;
|
||||
import com.google.gerrit.reviewdb.server.AccountGroupMemberAccess;
|
||||
import com.google.gerrit.reviewdb.server.AccountGroupMemberAuditAccess;
|
||||
import com.google.gerrit.reviewdb.server.AccountGroupNameAccess;
|
||||
import com.google.gerrit.reviewdb.server.ChangeAccess;
|
||||
import com.google.gerrit.reviewdb.server.ChangeMessageAccess;
|
||||
import com.google.gerrit.reviewdb.server.PatchLineCommentAccess;
|
||||
import com.google.gerrit.reviewdb.server.PatchSetAccess;
|
||||
import com.google.gerrit.reviewdb.server.PatchSetApprovalAccess;
|
||||
import com.google.gerrit.reviewdb.server.ReviewDb;
|
||||
import com.google.gerrit.reviewdb.server.SchemaVersionAccess;
|
||||
import com.google.gerrit.reviewdb.server.SystemConfigAccess;
|
||||
import com.google.gwtorm.server.Access;
|
||||
import com.google.gwtorm.server.StatementExecutor;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.concurrent.atomic.AtomicInteger;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
public class ChangeUtilTest {
|
||||
@Test
|
||||
public void changeMessageUuid() throws Exception {
|
||||
Pattern pat = Pattern.compile("^[0-9a-f]{8}_[0-9a-f]{8}$");
|
||||
assertThat("abcd1234_0987fedc").matches(pat);
|
||||
|
||||
ReviewDb db = new FakeDb();
|
||||
String id1 = ChangeUtil.messageUUID(db);
|
||||
assertThat(id1).matches(pat);
|
||||
|
||||
String id2 = ChangeUtil.messageUUID(db);
|
||||
assertThat(id2).isNotEqualTo(id1);
|
||||
assertThat(id2).matches(pat);
|
||||
}
|
||||
|
||||
private static class FakeDb implements ReviewDb {
|
||||
private final AtomicInteger SEQ = new AtomicInteger(100);
|
||||
|
||||
@Override
|
||||
public int nextChangeMessageId() {
|
||||
return SEQ.getAndIncrement();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void commit() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void rollback() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateSchema(StatementExecutor e) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void pruneSchema(StatementExecutor e) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Access<?, ?>[] allRelations() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void close() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public SchemaVersionAccess schemaVersion() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public SystemConfigAccess systemConfig() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public AccountAccess accounts() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public AccountExternalIdAccess accountExternalIds() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public AccountGroupAccess accountGroups() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public AccountGroupNameAccess accountGroupNames() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public AccountGroupMemberAccess accountGroupMembers() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public AccountGroupMemberAuditAccess accountGroupMembersAudit() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public ChangeAccess changes() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public PatchSetApprovalAccess patchSetApprovals() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public ChangeMessageAccess changeMessages() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public PatchSetAccess patchSets() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public PatchLineCommentAccess patchComments() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public AccountGroupByIdAccess accountGroupById() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public AccountGroupByIdAudAccess accountGroupByIdAud() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int nextAccountId() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int nextAccountGroupId() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int nextChangeId() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user