Skip to content

Commit 6adc5aa

Browse files
authored
Merge pull request #30 from blocoio/fix-ru-locale
Fix RU locale
2 parents 033016d + 74c4c1e commit 6adc5aa

File tree

8 files changed

+63
-36
lines changed

8 files changed

+63
-36
lines changed

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ dependencies {
2626
}
2727

2828
group = "io.bloco"
29-
version = "2.0.2"
29+
version = "2.0.3"
3030

3131
java {
3232
withSourcesJar()

src/main/kotlin/io/bloco/faker/FakerComponent.kt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,9 @@ abstract class FakerComponent(private val data: FakerData) {
7575
private fun callMethod(methodKey: String): String {
7676
val methodKeyCamel: String = methodKey.snakeToCamel()
7777
return try {
78-
javaClass.getDeclaredMethod(methodKeyCamel).invoke(this) as String
78+
javaClass.getDeclaredMethod(methodKeyCamel)
79+
.also { it.isAccessible = true }
80+
.invoke(this) as String
7981
} catch (e: NoSuchMethodException) {
8082
throw IllegalArgumentException("Unsupported method '$methodKey' for component '$key'", e)
8183
} catch (e: IllegalAccessException) {

src/main/kotlin/io/bloco/faker/components/Address.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,10 @@ class Address(data: FakerData) : FakerComponent(data) {
5252
return parse(fetch("address.city"))
5353
}
5454

55+
private fun cityName(): String {
56+
return parse("address.city_name")
57+
}
58+
5559
fun streetName(): String {
5660
return parse(fetch("address.street_name"))
5761
}

src/main/kotlin/io/bloco/faker/components/Company.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@ class Company(data: FakerData) : FakerComponent(data) {
99
return parse(fetch("company.name"))
1010
}
1111

12+
private fun prefix(): String {
13+
return fetch("company.prefix")
14+
}
15+
1216
fun suffix(): String {
1317
return fetch("company.suffix")
1418
}

src/main/kotlin/io/bloco/faker/components/Name.kt

Lines changed: 25 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -4,40 +4,31 @@ import io.bloco.faker.FakerComponent
44
import io.bloco.faker.FakerData
55

66
class Name(data: FakerData) : FakerComponent(data) {
7-
fun firstName(): String {
8-
return fetch("name.first_name")
9-
}
10-
11-
fun lastName(): String {
12-
return fetch("name.last_name")
13-
}
14-
15-
fun prefix(): String {
16-
return fetch("name.prefix")
17-
}
18-
19-
fun suffix(): String {
20-
return fetch("name.suffix")
21-
}
22-
23-
fun title(): String {
24-
return (
25-
fetch("name.title.descriptor") +
26-
" " + fetch("name.title.level") +
27-
" " + fetch("name.title.job")
28-
)
29-
}
30-
31-
fun name(): String {
32-
return parse(fetch("name.name"))
33-
}
34-
35-
fun nameWithMiddle(): String {
36-
return parse(fetch("name.name_with_middle"))
37-
}
7+
8+
fun firstName(): String = fetch("name.first_name")
9+
10+
fun lastName(): String = fetch("name.last_name")
11+
12+
private fun maleFirstName(): String = fetch("name.male_first_name")
13+
private fun femaleFirstName(): String = fetch("name.female_first_name")
14+
private fun maleMiddleName(): String = fetch("name.male_middle_name")
15+
private fun femaleMiddleName(): String = fetch("name.female_middle_name")
16+
private fun maleLastName(): String = fetch("name.male_last_name")
17+
private fun femaleLastName(): String = fetch("name.female_last_name")
18+
19+
fun prefix(): String = fetch("name.prefix")
20+
21+
fun suffix(): String = fetch("name.suffix")
22+
23+
fun title(): String =
24+
fetch("name.title.descriptor") +
25+
" " + fetch("name.title.level") +
26+
" " + fetch("name.title.job")
27+
28+
fun name(): String = parse(fetch("name.name"))
29+
30+
fun nameWithMiddle(): String = parse(fetch("name.name_with_middle"))
3831

3932
@Suppress("UNCHECKED_CAST")
40-
fun jobTitles(): List<String> {
41-
return getMap("name", "title")["job"] as List<String>
42-
}
33+
fun jobTitles(): List<String> = getMap("name", "title")["job"] as List<String>
4334
}

src/test/kotlin/io/bloco/faker/components/AddressTest.kt

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,16 @@ class AddressTest {
6767
assertNotNull(faker.address.city())
6868
}
6969

70+
@Test
71+
fun city_pt() {
72+
assertNotNull(Faker("pt").address.city())
73+
}
74+
75+
@Test
76+
fun city_ru() {
77+
assertNotNull(Faker("ru").address.city())
78+
}
79+
7080
@Test
7181
fun streetName() {
7282
assertNotNull(faker.address.streetName())

src/test/kotlin/io/bloco/faker/components/CompanyTest.kt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package io.bloco.faker.components
22

33
import io.bloco.faker.Faker
44
import junit.framework.TestCase
5+
import junit.framework.TestCase.assertFalse
56
import junit.framework.TestCase.assertNotNull
67
import org.junit.Test
78

@@ -13,6 +14,13 @@ class CompanyTest {
1314
assertNotNull(faker.company.name())
1415
}
1516

17+
@Test
18+
fun name_ru() {
19+
val name = Faker("ru").company.name()
20+
assertNotNull(name)
21+
assertFalse(name.contains("#"))
22+
}
23+
1624
@Test
1725
fun suffix() {
1826
assertNotNull(faker.company.suffix())

src/test/kotlin/io/bloco/faker/components/NameTest.kt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package io.bloco.faker.components
22

33
import io.bloco.faker.Faker
4+
import junit.framework.TestCase.assertFalse
45
import junit.framework.TestCase.assertNotNull
56
import junit.framework.TestCase.assertTrue
67
import org.junit.Test
@@ -38,6 +39,13 @@ class NameTest {
3839
assertNotNull(faker.name.name())
3940
}
4041

42+
@Test
43+
fun name_ru() {
44+
val name = Faker("ru").name.name()
45+
assertNotNull(name)
46+
assertFalse(name.contains("#"))
47+
}
48+
4149
@Test
4250
fun nameWithMiddle() {
4351
assertNotNull(faker.name.nameWithMiddle())

0 commit comments

Comments
 (0)