From f966ece4322a4da9456b023f65adeb6259ca5143 Mon Sep 17 00:00:00 2001
From: Martin Goik <goik@hdm-stuttgart.de>
Date: Tue, 30 Jun 2015 12:14:39 +0200
Subject: [PATCH] Testing constraint violation

---
 .../rdbms2catalog/TestSchemaConflict.java     | 37 +++++++++++++++++++
 1 file changed, 37 insertions(+)
 create mode 100644 P/Sda1/Jpa/rdbms2catalog/solution/src/test/java/rdbms2catalog/TestSchemaConflict.java

diff --git a/P/Sda1/Jpa/rdbms2catalog/solution/src/test/java/rdbms2catalog/TestSchemaConflict.java b/P/Sda1/Jpa/rdbms2catalog/solution/src/test/java/rdbms2catalog/TestSchemaConflict.java
new file mode 100644
index 000000000..e89bbd218
--- /dev/null
+++ b/P/Sda1/Jpa/rdbms2catalog/solution/src/test/java/rdbms2catalog/TestSchemaConflict.java
@@ -0,0 +1,37 @@
+package rdbms2catalog;
+
+import javax.persistence.EntityManager;
+import javax.persistence.EntityManagerFactory;
+import javax.persistence.EntityTransaction;
+import javax.persistence.Persistence;
+
+import org.junit.Test;
+
+import de.hdm_stuttgart.mi.sda1.sql2catalog.model.Description;
+import de.hdm_stuttgart.mi.sda1.sql2catalog.model.Product;
+
+public class TestSchemaConflict {
+	
+    static final EntityManager em;
+
+    static {
+	    final EntityManagerFactory emFactory =  Persistence.createEntityManagerFactory("create-drop");
+	    em = emFactory.createEntityManager();
+	}
+
+	@Test(expected=javax.persistence.PersistenceException.class)
+	public void insertData() {
+		{
+	          final EntityTransaction transaction = em.getTransaction();
+	          transaction.begin();
+	          
+	          final Product monkeyPickedTea = new Product(1, "Monkey Picked Tea", null);
+	          new Description(monkeyPickedTea, 0, "Picked only by specially trained monkeys");
+	          new Description(monkeyPickedTea, 0, "Rare wild Chinese tea"); // oops! Unique key violation
+	          
+	          em.persist(monkeyPickedTea);
+	          
+	          transaction.commit();
+	    }
+	}
+}
\ No newline at end of file
-- 
GitLab