12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- /*
- * Copyright (C) 2019, Google LLC. and others
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Distribution License v. 1.0 which is available at
- * https://www.eclipse.org/org/documents/edl-v10.php.
- *
- * SPDX-License-Identifier: BSD-3-Clause
- */
-
- package org.eclipse.jgit.transport;
-
- import static org.hamcrest.MatcherAssert.assertThat;
- import static org.hamcrest.Matchers.contains;
-
- import java.util.List;
- import java.util.stream.Collectors;
- import java.util.stream.Stream;
-
- import org.eclipse.jgit.lib.ObjectId;
- import org.eclipse.jgit.lib.ObjectIdRef.Unpeeled;
- import org.eclipse.jgit.lib.Ref;
- import org.eclipse.jgit.lib.Ref.Storage;
- import org.junit.Test;
-
- public class UploadPackRefSortingForReachabilityTest {
-
- @Test
- public void sortReferences() {
- List<Ref> refs = Stream.of("refs/changes/12/12", "refs/changes/12/1",
- "refs/heads/master", "refs/heads/something",
- "refs/changes/55/1", "refs/tags/v1.1")
- .map(s -> new Unpeeled(Storage.LOOSE, s, ObjectId.zeroId()))
- .collect(Collectors.toList());
- Stream<Ref> sorted = UploadPack.importantRefsFirst(refs);
- List<String> collected = sorted.map(Ref::getName)
- .collect(Collectors.toList());
- assertThat(collected,
- contains("refs/heads/master", "refs/heads/something",
- "refs/tags/v1.1", "refs/changes/12/12",
- "refs/changes/12/1", "refs/changes/55/1"));
- }
- }
|