package com.vaadin.data.util.sqlcontainer.connection; import java.sql.Connection; import java.sql.SQLException; import javax.naming.Context; import javax.naming.NamingException; import javax.sql.DataSource; import junit.framework.Assert; import org.easymock.EasyMock; import org.junit.Test; public class J2EEConnectionPoolTest { @Test public void reserveConnection_dataSourceSpecified_shouldReturnValidConnection() throws SQLException { Connection connection = EasyMock.createMock(Connection.class); connection.setAutoCommit(false); EasyMock.expectLastCall(); DataSource ds = EasyMock.createMock(DataSource.class); ds.getConnection(); EasyMock.expectLastCall().andReturn(connection); EasyMock.replay(connection, ds); J2EEConnectionPool pool = new J2EEConnectionPool(ds); Connection c = pool.reserveConnection(); Assert.assertEquals(connection, c); EasyMock.verify(connection, ds); } @Test public void releaseConnection_shouldCloseConnection() throws SQLException { Connection connection = EasyMock.createMock(Connection.class); connection.setAutoCommit(false); EasyMock.expectLastCall(); connection.close(); EasyMock.expectLastCall(); DataSource ds = EasyMock.createMock(DataSource.class); ds.getConnection(); EasyMock.expectLastCall().andReturn(connection); EasyMock.replay(connection, ds); J2EEConnectionPool pool = new J2EEConnectionPool(ds); Connection c = pool.reserveConnection(); Assert.assertEquals(connection, c); pool.releaseConnection(c); EasyMock.verify(connection, ds); } @Test public void reserveConnection_dataSourceLookedUp_shouldReturnValidConnection() throws SQLException, NamingException { Connection connection = EasyMock.createMock(Connection.class); connection.setAutoCommit(false); EasyMock.expectLastCall(); connection.close(); EasyMock.expectLastCall(); DataSource ds = EasyMock.createMock(DataSource.class); ds.getConnection(); EasyMock.expectLastCall().andReturn(connection); System.setProperty("java.naming.factory.initial", "com.vaadin.data.util.sqlcontainer.connection.MockInitialContextFactory"); Context context = EasyMock.createMock(Context.class); context.lookup("testDataSource"); EasyMock.expectLastCall().andReturn(ds); MockInitialContextFactory.setMockContext(context); EasyMock.replay(context, connection, ds); J2EEConnectionPool pool = new J2EEConnectionPool("testDataSource"); Connection c = pool.reserveConnection(); Assert.assertEquals(connection, c); pool.releaseConnection(c); EasyMock.verify(context, connection, ds); } @Test(expected = SQLException.class) public void reserveConnection_nonExistantDataSourceLookedUp_shouldFail() throws SQLException, NamingException { System.setProperty("java.naming.factory.initial", "com.vaadin.addon.sqlcontainer.connection.MockInitialContextFactory"); Context context = EasyMock.createMock(Context.class); context.lookup("foo"); EasyMock.expectLastCall().andThrow(new NamingException("fail")); MockInitialContextFactory.setMockContext(context); EasyMock.replay(context); J2EEConnectionPool pool = new J2EEConnectionPool("foo"); pool.reserveConnection(); EasyMock.verify(context); } @Test public void releaseConnection_null_shouldSucceed() throws SQLException { DataSource ds = EasyMock.createMock(DataSource.class); EasyMock.replay(ds); J2EEConnectionPool pool = new J2EEConnectionPool(ds); pool.releaseConnection(null); EasyMock.verify(ds); } } 70 Nextcloud server, a safe home for all your data: https://github.com/nextcloud/serverwww-data
aboutsummaryrefslogtreecommitdiffstats
path: root/apps/user_ldap/lib/ILDAPUserPlugin.php
blob: 3dbda1f6a99c5f5dcc36271ac87fa84a181a5334 (plain)
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