summaryrefslogtreecommitdiffstats
path: root/gerrit-server/src/test/java/com/google/gerrit/rules/GerritCommonTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'gerrit-server/src/test/java/com/google/gerrit/rules/GerritCommonTest.java')
-rw-r--r--gerrit-server/src/test/java/com/google/gerrit/rules/GerritCommonTest.java91
1 files changed, 0 insertions, 91 deletions
diff --git a/gerrit-server/src/test/java/com/google/gerrit/rules/GerritCommonTest.java b/gerrit-server/src/test/java/com/google/gerrit/rules/GerritCommonTest.java
deleted file mode 100644
index 40596e8856..0000000000
--- a/gerrit-server/src/test/java/com/google/gerrit/rules/GerritCommonTest.java
+++ /dev/null
@@ -1,91 +0,0 @@
-// Copyright (C) 2011 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.rules;
-
-import static org.easymock.EasyMock.expect;
-
-import com.google.gerrit.common.data.LabelTypes;
-import com.google.gerrit.server.project.Util;
-import com.google.gerrit.server.query.change.ChangeData;
-import com.google.inject.AbstractModule;
-import com.googlecode.prolog_cafe.exceptions.CompileException;
-import com.googlecode.prolog_cafe.exceptions.ReductionLimitException;
-import com.googlecode.prolog_cafe.lang.JavaObjectTerm;
-import com.googlecode.prolog_cafe.lang.Prolog;
-import com.googlecode.prolog_cafe.lang.StructureTerm;
-import com.googlecode.prolog_cafe.lang.SymbolTerm;
-import java.io.PushbackReader;
-import java.io.StringReader;
-import java.util.Arrays;
-import org.easymock.EasyMock;
-import org.eclipse.jgit.lib.Config;
-import org.junit.Before;
-import org.junit.Test;
-
-public class GerritCommonTest extends PrologTestCase {
- @Before
- public void setUp() throws Exception {
- load(
- "gerrit",
- "gerrit_common_test.pl",
- new AbstractModule() {
- @Override
- protected void configure() {
- Config cfg = new Config();
- cfg.setInt("rules", null, "reductionLimit", 1300);
- cfg.setInt("rules", null, "compileReductionLimit", (int) 1e6);
- bind(PrologEnvironment.Args.class)
- .toInstance(
- new PrologEnvironment.Args(null, null, null, null, null, null, null, cfg));
- }
- });
- }
-
- @Override
- protected void setUpEnvironment(PrologEnvironment env) throws Exception {
- LabelTypes labelTypes = new LabelTypes(Arrays.asList(Util.codeReview(), Util.verified()));
- ChangeData cd = EasyMock.createMock(ChangeData.class);
- expect(cd.getLabelTypes()).andStubReturn(labelTypes);
- EasyMock.replay(cd);
- env.set(StoredValues.CHANGE_DATA, cd);
- }
-
- @Test
- public void gerritCommon() throws Exception {
- runPrologBasedTests();
- }
-
- @Test
- public void reductionLimit() throws Exception {
- PrologEnvironment env = envFactory.create(machine);
- setUpEnvironment(env);
-
- String script = "loopy :- b(5).\nb(N) :- N > 0, !, S = N - 1, b(S).\nb(_) :- true.\n";
-
- SymbolTerm nameTerm = SymbolTerm.create("testReductionLimit");
- JavaObjectTerm inTerm =
- new JavaObjectTerm(new PushbackReader(new StringReader(script), Prolog.PUSHBACK_SIZE));
- if (!env.execute(Prolog.BUILTIN, "consult_stream", nameTerm, inTerm)) {
- throw new CompileException("Cannot consult " + nameTerm);
- }
-
- exception.expect(ReductionLimitException.class);
- exception.expectMessage("exceeded reduction limit of 1300");
- env.once(
- Prolog.BUILTIN,
- "call",
- new StructureTerm(":", SymbolTerm.create("user"), SymbolTerm.create("loopy")));
- }
-}