blob: 358150a025897e232fa608f62bf4f6c6ca5ae74b [file] [log] [blame]
/**
*
* Copyright (c) 2011, 2016 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* Christophe Loetz (Loetz GmbH&Co.KG) - initial implementation
*/
package org.eclipse.osbp.xtext.entitymock.common.filler.test;
import java.util.Locale;
import org.eclipse.osbp.xtext.entitymock.common.filler.FillerTextProvider;
import org.eclipse.osbp.xtext.entitymock.common.filler.FillerTextType;
/**
* Example generating some filler text ("Blindtext").<br>
* It's not possible to unit test it, because everytime new values will be generated!
*/
public class FillerTextExample {
private static void result(String variable, Object...values) {
System.out.format("%-50s >", variable);
for (Object value : values) {
System.out.print(" = "+value.toString());
}
System.out.println();
}
public static void main(String[] args) {
Locale [] locales = new Locale[] {
Locale.GERMAN,
Locale.ENGLISH,
Locale.forLanguageTag("pl")
};
// --- sample using the api in different ways ---
System.out.println("=== api examples ===");
{
FillerTextProvider provider = FillerTextProvider.get(Locale.GERMAN);
// --- it's possible to use either the generic {@link FillerTextProvider#generate()} or the specific methods ---
System.out.println("--- some date and time filler texts ---");
result("Date 'past 10 years' via enum", provider.generate(FillerTextType.DATE, -10));
result("Date 'past 10 years' via string", provider.generate("date", -10));
result("Date 'past 10 years' via string", provider.generate("DATE", -10));
result("Date 'past 10 years' via API", provider.date(-10));
result("Date 'future 5 years'", provider.generate("Date", 5));
result("Date 'between 1980 and 1990'", provider.date(1980, 1990));
result("Date 'between past 10 and future 20 years'", provider.date(-10, 20));
result("Time", provider.time());
result("Timestamp within this year", provider.timestamp());
System.out.println("--- some integer and double filler texts ---");
result("Unsigned Integer - default", (Integer)provider.unsignedinteger());
result("Unsigned Integer - maximum 365", (Integer)provider.unsignedinteger(365), (Integer)provider.generate("unsignedinteger", 365), (Integer)provider.generate(FillerTextType.UNSIGNEDINTEGER, 365));
result("Unsigned Integer - between 18 and 65", (Integer)provider.unsignedinteger(18, 65));
result("Signed Integer - default", (Integer)provider.signedinteger());
result("Signed Integer - range -365 to 365", (Integer)provider.signedinteger(365), (Integer)provider.generate("signedinteger", 365), (Integer)provider.generate(FillerTextType.SIGNEDINTEGER, 365));
result("Signed Integer - between -18 and 65", (Integer)provider.signedinteger(-18, 65), (Integer)provider.generate("signedinteger", -18, 65), (Integer)provider.generate(FillerTextType.SIGNEDINTEGER, -18, 65));
result("Unsigned Double - default", (Double)provider.unsigneddouble());
result("Unsigned Double - 3 decimals", (Double)provider.unsigneddouble(3));
result("Unsigned Double - 1 decimal, max 10", (Double)provider.unsigneddouble(1, 10.0), (Double)provider.generate("unsigneddouble", 1, 10.0), (Double)provider.generate(FillerTextType.UNSIGNEDDOUBLE, 1, 10.0));
result("Unsigned Double - 1 decimal, between 10 and 20", (Double)provider.unsigneddouble(1, 10.0, 20.0), (Double)provider.generate("unsigneddouble", 1, 10.0, 20.0), (Double)provider.generate(FillerTextType.UNSIGNEDDOUBLE, 1, 10.0, 20.0));
result("Unsigned Double - default", (Double)provider.signeddouble());
result("Unsigned Double - 3 decimals", (Double)provider.signeddouble(3));
result("Unsigned Double - 1 decimal, range -10 to 10", (Double)provider.signeddouble(1, 10.0), (Double)provider.generate("signeddouble", 1, 10.0), (Double)provider.generate(FillerTextType.SIGNEDDOUBLE, 1, 10.0));
result("Unsigned Double - 1 decimal, between -10 and 20", (Double)provider.signeddouble(1, -10.0, 20.0), (Double)provider.generate("signeddouble", 1, -10.0, 20.0), (Double)provider.generate(FillerTextType.SIGNEDDOUBLE, 1, -10.0, 20.0));
System.out.println("--- some text filler texts ---");
result("one word", provider.word());
result("5 words", provider.words(5));
result("one sentence", provider.sentence());
result("5 sentences", provider.sentences(5));
result("one paragraph", provider.paragraph());
result("5 paragraphs", provider.paragraphs(5));
// System.out.println("--- a example person filler text ---");
// result("First name", provider.firstName(), provider.generate("firstname"), provider.generate(FillerTextType.FIRSTNAME));
// result("Last name", provider.lastName(), provider.generate("lastName"), provider.generate(FillerTextType.LASTNAME));
// result("Full name", provider.fullName(), provider.generate("fullName"), provider.generate(FillerTextType.FULLNAME));
// result("Email", provider.email(), provider.generate("email"), provider.generate(FillerTextType.EMAIL));
// result("City", provider.city(), provider.generate("city"), provider.generate(FillerTextType.CITY));
// result("Postal code", provider.postalCode(), provider.generate("postalCode"), provider.generate(FillerTextType.POSTALCODE));
// System.out.println("--- THE SAME example person filler text ---");
// result("First name", provider.firstName());
// result("Last name", provider.generate(FillerTextType.LASTNAME));
// result("Full name", provider.generate("fullname"));
// result("Email", provider.email());
// result("City", provider.city());
// result("Postal code", provider.postalCode());
// System.out.println("--- another example person filler text because of calling provider.reset() ---");
// provider.reset();
// result("First name", provider.firstName());
// result("Last name", provider.generate(FillerTextType.LASTNAME));
// result("Full name", provider.generate("fullname"));
// result("Email", provider.email());
// result("City", provider.city());
// result("Postal code", provider.postalCode());
}
System.out.println("=== start ===");
// --- traverse all requested locales ---
for (Locale locale : locales) {
System.out.println("--- locale: "+locale.toString());
FillerTextProvider provider = FillerTextProvider.get(locale);
provider.reset();
// --- use every filler text type ---
for (FillerTextType type : FillerTextType.values()) {
result(type.toString(), provider.generate(type));
}
System.out.println();
}
System.out.println("=== done ===");
}
}