mirror of
https://gitlab.com/restcountries/restcountries.git
synced 2026-03-31 15:07:46 +01:00
Merge branch 'feature/v4' into 'master'
Adding implementation for alt images See merge request amatos/rest-countries!58
This commit is contained in:
@@ -1,15 +1,11 @@
|
||||
package dev.amatos.restcountries.controller;
|
||||
|
||||
import static dev.amatos.restcountries.utils.Constants.CACHE_CONTROL_VALUE;
|
||||
import static io.micronaut.http.HttpHeaders.CACHE_CONTROL;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
import com.google.gson.JsonArray;
|
||||
import com.google.gson.JsonObject;
|
||||
import com.google.gson.JsonParser;
|
||||
import dev.amatos.restcountries.domain.ICountryRestSymbols;
|
||||
import dev.amatos.restcountries.domain.base.BaseCountry;
|
||||
import io.micronaut.http.HttpResponse;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
@@ -122,6 +118,7 @@ public class ControllerV3Helper {
|
||||
"coatOfArms",
|
||||
"startOfWeek",
|
||||
"capitalInfo",
|
||||
"postalCode"
|
||||
"postalCode",
|
||||
"capital"
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package dev.amatos.restcountries.domain.base;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public class Name {
|
||||
@@ -7,6 +8,8 @@ public class Name {
|
||||
private String official;
|
||||
private Map<String, NativeName> nativeName;
|
||||
|
||||
private List<String> altSpellings;
|
||||
|
||||
public String getCommon() {
|
||||
return common;
|
||||
}
|
||||
@@ -31,4 +34,12 @@ public class Name {
|
||||
Map<String, NativeName> nativeName) {
|
||||
this.nativeName = nativeName;
|
||||
}
|
||||
|
||||
public List<String> getAltSpellings() {
|
||||
return altSpellings;
|
||||
}
|
||||
|
||||
public void setAltSpellings(List<String> altSpellings) {
|
||||
this.altSpellings = altSpellings;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@ package dev.amatos.restcountries.domain.v3.v31;
|
||||
public class Flag {
|
||||
private String png;
|
||||
private String svg;
|
||||
private String alt;
|
||||
|
||||
public String getPng() {
|
||||
return png;
|
||||
@@ -19,4 +20,12 @@ public class Flag {
|
||||
public void setSvg(String svg) {
|
||||
this.svg = svg;
|
||||
}
|
||||
|
||||
public String getAlt() {
|
||||
return alt;
|
||||
}
|
||||
|
||||
public void setAlt(String alt) {
|
||||
this.alt = alt;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8015,7 +8015,7 @@
|
||||
{
|
||||
"iso639_1": "kl",
|
||||
"iso639_2": "kal",
|
||||
"name": "Kalaallisut",
|
||||
"name": "Greenlandic",
|
||||
"nativeName": "kalaallisut"
|
||||
}
|
||||
],
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -19,9 +19,8 @@ class RestCountriesV31Test {
|
||||
void getByAlpha() {
|
||||
var countries = CountryServiceV31.getInstance().getByAlpha("CO");
|
||||
Assertions.assertFalse(countries.isEmpty());
|
||||
countries.forEach(country -> {
|
||||
Assertions.assertEquals("CO", country.getCca2());
|
||||
});
|
||||
Assertions.assertEquals("Colombia",
|
||||
countries.stream().findFirst().map(country -> country.getName().getCommon()).orElseThrow());
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -34,9 +33,8 @@ class RestCountriesV31Test {
|
||||
void getCountryByName() {
|
||||
var countries = CountryServiceV31.getInstance().getByName("Peru", false);
|
||||
Assertions.assertFalse(countries.isEmpty());
|
||||
countries.forEach(country -> {
|
||||
Assertions.assertEquals("Peru", country.getName().getCommon());
|
||||
});
|
||||
Assertions.assertEquals("Peru",
|
||||
countries.stream().findFirst().map(country -> country.getName().getCommon()).orElseThrow());
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -45,12 +43,12 @@ class RestCountriesV31Test {
|
||||
Assertions.assertNotNull(countries);
|
||||
Assertions.assertFalse(countries.isEmpty());
|
||||
Assertions.assertEquals(3, countries.size());
|
||||
|
||||
for (var country : countries) {
|
||||
Assertions.assertTrue(
|
||||
country.getCca2().equals("PE") || country.getCca2().equals("NL") || country.getCca2()
|
||||
.equals("DE"));
|
||||
}
|
||||
var result = countries.stream().allMatch(country ->
|
||||
country.getName().getCommon().contains("Peru") ||
|
||||
country.getName().getCommon().contains("Netherlands") ||
|
||||
country.getName().getCommon().contains("German")
|
||||
);
|
||||
Assertions.assertTrue(result);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -65,21 +63,20 @@ class RestCountriesV31Test {
|
||||
@Test
|
||||
void getByCapital() {
|
||||
var countries = CountryServiceV31.getInstance().getByCapital("Helsinki");
|
||||
var result = countries.stream()
|
||||
.anyMatch(country -> country.getName().getCommon().equalsIgnoreCase("Finland"));
|
||||
Assertions.assertTrue(result);
|
||||
Assertions.assertEquals(1, countries.size());
|
||||
Assertions.assertEquals("Finland", countries.stream().findFirst().get().getName().getCommon());
|
||||
Assertions.assertEquals("Finland",
|
||||
countries.stream().findFirst().map(country -> country.getName().getCommon()).orElseThrow());
|
||||
}
|
||||
|
||||
@Test
|
||||
void getByRegion() {
|
||||
var countries = CountryServiceV31.getInstance().getByRegion("Asia");
|
||||
Assertions.assertFalse(countries.isEmpty());
|
||||
var result = false;
|
||||
for (var country : countries) {
|
||||
if (country.getName().getCommon().equalsIgnoreCase("Bangladesh")) {
|
||||
result = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
var result = countries.stream()
|
||||
.anyMatch(country -> country.getName().getCommon().equalsIgnoreCase("Bangladesh"));
|
||||
Assertions.assertTrue(result);
|
||||
}
|
||||
|
||||
@@ -87,13 +84,8 @@ class RestCountriesV31Test {
|
||||
void getBySubregion() {
|
||||
var countries = CountryServiceV31.getInstance().getBySubregion("Middle Africa");
|
||||
Assertions.assertFalse(countries.isEmpty());
|
||||
var result = false;
|
||||
for (var country : countries) {
|
||||
if (country.getName().getCommon().equalsIgnoreCase("Gabon")) {
|
||||
result = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
var result = countries.stream()
|
||||
.anyMatch(country -> country.getName().getCommon().equalsIgnoreCase("Gabon"));
|
||||
Assertions.assertTrue(result);
|
||||
}
|
||||
|
||||
@@ -101,13 +93,8 @@ class RestCountriesV31Test {
|
||||
void getByLanguage() {
|
||||
var countries = CountryServiceV31.getInstance().getByLanguage("german");
|
||||
Assertions.assertFalse(countries.isEmpty());
|
||||
var result = false;
|
||||
for (var country : countries) {
|
||||
if (country.getName().getCommon().equalsIgnoreCase("Liechtenstein")) {
|
||||
result = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
var result = countries.stream()
|
||||
.anyMatch(country -> country.getName().getCommon().equalsIgnoreCase("Liechtenstein"));
|
||||
Assertions.assertTrue(result);
|
||||
}
|
||||
|
||||
@@ -116,12 +103,8 @@ class RestCountriesV31Test {
|
||||
var countries = CountryServiceV31.getInstance().getByDemonym("chilean");
|
||||
Assertions.assertFalse(countries.isEmpty());
|
||||
var result = false;
|
||||
for (var country : countries) {
|
||||
if (country.getName().getCommon().equalsIgnoreCase("Chile")) {
|
||||
result = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
result = countries.stream()
|
||||
.anyMatch(country -> country.getName().getCommon().equalsIgnoreCase("Chile"));
|
||||
Assertions.assertTrue(result);
|
||||
}
|
||||
|
||||
@@ -138,12 +121,9 @@ class RestCountriesV31Test {
|
||||
var countries = CountryServiceV31.getInstance().getAll();
|
||||
var result = true;
|
||||
try {
|
||||
for (var country : countries) {
|
||||
if (null == country.getFlags().getPng() || null == country.getFlags().getSvg()) {
|
||||
result = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
result = countries.stream().noneMatch(
|
||||
country -> null == country.getFlags().getPng() || null == country.getFlags().getSvg()
|
||||
|| null == country.getFlags().getAlt());
|
||||
} catch (
|
||||
Exception ex) {
|
||||
Assertions.fail();
|
||||
@@ -156,12 +136,9 @@ class RestCountriesV31Test {
|
||||
var countries = CountryServiceV31.getInstance().getAll();
|
||||
var result = true;
|
||||
try {
|
||||
for (var country : countries) {
|
||||
if (null == country.getCoatOfArms().getPng() || null == country.getCoatOfArms().getSvg()) {
|
||||
result = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
result = countries.stream().noneMatch(
|
||||
country -> null == country.getCoatOfArms().getPng() || null == country.getCoatOfArms()
|
||||
.getSvg());
|
||||
} catch (
|
||||
Exception ex) {
|
||||
Assertions.fail();
|
||||
|
||||
Reference in New Issue
Block a user