get jnaerator from a jitpack jar

Signed-off-by: Miguel Molina <miguel@erizocosmi.co>
This commit is contained in:
Miguel Molina 2017-08-08 17:36:52 +02:00
parent f53abe6bc2
commit 2825eb22e6
No known key found for this signature in database
GPG Key ID: D8826D1B86D051EA
3 changed files with 12 additions and 12 deletions

View File

@ -3,6 +3,7 @@ JARS_DIR=./lib
JAR=$(JARS_DIR)/enry.jar
JNAERATOR_DIR=./.jnaerator
JNAERATOR_JAR=$(JNAERATOR_DIR)/jnaerator.jar
JNAERATOR_JAR_URL="https://jitpack.io/com/github/nativelibs4java/JNAerator/jnaerator/$(JNAERATOR_VERSION)/jnaerator-$(JNAERATOR_VERSION)-shaded.jar"
RESOURCES_SRC=../.shared
RESOURCES_DIR=./shared
HEADER_FILE=$(RESOURCES_DIR)/libenry.h
@ -25,12 +26,8 @@ $(RESOURCES_DIR): os-shared-lib
cp -R $(RESOURCES_SRC) $(RESOURCES_DIR)
$(JNAERATOR_JAR): $(RESOURCES_DIR)
git clone --depth 1 https://github.com/nativelibs4java/jnaerator.git $(JNAERATOR_DIR) && \
cd $(JNAERATOR_DIR) && \
git checkout $(JNAERATOR_VERSION) && \
mvn clean install && \
mv jnaerator/target/jnaerator-*-shaded.jar ./jnaerator.jar && \
cd ..;
mkdir $(JNAERATOR_DIR) && \
wget $(JNAERATOR_JAR_URL) -O $(JNAERATOR_JAR)
os-shared-lib:
@os_name="$(shell uname -s)" && \

View File

@ -37,11 +37,15 @@ public class Enry {
* If there are more than one possible language, it returns the first
* language in alphabetical order and safe to false.
*
* @param content of the file
* @param filename name of the file with the extension
* @param content of the file
* @return guessed result
*/
public static Guess getLanguageByContent(byte[] content) {
GetLanguageByContent_return.ByValue res = nativeLib.GetLanguageByContent(toGoByteSlice(content));
public static Guess getLanguageByContent(String filename, byte[] content) {
GetLanguageByContent_return.ByValue res = nativeLib.GetLanguageByContent(
toGoString(filename),
toGoByteSlice(content)
);
return new Guess(toJavaString(res.r0), toJavaBool(res.r1));
}

View File

@ -18,14 +18,13 @@ public class EnryTest {
assertEquals("PHP", Enry.getLanguage("foobar.php", code.getBytes()));
}
// TODO: this is a bug in enry, fix when it's fixed there
@Test(expected = AssertionError.class)
@Test
public void getLanguageByContent() {
String code = "<?php $foo = bar();";
assertGuess(
"PHP",
true,
Enry.getLanguageByContent(code.getBytes())
Enry.getLanguageByContent("foo.php", code.getBytes())
);
}