Releases: six2six/fixture-factory
Releases · six2six/fixture-factory
Fixture-Factory 3.0.0
Features
has
andgimme
functions now supports multiple templates
Fixture.from(User.class).gimme(2, "male", "female");
Fixture.of(User.class).addTemplate("valid", new Rule() {{
add("addresses", has(2).of(Address.class, "sp", "mg"));
}});
- adding
asString
toinstant
function #58
add("birthdayAsString", instant("18 years ago").asString("dd/MM/yyyy"));
uniqueRandom
function to generate unique values #70- CNPJ function #55
add("cnpj", cnpj());
Bugfixes
- Fixing
range
function withBigDecimal
type #69 - Fixing fixtures for inner classes with construtors in Java 8 935214c
- Fixing overriding nested attribute in
gimme
call #73 - And others...
Others
- Little improvements in documentation
- Functions' package was refactored, this will break people that are importing those functions
Fixture-Factory 2.2.0
Features
- Fixtures can now define
Processors
that will run after object instantiation. We already provide aHibernateProcessor
to load generated fixtures into database, making easy to create integration tests
Fixture.from(User.class).uses(new HibernateProcessor(session)).gimme("valid"); //this will generate new User based on valid template and insert it to database through Hibernate
- Now we have
TemplateLoader
interface that should be used to declare or templates.
public class UserTemplateLoader implements TemplateLoader {
@Override
public void load() {
Fixture.of(User.class).addTemplate("valid", new Rule() {{
add("name", random("Nykolas", "Anderson", "Arthur"));
...
}});
}
}
And to load declared templates, we have the new class FixtureFactoryLoader
that loads all templates in declared package
FixtureFactoryLoader.loadTemplates("br.com.six2six.template");
- New
random
function toBigDecimal
andBigInteger
add("ammount", random(BigDecimal.class, new MathContext(2)));
- Support to override properties definitions on
gimme
call #41
Client client = Fixture.from(User.class).gimme("valid", new Rule() {{
add("name", "New name only for this client");
}});