Moved the code from groovy to Java o avoid bizarre error

This commit is contained in:
Marcin Grzejszczak
2017-06-22 13:45:29 +02:00
parent bd9338e494
commit 33413084cb
3 changed files with 24 additions and 15 deletions

View File

@@ -9,6 +9,7 @@ buildscript {
}
// end::repos[]
dependencies {
classpath 'org.codehaus.groovy:groovy-all:2.5.0-beta-1'
classpath "org.springframework.boot:spring-boot-gradle-plugin:2.0.0.BUILD-SNAPSHOT"
classpath "org.springframework.cloud:spring-cloud-contract-gradle-plugin:${findProperty('verifierVersion') ?: verifierVersion}"
}

View File

@@ -36,7 +36,8 @@ abstract class PatternValueDslProperty<T extends DslProperty> {
protected abstract T createProperty(Pattern pattern, Object generatedValue)
T anyAlphaUnicode() {
return createAndValidateProperty(RegexPatterns.ONLY_ALPHA_UNICODE, randomString(20))
return createAndValidateProperty(RegexPatterns.ONLY_ALPHA_UNICODE,
RandomStringGenerator.randomString(20))
}
T anyNumber() {
@@ -88,26 +89,16 @@ abstract class PatternValueDslProperty<T extends DslProperty> {
}
T anyNonBlankString() {
return createAndValidateProperty(RegexPatterns.NON_BLANK, randomString(20))
return createAndValidateProperty(RegexPatterns.NON_BLANK,
RandomStringGenerator.randomString(20))
}
T anyNonEmptyString() {
return createAndValidateProperty(RegexPatterns.NON_EMPTY, randomString(20))
return createAndValidateProperty(RegexPatterns.NON_EMPTY,
RandomStringGenerator.randomString(20))
}
T anyOf(String... values){
return createAndValidateProperty(RegexPatterns.anyOf(values), values[0])
}
private static String randomString(int length) {
char[] characterSet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ".toCharArray()
Random random = new Random()
char[] result = new char[length]
for (int i = 0; i < result.length; i++) {
// picks a random index out of character set > random character
int randomCharIndex = random.nextInt(characterSet.length)
result[i] = characterSet[randomCharIndex]
}
return new String(result)
}
}

View File

@@ -0,0 +1,17 @@
package org.springframework.cloud.contract.spec.internal;
import java.util.Random;
class RandomStringGenerator {
static String randomString(int length) {
char[] characterSet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ".toCharArray();
Random random = new Random();
char[] result = new char[length];
for (int i = 0; i < result.length; i++) {
// picks a random index out of character set > random character
int randomCharIndex = random.nextInt(characterSet.length);
result[i] = characterSet[randomCharIndex];
}
return new String(result);
}
}