UserTestDataBuilder.java
2.12 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
package net.ziemers.swxercise.lg.testdatabuilder.user;
import net.ziemers.swxercise.lg.model.user.Address;
import net.ziemers.swxercise.lg.model.user.Profile;
import net.ziemers.swxercise.lg.model.user.User;
import net.ziemers.swxercise.lg.testdatabuilder.AbstractTestDataBuilder;
import javax.persistence.EntityManager;
/**
* Copyright (c) 2017 Dipl.-Inform. Thomas Ziemer
*
* This file is part of swXercise.
*
* swXercise is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3
* of the License, or (at your option) any later version.
*
* swXercise is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
* even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with swXercise.
* If not, see <http://www.gnu.org/licenses/>.
*/
public class UserTestDataBuilder extends AbstractTestDataBuilder<User> {
private String firstname = "Hein";
private String lastname = "Blöd";
private Profile profile;
private Address address = null;
public UserTestDataBuilder(final EntityManager em) {
super(em);
profile = new ProfileTestDataBuilder(em).build();
}
public UserTestDataBuilder() {
this(null);
}
@Override
public User build() {
return new User(firstname, lastname)
.withProfile(profile)
.withAddress(address);
}
public UserTestDataBuilder withFirstname(final String firstname) {
this.firstname = firstname;
return this;
}
public UserTestDataBuilder withLastname(final String lastname) {
this.lastname = lastname;
return this;
}
public UserTestDataBuilder withProfile(final Profile profile) {
this.profile = profile;
return this;
}
public UserTestDataBuilder withAddress(final Address address) {
this.address = address;
return this;
}
}