@Test public void byTopic() throws Exception { TestRepository<Repo> repo = createProject("repo"); ChangeInserter ins1 = newChange(repo, null, null, null, null); Change change1 = ins1.getChange(); change1.setTopic("feature1"); ins1.insert(); ChangeInserter ins2 = newChange(repo, null, null, null, null); Change change2 = ins2.getChange(); change2.setTopic("feature2"); ins2.insert(); ChangeInserter ins3 = newChange(repo, null, null, null, null); Change change3 = ins3.getChange(); change3.setTopic("Cherrypick-feature2"); ins3.insert(); ChangeInserter ins4 = newChange(repo, null, null, null, null); Change change4 = ins4.getChange(); change4.setTopic("feature2-fixup"); ins4.insert(); Change change5 = newChange(repo, null, null, null, null).insert(); assertQuery("intopic:foo"); assertQuery("intopic:feature1", change1); assertQuery("intopic:feature2", change4, change3, change2); assertQuery("topic:feature2", change2); assertQuery("intopic:feature2", change4, change3, change2); assertQuery("intopic:fixup", change4); assertQuery("topic:\"\"", change5); assertQuery("intopic:\"\"", change5); }
@Test public void byDefault() throws Exception { TestRepository<Repo> repo = createProject("repo"); Change change1 = newChange(repo, null, null, null, null).insert(); RevCommit commit2 = repo.parseBody(repo.commit().message("foosubject").create()); Change change2 = newChange(repo, commit2, null, null, null).insert(); RevCommit commit3 = repo.parseBody(repo.commit().add("Foo.java", "foo contents").create()); Change change3 = newChange(repo, commit3, null, null, null).insert(); ChangeInserter ins4 = newChange(repo, null, null, null, null); Change change4 = ins4.insert(); ReviewInput ri4 = new ReviewInput(); ri4.message = "toplevel"; ri4.labels = ImmutableMap.<String, Short>of("Code-Review", (short) 1); gApi.changes().id(change4.getId().get()).current().review(ri4); ChangeInserter ins5 = newChange(repo, null, null, null, null); Change change5 = ins5.getChange(); change5.setTopic("feature5"); ins5.insert(); Change change6 = newChange(repo, null, null, null, "branch6").insert(); assertQuery(change1.getId().get(), change1); assertQuery(ChangeTriplet.format(change1), change1); assertQuery("foosubject", change2); assertQuery("Foo.java", change3); assertQuery("Code-Review+1", change4); assertQuery("toplevel", change4); assertQuery("feature5", change5); assertQuery("branch6", change6); assertQuery("refs/heads/branch6", change6); Change[] expected = new Change[] {change6, change5, change4, change3, change2, change1}; assertQuery("*****@*****.**", expected); assertQuery("repo", expected); }