Advertisement
Guest User

Untitled

a guest
Jan 25th, 2018
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.16 KB | None | 0 0
  1. package com.rb.tests.utils;
  2.  
  3. import java.util.Calendar;
  4. import java.util.GregorianCalendar;
  5. import java.util.Random;
  6.  
  7. import com.rb.test.selenium.webdriver.Converter;
  8. import com.rb.test.selenium.webdriver.Converter.Option;
  9.  
  10. public class RandomGenerator {
  11.  
  12.     private static Random random = new Random();
  13.  
  14.     public enum InputType {
  15.         CAPITAL_LETTERS, SMALL_LETTERS, NUMBERS, LONG_DESCRIPTIONS, SHORT_DESCRIPTIONS, IDENTIFIERS, NAME, STRAPLINE, CODE_FISCALE
  16.     }
  17.  
  18.     public static int randomInt(int min, int max) {
  19.         int randomInt = 0;
  20.         randomInt = min + (int) Math.round(Math.random() * (max - min));
  21.         return randomInt;
  22.     }
  23.  
  24.     public static String randomName(int length) {
  25.         return RandomGenerator.randomInput(RandomGenerator.InputType.CAPITAL_LETTERS, 1) + RandomGenerator
  26.                 .randomInput(RandomGenerator.InputType.SMALL_LETTERS, RandomGenerator.randomInt(1, length - 1));
  27.     }
  28.  
  29.     public static String randomEmail() {
  30.         return "success+" + RandomGenerator.randomInput(RandomGenerator.InputType.SMALL_LETTERS, 5)
  31.                 + RandomGenerator.randomInput(RandomGenerator.InputType.NUMBERS, 10) + "@simulator.amazonses.com";
  32.     }
  33.  
  34.     public static String randomPhone(String areaCode, int length) {
  35.         return areaCode + RandomGenerator.randomInput(InputType.NUMBERS, length);
  36.     }
  37.  
  38.     public static boolean randomBoolean() {
  39.         return random.nextBoolean();
  40.     }
  41.  
  42.     public static String randomInput(InputType inputType, int lenght) {
  43.         String result = "";
  44.         char[] chars = "".toCharArray();
  45.         if (inputType.equals(InputType.CAPITAL_LETTERS)) {
  46.             chars = "QWERTYUIOPASDFGHJKLZXCVBNM".toCharArray();
  47.         } else if (inputType.equals(InputType.SMALL_LETTERS)) {
  48.             chars = "qwertyuiopasdfghjklzxcvbnm".toCharArray();
  49.         } else if (inputType.equals(InputType.NUMBERS)) {
  50.             chars = "123456789".toCharArray();
  51.         } else if (inputType.equals(InputType.LONG_DESCRIPTIONS)) {
  52.             chars = "123456789QWERTYUIOPLKJHGFDSAZXCVBNMqwertyuioplkjhgfdsazxcvbnm ,.?!%\n".toCharArray();
  53.         } else if (inputType.equals(InputType.SHORT_DESCRIPTIONS)) {
  54.             chars = "123456789QWERTYUIOPLKJHGFDSAZXCVBNMqwertyuioplkjhgfdsazxcvbnm ,.?!%".toCharArray();
  55.         } else if (inputType.equals(InputType.IDENTIFIERS)) {
  56.             chars = "123456789QWERTYUIOPLKJHGFDSAZXCVBNM ,".toCharArray();
  57.         } else if (inputType.equals(InputType.NAME)) {
  58.             chars = "123456789QWERTYUIOPLKJHGFDSAZXCVBNM ".toCharArray();
  59.         } else if (inputType.equals(InputType.STRAPLINE)) {
  60.             chars = "1234567890QWERTYUIOPLKJHGFDSAZXCVBNMqwertyuiopasdfghjklzxcvbnm ".toCharArray();
  61.         } else if (inputType.equals(InputType.CODE_FISCALE)) {
  62.             chars = "1234567890QWERTYUIOPLKJHGFDSAZXCVBNM".toCharArray();
  63.         } else {
  64.             chars = "QWERTYUIOPASDFGHJKLZXCVBNM".toCharArray();
  65.         }
  66.         StringBuilder sb = new StringBuilder();
  67.         Random random = new Random();
  68.         for (int i = 0; i < lenght; i++) {
  69.             char c = chars[random.nextInt(chars.length)];
  70.             sb.append(c);
  71.         }
  72.         result = sb.toString();
  73.         result = Converter.getText(result, Option.NO_WHITE_SPACE_ON_BEGIN_AND_END);
  74.         return result;
  75.     }
  76.  
  77.     public static long nextLong(long n) {
  78.         if (n <= 0) {
  79.             throw new IllegalArgumentException("Bound must be positive");
  80.         }
  81.         long bits, val;
  82.         do {
  83.             long randomLong = random.nextLong();
  84.             bits = (randomLong << 1) >>> 1;
  85.             val = bits % n;
  86.         } while (bits - val + (n - 1) < 0L);
  87.         return val;
  88.     }
  89.  
  90.     public static int nextInt(int value) {
  91.         return random.nextInt(value);
  92.     }
  93.  
  94.     public static long nextLong() {
  95.         return random.nextLong();
  96.     }
  97.  
  98.     public static double nextDouble() {
  99.         return random.nextDouble();
  100.     }
  101.  
  102.     public static String randomBirthDate() {
  103.         int year = randomInt(1940, 2000);
  104.         int month = randomInt(1, 12);
  105.         GregorianCalendar gc = new GregorianCalendar(year, month - 1, 1);
  106.         int day = randomInt(1, gc.getActualMaximum(Calendar.DAY_OF_MONTH));
  107.         return year + "-" + month + "-" + day;
  108.     }
  109.  
  110.     public static int randomFutureYear(int maxFutureYear) {
  111.         GregorianCalendar gc = new GregorianCalendar();
  112.         if (maxFutureYear > gc.get(GregorianCalendar.YEAR)) {
  113.             return randomInt(gc.get(GregorianCalendar.YEAR) + 1, maxFutureYear);
  114.         } else {
  115.             return gc.get(GregorianCalendar.YEAR) + 1;
  116.         }
  117.     }
  118.  
  119.     public static int randomMonth() {
  120.         return randomInt(1, 12);
  121.     }
  122.  
  123. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement