Easy Random Versions Save

The simple, stupid random Java beans/records generator

random-beans-parent-3.5.0

7 years ago

This is a minor release with the following changes:

Features

  • issue #216 : Support customization for internal randomizers
  • issue #225 : add collectionSizeRange parameter
  • issue #227 : add stringLengthRange parameter

Fixed bugs

  • issue #229 : Unable to configure maxObjectPoolSize parameter in EnhancedRandomFactoryBean
  • issue #230 : Unable to configure maxRandomizationDepth parameter in EnhancedRandomFactoryBean
  • issue #223: StringRandomizer never returns Strings of maxStringLength

Enhancements and APIs changes

  • issue #231 : rename maxObjectPoolSize to objectPoolSize
  • issue #232 : rename maxRandomizationDepth to randomizationDepth
  • issue #221 : improve error message when unable to randomize a bean
  • issue #220 : EnhancedRandomImpl.getRandomCollectionSize never returns maxCollectionSize

API deprecations

  • The minCollectionSize and maxCollectionSize parameters have been deprecated in favour of collectionSizeRange
  • The minStringLength and maxStringLength parameters have been deprecated in favour of stringLengthRange

Many thanks to @enedzvetsky, @dermoritz and @kermit-the-frog for testing and reporting issues. A big thank to @PascalSchumacher for his active contributions to random beans!

random-beans-parent-3.4.0

7 years ago

This is a minor release with new features and bug fixes. A special thank to @PascalSchumacher and @sansherbina for their contributions to this release!

Here is the complete change log:

New Features

  • issue #212: Add field exclusion by modifiers
  • issue #210: Add maxRandomizationDepth parameter

Bug fixes

  • issue #208: ClassCastException on wildcard generics in collections
  • issue #211: MapPopulator doesn't support java.util.EnumMap
  • issue #213: Exception when randomizing TreeMap, ConcurrentHashMap, ConcurrentSkipListMap

random-beans-parent-3.3.0

7 years ago

A special thank to @PascalSchumacher for his amazing contributions to Random Beans! Many thanks to other contributors (@alimohebbi , @MarvinWyrich, @vanhove, @mikemaaaa, @oyxiaogua, @pmaciocia, @rodriguealcazar) for reporting bugs, requesting features and reviewing code. Open source community is really wonderful 😄

v3.3 is a minor release with new features, bug fixes and enhancements. It can be used as a drop-in replacement of v3.2 . Here is the complete change log:

New features

  • issue #177 : add method to create EnhancedRandom instances with default parameters
  • issue #182 : add maxObjectPoolSize parameter
  • issue #192 : add minStringLength parameter
  • issue #197 : add minCollectionSize parameter

Enhancements

  • issue #201 : allow generation of empty collections

Fixed Bugs

  • issue #184 : Enum values are not randomized
  • issue #189 : Abstract enums are not initialized
  • issue #191 : maxCollectionSize parameter is not used for arrays
  • issue #199 : MapRandomizer sometimes fails because "random number of entries = 0"
  • issue #204 : fields of direct abstract superclass are not populated

random-beans-parent-3.2.0

7 years ago

New features

  • issue #151: Add method to exclude fields by type EnhancedRandomBuilder#exclude(Class... types)
  • issue #156: Add possibility to exclude field annotated with a custom annotation
  • issue #160: FieldDefinition should be more flexible
  • issue #162: Add support for @Pattern to generate random strings that match a regex
  • issue #166: add overrideDefaultInitialization parameter
  • issue #172: add ZonedDateTimeRangeRandomizer

API changes and improvements

  • issue #171: Deprecated constructors JodaTimeDateTimeRangeRandomizer(Date min, Date max, long seed), JodaTimeLocalDateRangeRandomizer(Date min, Date max, long seed) and JodaTimeLocalDateTimeRangeRandomizer(Date min, Date max, long seed)

Fixed Bugs

  • issue #153: Exception when randomizing collection with type variable generics
  • issue #169: Default field initialization should not be overridden
  • issue #171: Joda time range randomizers must take Joda time types as parameters (not java.util.Date)
  • issue #175: Unable to register parameters through Spring factory bean

