Skip to content
Snippets Groups Projects
Commit d37f6933 authored by Razzan Yoni's avatar Razzan Yoni
Browse files

feat: add unit test to Subscription model

parent 73e55d65
Branches
1 merge request!1Merge dev to main
......@@ -51,4 +51,84 @@ public class Subscription implements Serializable {
@Temporal(TemporalType.TIMESTAMP)
@ColumnDefault("CURRENT_TIMESTAMP(6) on update CURRENT_TIMESTAMP(6)")
private Date updatedAt;
@PrePersist
public void prePersist() {
if (status == null) {
status = SubscriptionStatus.PENDING;
}
updatedAt = new Date();
}
@PreUpdate
public void preUpdate() {
updatedAt = new Date();
}
public String toString() {
return "Subscription: " + subscriptionId + " " + userId + " " + albumId + " " + status;
}
// Test
public static void main(String[] args) {
SessionFactory sessionFactory = HibernateUtil.getSessionFactory();
// Create subscription
try {
Session session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
Subscription subscription = new Subscription();
subscription.setUserId(1);
subscription.setAlbumId(1);
session.save(subscription);
tx.commit();
session.close();
} catch (Exception e) {
System.out.println("Error: " + e.getMessage());
}
// Get subscription from database
try {
Session session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
Subscription lastSubsId = session.createQuery("from subscription order by subscriptionId desc", Subscription.class).setMaxResults(1).list().get(0);
Subscription subscription = session.get(Subscription.class, lastSubsId.getSubscriptionId());
System.out.println(subscription);
tx.commit();
session.close();
} catch (Exception e) {
System.out.println("Error: " + e.getMessage());
}
// Update subscription
try {
Session session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
Subscription firstSubsId = session.createQuery("from subscription order by subscriptionId asc", Subscription.class).setMaxResults(1).list().get(0);
Subscription subscription = session.get(Subscription.class, firstSubsId.getSubscriptionId());
subscription.setStatus(SubscriptionStatus.ACTIVE);
session.update(subscription);
tx.commit();
session.close();
} catch (Exception e) {
System.out.println("Error: " + e.getMessage());
}
// Delete subscription
try {
Session session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
Subscription lastSubsId = session.createQuery("from subscription order by subscriptionId desc", Subscription.class).setMaxResults(1).list().get(0);
Subscription subscription = session.get(Subscription.class, lastSubsId.getSubscriptionId());
session.delete(subscription);
tx.commit();
session.close();
} catch (Exception e) {
System.out.println("Error: " + e.getMessage());
}
}
}
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment