public boolean ricavaUser(String username) throws DAOException { if (username != null) { try { Connection conn = dbAccess.getConnection(); PreparedStatement stmt = conn.prepareStatement(SELECT_USER); stmt.setString(1, username); ResultSet rs = stmt.executeQuery(); if (rs.next()) { closeAll(rs, stmt); dbAccess.closeConnection(conn); return true; } else { closeAll(rs, stmt); dbAccess.closeConnection(conn); return false; } } catch (SQLException e) { throw new DAOException("sql.login.exception.loginDAO", e); } catch (Exception e) { throw new DAOException("login.exception.loginDAO", e); } } else { throw new DAOException("invalid.object_username.loginDAO", null); } }
@Test public void testUpdate() { try { NotaB notaBU = new NotaB(); notaBU.setDescrizione("asd2"); boolean test = notaBDAO.update(conn, notaBU, notaB1); db.rollbackConnection(conn); assertTrue(test); } catch (DAOException e) { fail(e.getMessage()); } catch (DBAccessException e) { fail(e.getMessage()); } finally { try { db.closeConnection(conn); } catch (DBAccessException e) { e.printStackTrace(); } } // TEST 2 try { notaBDAO.update(conn, new Allegato(), notaB1); fail(); } catch (DAOException e) { assertTrue(e.getMessageKey().equals(INV_OBJ_NOTA_B)); } finally { try { db.closeConnection(conn); } catch (DBAccessException e) { e.printStackTrace(); } } // TEST 3 try { notaBDAO.update(conn, null, notaB1); fail(); } catch (DAOException e) { // return; assertTrue(e.getMessageKey().equals(INV_OBJ_NOTA_B)); } finally { try { db.closeConnection(conn); } catch (DBAccessException e) { e.printStackTrace(); } } }
public String ricavaPassword(String username) throws DAOException { if (username != null) { try { Connection conn = dbAccess.getConnection(); PreparedStatement stmt = conn.prepareStatement(SELECT_PASS); stmt.setString(1, username); ResultSet rs = stmt.executeQuery(); String pass = null; if (rs.next()) { pass = rs.getString(1); closeAll(rs, stmt); dbAccess.closeConnection(conn); return pass; } else { closeAll(rs, stmt); dbAccess.closeConnection(conn); return pass; } } catch (SQLException e) { throw new DAOException("sql.login.exception.loginDAO", e); } catch (Exception e) { throw new DAOException("login.exception.loginDAO", e); } } else { throw new DAOException("invalid.object_username.loginDAO", null); } }
@Test public void testFind() { try { RowSet rs = notaBDAO.find(notaB1, 2); try { boolean b = rs.next(); assertTrue(b); } catch (SQLException e) { fail(e.getMessage()); } } catch (DAOException e) { fail(e.getMessage()); } finally { try { db.closeConnection(conn); } catch (DBAccessException e) { e.printStackTrace(); } } // TEST 2 try { notaBDAO.find(new Allegato(), 2); fail(); } catch (DAOException e) { assertTrue(e.getMessageKey().equals(INV_OBJ_NOTA_B)); } finally { try { db.closeConnection(conn); } catch (DBAccessException e) { e.printStackTrace(); } } // TEST 3 try { notaBDAO.find(null, 2); fail(); } catch (DAOException e) { assertTrue(e.getMessageKey().equals(INV_OBJ_NOTA_B)); } finally { try { db.closeConnection(conn); } catch (DBAccessException e) { e.printStackTrace(); } } }
@Test public void testGetInfoResultSet() { try { stmt = conn.prepareStatement(ALLEGATO5_FIND_BYPK); stmt.setInt(1, 6); ResultSet rs = stmt.executeQuery(); rs.next(); allegato5 = Allegato5Assembler.getInfo(rs); stmt.close(); db.closeConnection(conn); } catch (SQLException e) { fail(e.getMessage()); } catch (DBAccessException e) { fail(e.getMessage()); } }
@Test public void testFindByAll() { try { RowSet rs = notaBDAO.findByAll(); assertTrue(rs.next()); } catch (DAOException e) { fail(e.getMessageKey()); } catch (SQLException e) { fail(e.getMessage()); } finally { try { db.closeConnection(conn); } catch (DBAccessException e) { e.printStackTrace(); } } }
@Test public void testGetPreparedStatement() { try { // testo il getPrearedStatement facendo una query di creazione // MANCA TESTO QUERY IN ALLEGATO5_CREATE stmt = conn.prepareStatement(ALLEGATO5_CREATE); Allegato5Assembler.getPreparedStatement(allegato5, stmt); stmt.executeUpdate(); db.rollbackConnection(conn); stmt.close(); db.closeConnection(conn); } catch (SQLException e) { fail(e.getMessage()); } catch (DBAccessException e) { fail(e.getMessage()); } }
@Test public void testGetInfoRowSet() { CachedRowSet rws; try { rws = new CachedRowSetImpl(); rws.setCommand(ALLEGATO5_FIND_BYPK); rws.setInt(1, 6); rws.execute(conn); rws.next(); allegato5 = Allegato5Assembler.getInfo(rws); rws.close(); db.closeConnection(conn); } catch (SQLException e) { fail(e.getMessage()); } catch (DBAccessException e) { fail(e.getMessage()); } }
@Test public void testRemove() { try { boolean res = notaBDAO.remove(conn, notaB1.getIdNotaB()); db.rollbackConnection(conn); assertTrue(res); } catch (DBAccessException e) { fail(e.getMessage()); } catch (DAOException e) { fail(e.getMessage()); } finally { try { db.closeConnection(conn); } catch (DBAccessException e) { e.printStackTrace(); } } }
@Test public void testCreate() { try { notaB2.setData(cd.getTime()); notaBDAO.create(conn, notaB2); String query = NOTA_B_FIND_BYPK; Statement stmt2 = conn.createStatement(); ResultSet rs = stmt2.executeQuery( "SELECT `AUTO_INCREMENT` FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'db_qualita' AND TABLE_NAME = 'nota_b'"); rs.next(); int id = rs.getInt(1); PreparedStatement stmt = conn.prepareStatement(query); stmt.setInt(1, id - 1); rs = stmt.executeQuery(); rs.next(); int a = rs.getInt(1); db.rollbackConnection(conn); assertTrue(rs.getInt(1) == (id - 1)); } catch (DAOException e) { fail(e.getMessage()); } catch (SQLException e) { fail(e.getMessage()); } catch (DBAccessException e) { e.printStackTrace(); } finally { try { db.closeConnection(conn); } catch (DBAccessException e) { e.printStackTrace(); } } // TEST 2 test null try { notaBDAO.create(null, notaB2); fail(); } catch (DAOException e) { // return; assertTrue(e.getMessageKey().equals(INV_OBJ_NOTA_B)); } finally { try { db.closeConnection(conn); } catch (DBAccessException e) { e.printStackTrace(); } } // TEST 3 test class exception try { notaBDAO.create(conn, new Allegato()); fail(); } catch (DAOException e) { assertTrue(e.getMessageKey().equals(INV_OBJ_NOTA_B)); } finally { try { db.closeConnection(conn); } catch (DBAccessException e) { e.printStackTrace(); } } }