You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tika.apache.org by ma...@apache.org on 2014/07/29 23:08:30 UTC

svn commit: r1614488 - in /tika/trunk/tika-translate/src: main/java/org/apache/tika/language/translate/MicrosoftTranslator.java test/java/org/apache/tika/language/translate/MicrosoftTranslatorTest.java

Author: mattmann
Date: Tue Jul 29 21:08:30 2014
New Revision: 1614488

URL: http://svn.apache.org/r1614488
Log:
- TIKA-1378: MicrosoftTranslator setClient and setId NPE (thanks to tpalsulich for the review!)

Modified:
    tika/trunk/tika-translate/src/main/java/org/apache/tika/language/translate/MicrosoftTranslator.java
    tika/trunk/tika-translate/src/test/java/org/apache/tika/language/translate/MicrosoftTranslatorTest.java

Modified: tika/trunk/tika-translate/src/main/java/org/apache/tika/language/translate/MicrosoftTranslator.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-translate/src/main/java/org/apache/tika/language/translate/MicrosoftTranslator.java?rev=1614488&r1=1614487&r2=1614488&view=diff
==============================================================================
--- tika/trunk/tika-translate/src/main/java/org/apache/tika/language/translate/MicrosoftTranslator.java (original)
+++ tika/trunk/tika-translate/src/main/java/org/apache/tika/language/translate/MicrosoftTranslator.java Tue Jul 29 21:08:30 2014
@@ -56,7 +56,7 @@ public class MicrosoftTranslator impleme
                 props.load(stream);
                 clientId = props.getProperty(ID_PROPERTY);
                 clientSecret = props.getProperty(SECRET_PROPERTY);
-                if (!clientId.equals(DEFAULT_ID) && !clientSecret.equals(DEFAULT_SECRET)) available = true;
+                this.available = checkAvailable();   
             }
         } catch (IOException e) {
         	e.printStackTrace();
@@ -119,7 +119,7 @@ public class MicrosoftTranslator impleme
      */
     public void setId(String id){
     	this.clientId = id;
-        if (!clientId.equals(DEFAULT_ID) && !clientSecret.equals(DEFAULT_SECRET)) available = true;
+        this.available = checkAvailable();   
     }
     
     /**
@@ -128,6 +128,13 @@ public class MicrosoftTranslator impleme
      */
     public void setSecret(String secret){
     	this.clientSecret = secret;
-        if (!clientId.equals(DEFAULT_ID) && !clientSecret.equals(DEFAULT_SECRET)) available = true;    	
+        this.available = checkAvailable();   	
+    }
+    
+    private boolean checkAvailable(){
+       return clientId != null && 
+    		   !clientId.equals(DEFAULT_ID) && 
+    		   clientSecret != null && 
+    		   !clientSecret.equals(DEFAULT_SECRET);
     }
 }

Modified: tika/trunk/tika-translate/src/test/java/org/apache/tika/language/translate/MicrosoftTranslatorTest.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-translate/src/test/java/org/apache/tika/language/translate/MicrosoftTranslatorTest.java?rev=1614488&r1=1614487&r2=1614488&view=diff
==============================================================================
--- tika/trunk/tika-translate/src/test/java/org/apache/tika/language/translate/MicrosoftTranslatorTest.java (original)
+++ tika/trunk/tika-translate/src/test/java/org/apache/tika/language/translate/MicrosoftTranslatorTest.java Tue Jul 29 21:08:30 2014
@@ -21,24 +21,24 @@ import org.junit.Before;
 import org.junit.Test;
 
 import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
 
 /**
  * Test cases for the {@link MicrosoftTranslator} class.
  */
 public class MicrosoftTranslatorTest {
-    Tika tika;
+    MicrosoftTranslator translator;
     @Before
     public void setUp() {
-        tika = new Tika();
+        translator = new MicrosoftTranslator();
     }
 
     @Test
     public void testSimpleTranslate() throws Exception {
         String source = "hello";
         String expected = "salut";
-        String translated = tika.translate(source, "en", "fr");
-        System.err.println(tika.getTranslator().isAvailable());
-        if (tika.getTranslator().isAvailable()) assertTrue("Translate " + source + " to " + expected + " (was " + translated + ")",
+        String translated = translator.translate(source, "en", "fr");
+        if (translator.isAvailable()) assertTrue("Translate " + source + " to " + expected + " (was " + translated + ")",
                 expected.equalsIgnoreCase(translated));
     }
 
@@ -46,10 +46,31 @@ public class MicrosoftTranslatorTest {
     public void testSimpleDetectTranslate() throws Exception {
         String source = "hello";
         String expected = "salut";
-        String translated = tika.translate(source, "fr");
-        System.err.println(tika.getTranslator().isAvailable());
-        if (tika.getTranslator().isAvailable()) assertTrue("Translate " + source + " to " + expected + " (was " + translated + ")",
+        String translated = translator.translate(source, "fr");
+        if (translator.isAvailable()) assertTrue("Translate " + source + " to " + expected + " (was " + translated + ")",
                 expected.equalsIgnoreCase(translated));
     }
+    
+    @Test
+    public void testSettersAndIsAvailable(){
+    	try{
+    		translator.setId("foo");
+    		translator.setSecret("bar");
+    	}
+    	catch(Exception e){
+    		e.printStackTrace();
+    		fail(e.getMessage());
+    	}
+    	//reset
+    	translator = new MicrosoftTranslator();
+    	try{
+    		translator.setSecret("bar");
+    		translator.setId("foo");
+    	}
+    	catch(Exception e){
+    		e.printStackTrace();
+    		fail(e.getMessage());
+    	}
+    }
 
 }