random-beans-parent-3.1.0

7 years ago

This new release brings new features, improvements and bug fixes. Many thanks to all contributors for suggesting ideas, testing snapshot versions and filing bugs!

New features

  • issue #136: add maxCollectionSize parameter
  • issue #140: add maxStringLength parameter
  • issue #141: add charset parameter
  • issue #142: add dateRange parameter
  • issue #144: add timeRange parameter

API changes and improvements

  • issue #134:
    • Deprecate method random(Class, int, String...) in EnhancedRandom
    • Add method randomStreamOf(Class, int, String...) in EnhancedRandom
    • Add method randomListOf(Class, int, String...) in EnhancedRandom
    • Add method randomSetOf(Class, int, String...) in EnhancedRandom
    • Add method randomCollectionOf(Class, int, String...) in EnhancedRandom
  • issue #130: add @RandomizerArgument annotation

Fixed Bugs

  • issue #131: InstantiationException when providing a randomizer without default constructor in @Randomizer
  • issue #135: Unable to exclude java.time.Instant from being randomized
  • issue #145: StringRandomizer should generate strings with random length

random-beans-parent-3.0.0

7 years ago

A special thanks to @PascalSchumacher for his amazing contributions to this release! Pascal has added features, fixed bugs and tremendously improved the code quality. This guy is awesome 👍 Many thanks to all others contributors who reported bugs, requested features and tested snapshot versions.

Major Changes

  • Random Beans now requires a Java 1.8+ runtime.
  • Module random-beans-java8 has been merged into the core module random-beans (#88)

New features

#28: add ability to use Java 8 Supplier as randomizer #41: add support for Java 8 Date and Time API (JSR 310) types #118: Allow more controll over generated values #102: Added more randomizers: LocaleRandomizer, UUIDRandomizer, GregorianCalendarRandomizer, TimeZoneRandomizer, RegularExpressionRandomizer #124: Integrate Lombok to reduce boilerplate code

API changes and improvements

#78: Make the constructor of EnhancedRandomBuilder public #82: Add support to register a Randomizer for a given type #112: Add Spring support to register a custom randomizer for a given type #116: Add static factory method to generate random beans with default configuration parameters #117: rename nextObjects method into objects to conform with the standard java.util.Random API naming pattern #120: Merge StringLengthRandomizer and StringRandomizer #110: Merge NameRandomizer and FullNameRandomzier

Fixed Bugs

#84: "Pre-initialized" Bean Fields are nulled #86: Exception if java-faker does not support default locale #113: Empty first Collection when no seed is provided #121 User defined Collection/Map types are not populated

random-beans-parent-2.0.0

8 years ago

Major changes

  • The project has been renamed from jPopulator to Random Beans
  • The Populator interface has been renamed to EnhancedRandom
  • The PopulatorBuilder class has been renamed to EnhancedRandomBuilder
  • The Populator.populateBean(Class type) method has been renamed to EnhancedRandom.nextObject(Class type)
  • Java 7 is the minimum Java version required for v2.x line

Features

  • issue #19: Add support to populate arrays and collection types
  • issue #24: Add support to exclude subfields using the dotted notation
  • issue #25: Add support to populate immutable objects
  • issue #30: Add random seed parameter
  • issue #32: Add the RandomizerRegistry API as a SPI to register custom randomizers
  • issue #33: Add support for recursive data structures
  • issue #36: Add support to register randomizers using the @Randomizer annotation
  • issue #59: Add support to scan the classpath for concrete types when the field is an abstract or interface type
  • issue #61: Add support to skip fields using the SkipRandomizer API

Bug fixes

  • issue #37: Fix incorrect error message in MapRandomizer
  • issue #44: Fix StackOverflowError when a field is of the same type as declaring class (infinite recursion)
  • issue #56: Fix regression of #1 , Random Beans should not try to populate static final fields

Enhancements

  • issue #39: Throw an ObjectGenerationException when unable to randomize a field instead of silently ignoring it
  • issue #26: Modularisation of the code base
  • issues #45 #48 #52: Several test improvements