Fix gerrit_common_test.pl
* Ensure we always load test cases, otherwise
there is a false positive.
* Fix the package to correctly be "gerrit".
* Drop unnecessary quotes from Prolog package
statements. The bare text is a valid symbol.
Change-Id: I331ca90e050dc6d20e192c522f96893078102e59
diff --git a/gerrit-server/src/main/prolog/gerrit_common.pl b/gerrit-server/src/main/prolog/gerrit_common.pl
index bfcb1fd..ba0336e 100644
--- a/gerrit-server/src/main/prolog/gerrit_common.pl
+++ b/gerrit-server/src/main/prolog/gerrit_common.pl
@@ -12,7 +12,7 @@
%% See the License for the specific language governing permissions and
%% limitations under the License.
-:- package 'gerrit'.
+:- package gerrit.
'$init' :- init.
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
index 389b393..2b8dad5 100644
--- a/gerrit-server/src/test/java/com/google/gerrit/rules/GerritCommonTest.java
+++ b/gerrit-server/src/test/java/com/google/gerrit/rules/GerritCommonTest.java
@@ -34,7 +34,7 @@
verifiedCategory()
));
- load("gerrit_common_test.pl", new AbstractModule() {
+ load("gerrit", "gerrit_common_test.pl", new AbstractModule() {
@Override
protected void configure() {
bind(ApprovalTypes.class).toInstance(types);
diff --git a/gerrit-server/src/test/java/com/google/gerrit/rules/PrologTestCase.java b/gerrit-server/src/test/java/com/google/gerrit/rules/PrologTestCase.java
index d822a19..9b75dba 100644
--- a/gerrit-server/src/test/java/com/google/gerrit/rules/PrologTestCase.java
+++ b/gerrit-server/src/test/java/com/google/gerrit/rules/PrologTestCase.java
@@ -43,7 +43,7 @@
private List<Term> tests;
protected PrologEnvironment env;
- protected void load(String prologResource, Module... modules)
+ protected void load(String pkg, String prologResource, Module... modules)
throws FileNotFoundException, CompileException {
ArrayList<Module> moduleList = new ArrayList<Module>();
moduleList.add(new PrologModule());
@@ -58,7 +58,7 @@
consult(getClass(), prologResource);
- pkg = myPackage();
+ this.pkg = pkg;
hasSetup = has("setup");
hasTeardown = has("teardown");
@@ -70,6 +70,7 @@
for (Term[] pair : env.all(Prolog.BUILTIN, "clause", head, new VariableTerm())) {
tests.add(pair[0]);
}
+ assertTrue("has tests", tests.size() > 0);
}
protected void consult(Class<?> clazz, String prologResource)
@@ -85,11 +86,6 @@
}
}
- private String myPackage() {
- String pkg = getClass().getName();
- return pkg.substring(0, pkg.lastIndexOf('.'));
- }
-
private boolean has(String name) {
StructureTerm head = SymbolTerm.create(pkg, name, 0);
return env.execute(Prolog.BUILTIN, "clause", head, new VariableTerm());
diff --git a/gerrit-server/src/test/resources/com/google/gerrit/rules/gerrit_common_test.pl b/gerrit-server/src/test/resources/com/google/gerrit/rules/gerrit_common_test.pl
index ccf4835..6aae509 100644
--- a/gerrit-server/src/test/resources/com/google/gerrit/rules/gerrit_common_test.pl
+++ b/gerrit-server/src/test/resources/com/google/gerrit/rules/gerrit_common_test.pl
@@ -12,7 +12,7 @@
%% See the License for the specific language governing permissions and
%% limitations under the License.
-:- package 'gerrit'.
+:- package gerrit.
%% not_same