diff --git a/source/net/filebot/web/TMDbClient.java b/source/net/filebot/web/TMDbClient.java index 374a51ae..f43e3c62 100644 --- a/source/net/filebot/web/TMDbClient.java +++ b/source/net/filebot/web/TMDbClient.java @@ -390,7 +390,10 @@ public class TMDbClient implements MovieIdentificationService, ArtworkProvider { // require 2-letter language code String language = locale.getLanguage(); if (language.length() == 2) { - return language; + if (locale.getCountry().length() == 2) { + return locale.getLanguage() + '-' + locale.getCountry(); // e.g. es-MX + } + return locale.getLanguage(); // e.g. en } Language lang = Language.getLanguage(locale); diff --git a/test/net/filebot/web/TMDbClientTest.java b/test/net/filebot/web/TMDbClientTest.java index f638b45b..ab7f6e17 100644 --- a/test/net/filebot/web/TMDbClientTest.java +++ b/test/net/filebot/web/TMDbClientTest.java @@ -57,7 +57,7 @@ public class TMDbClientTest { } @Test - public void searchByNameGermanResults() throws Exception { + public void searchByNameGerman() throws Exception { List result = db.searchMovie("East of Eden", Locale.GERMAN); Movie movie = result.get(0); @@ -66,6 +66,17 @@ public class TMDbClientTest { assertEquals(Arrays.asList("Jenseits von Eden (1955)", "East of Eden (1955)"), movie.getEffectiveNames()); } + @Test + public void searchByNameMexican() throws Exception { + List result = db.searchMovie("Suicide Squad", new Locale("es", "MX")); + Movie movie = result.get(0); + + assertEquals("Escuadrón suicida", movie.getName()); + assertEquals(2016, movie.getYear()); + assertEquals(-1, movie.getImdbId()); + assertEquals(297761, movie.getTmdbId()); + } + @Test public void searchByIMDB() throws Exception { Movie movie = db.getMovieDescriptor(new Movie(418279), Locale.ENGLISH); @@ -92,15 +103,14 @@ public class TMDbClientTest { public void getAlternativeTitles() throws Exception { Map> titles = db.getAlternativeTitles(16320); // Serenity - assertEquals("[衝出寧靜號]", titles.get("TW").toString()); - assertEquals("[萤火虫, 宁静号]", titles.get("CN").toString()); + assertEquals("[宁静号]", titles.get("HK").toString()); } @Test public void getArtwork() throws Exception { Artwork a = db.getArtwork(16320, "backdrops", Locale.ROOT).get(0); assertEquals("[backdrops, 1920x1080]", a.getTags().toString()); - assertEquals("https://image.tmdb.org/t/p/original/424MxHQe5Hfu92hTeRvZb5Giv0X.jpg", a.getUrl().toString()); + assertEquals("http://image.tmdb.org/t/p/original/mQPg3iZyztfzFNwrW40nCUtXy2l.jpg", a.getUrl().toString()); } @Test