]> git.somenet.org - pub/jan/dst18.git/blob - ass1-jpa/src/test/java/dst/ass1/jpa/tests/Ass1_1_2_01Test.java
Add template for assignment 1
[pub/jan/dst18.git] / ass1-jpa / src / test / java / dst / ass1 / jpa / tests / Ass1_1_2_01Test.java
1 package dst.ass1.jpa.tests;
2
3 import static org.junit.Assert.assertTrue;
4
5 import org.junit.Rule;
6 import org.junit.Test;
7 import org.junit.rules.ExpectedException;
8
9 import dst.ass1.jpa.ORMService;
10 import dst.ass1.jpa.model.IParticipant;
11 import dst.ass1.jpa.util.Constants;
12
13 /**
14  * Tests the constraint for IParticipant bank data.
15  */
16 public class Ass1_1_2_01Test {
17
18     @Rule
19     public ORMService orm = new ORMService();
20
21     @Rule
22     public ExpectedException expectedException = ExpectedException.none();
23
24     @Test
25     public void testParticipantAccountNoBankCodeConstraint() {
26         IParticipant p1 = orm.getModelFactory().createParticipant();
27         IParticipant p2 = orm.getModelFactory().createParticipant();
28
29         p1.setEmail("p1@example.com");
30         p2.setEmail("p2@example.com");
31
32         new UniqueConstraintTester<>(p1, p2, e -> {
33             e.setAccountNo("uniqueVal1");
34             e.setBankCode("uniqueVal2");
35         }).run(orm.getEntityManager());
36     }
37
38     @Test
39     public void testParticipantAccountNoBankCodeConstraintJdbc() {
40         assertTrue(orm.getDatabaseGateway().isIndex(Constants.T_PARTICIPANT, Constants.M_PARTICIPANT_ACCOUNT, false));
41         assertTrue(orm.getDatabaseGateway().isIndex(Constants.T_PARTICIPANT, Constants.M_PARTICIPANT_BANK_CODE, false));
42         assertTrue(orm.getDatabaseGateway().isComposedIndex(Constants.T_PARTICIPANT, Constants.M_PARTICIPANT_ACCOUNT, Constants.M_PARTICIPANT_BANK_CODE));
43
44         assertTrue(orm.getDatabaseGateway().isNullable(Constants.T_PARTICIPANT, Constants.M_PARTICIPANT_ACCOUNT));
45         assertTrue(orm.getDatabaseGateway().isNullable(Constants.T_PARTICIPANT, Constants.M_PARTICIPANT_BANK_CODE));
46     }
47
48 }