You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by ag...@apache.org on 2018/04/05 17:53:39 UTC

[geode] branch feature/GEODE-4947 updated (c893970 -> 473d379)

This is an automated email from the ASF dual-hosted git repository.

agingade pushed a change to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git.


    omit c893970  caps
    omit 98f1190  GEODE-4947: Add geode-connectors to acceptance tests
    omit 7f544aa  GEODE-4947: Remove ignore label from fixed test
    omit 8b7c2c3  GEODE-4947: Make tests that spin up Docker containers Acceptance Tests
    omit e794257  Revert "GEODE-4947: Make new category for tests that require external services"
    omit 5413739  GEODE-4947: Make new category for tests that require external services
    omit c3012e9  GEODE-4947: Remove duplicate code
    omit aaadc05  GEODE-4947: Downgrade docker compose version in config files
    omit e432f2b  GEODE-4947: Cleanup
    omit 497b551  GEODE-4947: Fix issue with null character string in Postgres
    omit 71772e1  GEODE-4947: Fix MySQL test truncating timestamps
    omit 638f970  GEODE-4947: Protect against having no connection rule
    omit 17d3d60  GEODE-4947: Change resource paths
    omit fdc9867  GEODE-4947: Fix docker compose yml file references
    omit a383346  GEODE-4947: Improve pathing to docker compose resource files
    omit de0266f  GEODE-4947: Fix spotless formatting
    omit 3fba92b  GEODE-4947: Mark failing tests as ignored
    omit c2df29c  GEODE-4947: Convert distributed tests to use mysql and postgres
    omit 7c00c0d  GEODE-4947: Fix failing tests due to type conversions
    omit c0390ac  GEODE-4947: Update integration tests to use mysql and postgres
    omit d776631  GEODE-4947: Add Derby connection rule
    omit 2f69e00  GEODE-4947: Add Postgres test rule and test utilizing it
    omit 687325b  GEODE-4947: Add test using MySQL for JDBC connector
     add 755eaaa  GEODE-4929: Add ability for tests to overide the default DiskDirs (#1701)
     add a4bae5c  GEODE-4934: Throw exception if shutdown fails in GfshRule (#1699)
     add c42905c  GEODE-4811: Add @Disabled "feature flag" annotation for gfsh commands.
     add 4bdd31c  GEODE-4928 DistributedLockService doesn't work as expected while the dlock grantor is initialized
     add b55215d  GEODE-3563: use a timeout for newly created sockets in TcpConduit.run() (#1671)
     add 956a671  GEODE-4974: Create single connection pool per cache (#1707)
     add ffc9c8b  GEODE-4976: Fix misspelling and misattribution in test logging. (#1708)
     add 1b4d95a  GEODE-4917: Remove dead and redundant code from LinkedStructSet.
     add 5fe3c76  GEODE-3820: Remove all invocations of Wait.pause(). (#1694)
     add 5809567  GEODE-4817: Add support for SSL to the experimental driver. (#1683)
     add 60614fb  GEODE-4386: Return 'not found' if the JNDI binding does not exist (#1710)
     add 0297afd  GEODE-4386: Correct check in the case where JNDI binding does not exist
     add c00512c  Revert "GEODE-4386: Correct check in the case where JNDI binding does not exist"
     add 2d8d1a6  Revert "GEODE-4386: Return 'not found' if the JNDI binding does not exist (#1710)"
     add c2a06a1  GEODE-4980 CI failure: AutoConnectionSourceImplJUnitTest. testServerLocationUsedInListenerNotification
     add df252f1  GEODE-4817: Fix SSLTest. (#1714)
     add fce124f  COMMIT THEN REVIEW: Fixed doc typos.
     add 4ba38c9  GEODE-4981 CI failure: SSLConfigurationFactoryJUnitTest.getNonSSLConfiguration
     add 8b8cef1  GEODE-4893: Improve reloading the cluster configuration on existing vanilla servers
     add 750417f  GEODE-4867: Added query time expiration checks. (#1624)
     add 00ffcf5  GEODE-4386: Return 'not found' if the JNDI binding does not exist (#1713)
     add 5b21633  GEODE-3456: Fix display of 'null' hosts in Pulse UI (#1717)
     add e5e0c62  GEODE-4979: Incorrect description in docs of ResourcePermission in OQL
     add 69a6c33  GEODE-4981 CI failure: SSLConfigurationFactoryJUnitTest.getNonSSLConfiguration
     add d773cfd  GEODE-4983 PluckStacks is no longer detecting idle executors and weeding them out
     add 7070fc9  GEODE-4872: handle Blob when reading from JDBC (#1692)
     add 132dfc8  GEODE-4867: Unused imports
     add 8894267  GEODE-4840: do not deserialize PdxInstances for remote gets (#1693)
     add caf588b  Geode-4950 + GEODE-4951: Upgrade spotless version and reduce run time.
     add 31b51bd  GEODE-4972: Move VersionManager to geode-old-versions module (#1703)
     add 912a1b2  GEODE-4902: Refactor LogMarker class and usage (#1678)
     add 6fa521e  GEODE-4911: Deprecate DataSerializer.TRACE_SERIALIZABLE. (#1722)
     add 3c263e9  GEODE-4989 CQ reply message fromData method deserializes query results
     add 111b51d  GEODE-4893: add test to make sure the callbacks will be loaded correctly (#1729)
     add 6b2d45a  GEODE-4970: Overhaul and split up PartitionedRegionQueryDUnitTest (#1718)
     add 425f371  GEODE-4983 PluckStacks is no longer detecting idle executors and weeding them out
     add 93a484d  GEODE-4984 Add new Use Cases section to docs (#1733)
     add da1ce1c  GEODE-4456: Remove singleton calls from all tests in org.apache.geode.internal.cache
     add 595da56  GEODE-4644: Move static to member of distributed system. (#1734)
     add d792821  GEODE-4960: Jar deploy fails when SSL is enabled (#1698)
     add 273994d  GEODE-4971: Add version capability to GfshRule (#1731)
     add 400c762  Revert "GEODE-4989 CQ reply message fromData method deserializes query results"
     add 3047190  Revert "GEODE-4822 The second server instance startup error: Could not create an instance of PartitionRegionConfig"
     new a2b6962  GEODE-4947: Add test using MySQL for JDBC connector
     new 4e83237  GEODE-4947: Add Postgres test rule and test utilizing it
     new 6603bdc  GEODE-4947: Add Derby connection rule
     new 1f234ca  GEODE-4947: Update integration tests to use mysql and postgres
     new 0c93647  GEODE-4947: Fix failing tests due to type conversions
     new c3ac6b3  GEODE-4947: Convert distributed tests to use mysql and postgres
     new 720724c  GEODE-4947: Mark failing tests as ignored
     new eeb10b3  GEODE-4947: Fix spotless formatting
     new 5bd24f6  GEODE-4947: Improve pathing to docker compose resource files
     new a983819  GEODE-4947: Fix docker compose yml file references
     new 0a2e444  GEODE-4947: Change resource paths
     new ded7309  GEODE-4947: Protect against having no connection rule
     new fe91b25  GEODE-4947: Fix MySQL test truncating timestamps
     new 8454a95  GEODE-4947: Fix issue with null character string in Postgres
     new 75bf59a  GEODE-4947: Cleanup
     new 1dd8aae  GEODE-4947: Downgrade docker compose version in config files
     new b8fe4a0  GEODE-4947: Remove duplicate code
     new 5af1a0a  GEODE-4947: Make new category for tests that require external services
     new e9859d6  Revert "GEODE-4947: Make new category for tests that require external services"
     new ed458ee  GEODE-4947: Make tests that spin up Docker containers Acceptance Tests
     new 40b159c  GEODE-4947: Remove ignore label from fixed test
     new 9f51db0  GEODE-4947: Add geode-connectors to acceptance tests
     new 473d379  caps

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (c893970)
            \
             N -- N -- N   refs/heads/feature/GEODE-4947 (473d379)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 23 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 build.gradle                                       |    2 +-
 extensions/geode-modules-tomcat8/build.gradle      |    1 +
 .../cli/commands/ImportClusterConfigTest.java      |   60 +
 .../geode/test/junit/rules/GfshRuleTest.java       |   40 +-
 .../source/subnavs/geode-subnav.erb                |    8 +
 .../jdbc/internal/AbstractJdbcCallback.java        |    3 +-
 .../jdbc/internal/DataSourceManager.java           |    5 +-
 .../jdbc/internal/JdbcConnectorService.java        |    1 +
 .../jdbc/internal/JdbcConnectorServiceImpl.java    |    7 +
 .../geode/connectors/jdbc/internal/SqlHandler.java |    2 +-
 .../jdbc/internal/SqlToPdxInstanceCreator.java     |  127 +-
 .../jdbc/internal/AbstractJdbcCallbackTest.java    |    1 -
 .../jdbc/internal/DataSourceManagerUnitTest.java   |   14 +-
 .../jdbc/internal/JdbcConnectorServiceTest.java    |    5 +
 .../connectors/jdbc/internal/SqlHandlerTest.java   |    2 +-
 .../jdbc/internal/SqlToPdxInstanceCreatorTest.java |  190 ++-
 geode-core/build.gradle                            |    3 +-
 .../main/java/org/apache/geode/DataSerializer.java |  435 ++++---
 .../admin/internal/AdminDistributedSystemImpl.java |    4 +-
 .../internal/DisabledManagedEntityController.java  |   26 +-
 .../internal/ManagedEntityControllerFactory.java   |    4 +-
 .../apache/geode/admin/jmx/internal/AgentImpl.java |   13 +-
 .../org/apache/geode/cache/AttributesFactory.java  |   12 +-
 .../geode/cache/client/internal/AbstractOp.java    |   11 +-
 .../client/internal/ClientSideHandshakeImpl.java   |   13 +-
 .../cache/client/internal/InternalClientCache.java |    6 +
 .../cache/client/internal/OpExecutorImpl.java      |   12 +-
 .../apache/geode/cache/query/internal/CqEntry.java |    3 +-
 .../internal/CumulativeNonDistinctResults.java     |    3 +-
 .../cache/query/internal/LinkedResultSet.java      |   10 +-
 .../cache/query/internal/LinkedStructSet.java      |  183 +--
 .../cache/query/internal/NWayMergeResults.java     |    3 +-
 .../geode/cache/query/internal/ResultsBag.java     |    3 +-
 .../query/internal/ResultsCollectionWrapper.java   |   12 +-
 .../geode/cache/query/internal/ResultsSet.java     |    8 +-
 .../cache/query/internal/SortedResultSet.java      |   10 +-
 .../cache/query/internal/SortedStructSet.java      |   36 +-
 .../geode/cache/query/internal/StructImpl.java     |    5 +-
 .../geode/cache/query/internal/StructSet.java      |   26 +-
 .../internal/ClusterDistributionManager.java       |   29 +-
 .../distributed/internal/DistributionAdvisor.java  |  135 +-
 .../distributed/internal/DistributionMessage.java  |    8 +-
 .../internal/InternalDistributedSystem.java        |   15 +
 .../internal/StartupResponseMessage.java           |    4 +-
 .../distributed/internal/direct/DirectChannel.java |    4 +-
 .../distributed/internal/locks/DLockGrantor.java   |  460 +++----
 .../internal/locks/DLockQueryProcessor.java        |   23 +-
 .../locks/DLockRecoverGrantorProcessor.java        |   42 +-
 .../internal/locks/DLockReleaseProcessor.java      |   30 +-
 .../internal/locks/DLockRequestProcessor.java      |  147 +--
 .../distributed/internal/locks/DLockService.java   |  294 ++---
 .../distributed/internal/locks/DLockToken.java     |   24 +-
 .../internal/locks/DeposeGrantorProcessor.java     |    5 +-
 .../internal/locks/ElderInitProcessor.java         |   24 +-
 .../distributed/internal/locks/ElderState.java     |   62 +-
 .../internal/locks/GrantorRequestProcessor.java    |   49 +-
 .../locks/NonGrantorDestroyedProcessor.java        |   17 +-
 .../membership/gms/mgr/GMSMembershipManager.java   |    7 +-
 .../internal/streaming/StreamingOperation.java     |    2 +-
 .../distributed/internal/tcpserver/TcpServer.java  |    5 +-
 .../org/apache/geode/internal/DSFIDFactory.java    |  126 +-
 .../org/apache/geode/internal/DeployedJar.java     |   10 +-
 .../geode/internal/InternalDataSerializer.java     |  263 ++--
 .../geode/internal/admin/remote/AdminWaiters.java  |   25 +-
 .../admin/remote/AlertLevelChangeMessage.java      |    4 +-
 .../internal/admin/remote/DestroyEntryMessage.java |    3 +-
 .../internal/admin/remote/RemoteEntrySnapshot.java |    5 +-
 .../admin/remote/RemoteGfManagerAgent.java         |   65 +-
 .../admin/remote/RemoteRegionSnapshot.java         |    3 +-
 .../internal/cache/AbstractBucketRegionQueue.java  |   34 +-
 .../geode/internal/cache/AbstractDiskRegion.java   |   72 +-
 .../geode/internal/cache/AbstractRegionMap.java    |   17 +-
 .../apache/geode/internal/cache/BucketAdvisor.java |   15 +-
 .../internal/cache/BucketPersistenceAdvisor.java   |   29 +-
 .../apache/geode/internal/cache/BucketRegion.java  |   49 +-
 .../internal/cache/CacheDistributionAdvisor.java   |    2 +-
 .../internal/cache/ClusterConfigurationLoader.java |   17 +-
 .../geode/internal/cache/DestroyOperation.java     |    3 +-
 .../cache/DestroyPartitionedRegionMessage.java     |   15 +-
 .../apache/geode/internal/cache/DiskInitFile.java  |   68 +-
 .../geode/internal/cache/DiskStoreAttributes.java  |    3 +-
 .../geode/internal/cache/DiskStoreMonitor.java     |   68 +-
 .../geode/internal/cache/DistTXCommitMessage.java  |    9 +-
 .../internal/cache/DistTXPrecommitMessage.java     |    9 +-
 .../internal/cache/DistTXRollbackMessage.java      |    8 +-
 .../internal/cache/DistributedCacheOperation.java  |   18 +-
 .../internal/cache/DistributedPutAllOperation.java |   19 +-
 .../geode/internal/cache/DistributedRegion.java    |    7 +-
 .../DistributedRegionFunctionStreamingMessage.java |   11 +-
 .../cache/DistributedRemoveAllOperation.java       |    2 +-
 .../geode/internal/cache/EntryEventImpl.java       |   16 +-
 .../org/apache/geode/internal/cache/EventID.java   |    2 +-
 .../apache/geode/internal/cache/FilterProfile.java |   26 +-
 .../cache/FunctionStreamingReplyMessage.java       |    3 +-
 .../geode/internal/cache/GemFireCacheImpl.java     |   35 +-
 .../org/apache/geode/internal/cache/HARegion.java  |    2 +-
 .../internal/cache/InitialImageOperation.java      |   88 +-
 .../apache/geode/internal/cache/InternalCache.java |    4 +-
 .../geode/internal/cache/InvalidateOperation.java  |    3 +-
 .../cache/InvalidatePartitionedRegionMessage.java  |    3 +-
 .../cache/LatestLastAccessTimeMessage.java         |    3 +-
 .../cache/LatestLastAccessTimeReplyProcessor.java  |    4 +-
 .../apache/geode/internal/cache/LocalRegion.java   |   70 +-
 .../geode/internal/cache/NonLocalRegionEntry.java  |    5 +-
 .../org/apache/geode/internal/cache/Oplog.java     |  269 ++--
 .../apache/geode/internal/cache/OverflowOplog.java |   25 +-
 .../geode/internal/cache/PartitionedRegion.java    |    4 +-
 .../cache/PartitionedRegionQueryEvaluator.java     |   28 +-
 .../geode/internal/cache/PersistentOplogSet.java   |    3 -
 .../geode/internal/cache/QueuedOperation.java      |    5 +-
 .../cache/SearchLoadAndWriteProcessor.java         |   47 +-
 .../geode/internal/cache/StateFlushOperation.java  |   59 +-
 .../geode/internal/cache/TXCommitMessage.java      |   11 +-
 .../internal/cache/TXRegionLockRequestImpl.java    |    6 +-
 .../internal/cache/TXRemoteCommitMessage.java      |    8 +-
 .../geode/internal/cache/TombstoneService.java     |   29 +-
 .../cache/UpdateEntryVersionOperation.java         |    3 +-
 .../geode/internal/cache/UpdateOperation.java      |    2 +-
 .../geode/internal/cache/VMLRURegionMap.java       |   88 +-
 .../internal/cache/WrappedCallbackArgument.java    |    3 +-
 .../cache/entries/AbstractRegionEntry.java         |   10 +-
 .../cache/event/DistributedEventTracker.java       |    8 +-
 .../cache/eviction/AbstractEvictionList.java       |   16 +-
 .../internal/cache/eviction/CountLRUEviction.java  |    3 +-
 .../cache/eviction/LRUListWithAsyncSorting.java    |    8 +-
 .../cache/eviction/LRUListWithSyncSorting.java     |   17 +-
 .../cache/execute/FunctionRemoteContext.java       |    3 +-
 .../geode/internal/cache/ha/HARegionQueue.java     |   34 +-
 .../geode/internal/cache/map/RegionMapDestroy.java |    4 +-
 .../partitioned/BecomePrimaryBucketMessage.java    |   20 +-
 .../cache/partitioned/BucketBackupMessage.java     |    5 +-
 .../cache/partitioned/BucketSizeMessage.java       |   15 +-
 .../cache/partitioned/ContainsKeyValueMessage.java |   15 +-
 .../cache/partitioned/CreateBucketMessage.java     |   21 +-
 .../partitioned/DeposePrimaryBucketMessage.java    |   20 +-
 .../internal/cache/partitioned/DestroyMessage.java |   33 +-
 .../DestroyRegionOnDataStoreMessage.java           |    8 +-
 .../cache/partitioned/DumpAllPRConfigMessage.java  |   14 +-
 .../internal/cache/partitioned/DumpB2NRegion.java  |   16 +-
 .../cache/partitioned/DumpBucketsMessage.java      |   14 +-
 .../cache/partitioned/FetchBulkEntriesMessage.java |   34 +-
 .../cache/partitioned/FetchEntriesMessage.java     |   21 +-
 .../cache/partitioned/FetchEntryMessage.java       |   23 +-
 .../cache/partitioned/FetchKeysMessage.java        |   41 +-
 .../partitioned/FetchPartitionDetailsMessage.java  |   23 +-
 .../internal/cache/partitioned/GetMessage.java     |   24 +-
 .../cache/partitioned/IdentityRequestMessage.java  |   23 +-
 .../cache/partitioned/IdentityUpdateMessage.java   |    4 +-
 .../cache/partitioned/IndexCreationMsg.java        |    6 +-
 .../cache/partitioned/InterestEventMessage.java    |   17 +-
 .../cache/partitioned/InvalidateMessage.java       |   16 +-
 .../partitioned/ManageBackupBucketMessage.java     |   21 +-
 .../cache/partitioned/ManageBucketMessage.java     |   21 +-
 .../cache/partitioned/MoveBucketMessage.java       |   16 +-
 .../cache/partitioned/PRTombstoneMessage.java      |    7 +-
 .../partitioned/PRUpdateEntryVersionMessage.java   |    7 +-
 .../cache/partitioned/PartitionMessage.java        |   10 +-
 .../PartitionedRegionFunctionStreamingMessage.java |    4 +-
 .../cache/partitioned/PrimaryRequestMessage.java   |   17 +-
 .../cache/partitioned/PutAllPRMessage.java         |   10 +-
 .../internal/cache/partitioned/PutMessage.java     |   47 +-
 .../internal/cache/partitioned/QueryMessage.java   |   11 +-
 .../internal/cache/partitioned/RegionAdvisor.java  |   54 +-
 .../cache/partitioned/RemoveAllPRMessage.java      |   10 +-
 .../cache/partitioned/RemoveBucketMessage.java     |   16 +-
 .../cache/partitioned/RemoveIndexesMessage.java    |    5 +-
 .../internal/cache/partitioned/SizeMessage.java    |   15 +-
 .../cache/persistence/DefaultDiskDirs.java         |   38 +
 .../cache/persistence/DiskInitFileParser.java      |  149 ++-
 .../cache/persistence/PersistenceAdvisorImpl.java  |  123 +-
 .../internal/cache/tier/sockets/AcceptorImpl.java  |    3 +-
 .../cache/tier/sockets/CacheClientProxy.java       |   42 +-
 .../cache/tier/sockets/CacheClientUpdater.java     |    4 +-
 .../tier/sockets/ClientInterestMessageImpl.java    |    7 +-
 .../tier/sockets/ClientUpdateMessageImpl.java      |    2 +-
 .../cache/tier/sockets/ObjectPartList.java         |   11 +-
 .../cache/tier/sockets/ObjectPartList651.java      |    5 +-
 .../cache/tier/sockets/VersionedObjectList.java    |   48 +-
 .../geode/internal/cache/tx/DistTxEntryEvent.java  |    4 +-
 .../internal/cache/tx/RemoteClearMessage.java      |    8 +-
 .../cache/tx/RemoteContainsKeyValueMessage.java    |   22 +-
 .../internal/cache/tx/RemoteDestroyMessage.java    |   22 +-
 .../internal/cache/tx/RemoteFetchEntryMessage.java |   15 +-
 .../internal/cache/tx/RemoteFetchKeysMessage.java  |   34 +-
 .../cache/tx/RemoteFetchVersionMessage.java        |   23 +-
 .../geode/internal/cache/tx/RemoteGetMessage.java  |   23 +-
 .../internal/cache/tx/RemoteInvalidateMessage.java |   20 +-
 .../internal/cache/tx/RemoteOperationMessage.java  |    4 +-
 .../internal/cache/tx/RemotePutAllMessage.java     |   12 +-
 .../geode/internal/cache/tx/RemotePutMessage.java  |   16 +-
 .../internal/cache/tx/RemoteRemoveAllMessage.java  |   12 +-
 .../geode/internal/cache/tx/RemoteSizeMessage.java |   14 +-
 .../cache/versions/RegionVersionHolder.java        |   31 +-
 .../cache/versions/RegionVersionVector.java        |    8 +-
 .../geode/internal/cache/versions/VersionTag.java  |   10 +-
 .../internal/cache/wan/GatewaySenderEventImpl.java |    5 +-
 ...aySenderQueueEntrySynchronizationOperation.java |    3 +-
 .../cache/wan/serial/BatchDestroyOperation.java    |    3 +-
 .../internal/cache/xmlcache/CacheCreation.java     |    7 +-
 .../internal/cache/xmlcache/CacheXmlGenerator.java |    3 +-
 .../internal/cache/xmlcache/CacheXmlParser.java    |   34 +-
 .../geode/internal/lang/SystemPropertyHelper.java  |   21 +
 .../geode/internal/logging/LogWriterFactory.java   |    6 +-
 .../geode/internal/logging/log4j/LogMarker.java    |  182 +--
 .../apache/geode/internal/net/SocketCreator.java   |    7 +-
 .../internal/statistics/GemFireStatSampler.java    |    4 +-
 .../geode/internal/statistics/HostStatSampler.java |   18 +-
 .../statistics/LocalStatisticsFactory.java         |    6 +-
 .../geode/internal/statistics/SampleCollector.java |  122 +-
 .../internal/statistics/SimpleStatSampler.java     |    2 +-
 .../internal/statistics/StatArchiveHandler.java    |   51 +-
 .../internal/statistics/StatArchiveWriter.java     |   46 +-
 .../internal/statistics/StatMonitorHandler.java    |   14 +-
 .../geode/internal/tcp/DirectReplySender.java      |    5 +-
 .../org/apache/geode/internal/tcp/TCPConduit.java  |   49 +-
 .../org/apache/geode/internal/util/BlobHelper.java |   16 -
 .../apache/geode/internal/util/PluckStacks.java    |    9 +-
 .../org/apache/geode/management/cli/Disabled.java  |   41 +
 .../ContextAwareSSLRMIClientSocketFactory.java     |   59 +
 .../geode/management/internal/ManagementAgent.java |    3 +-
 .../internal/beans/MemberMBeanBridge.java          |    2 +-
 .../management/internal/cli/CommandManager.java    |    8 +
 .../cli/commands/CommandAvailabilityIndicator.java |    3 +-
 .../cli/commands/DescribeJndiBindingCommand.java   |   13 +-
 .../ExportImportClusterConfigurationCommands.java  |   72 +-
 .../cli/functions/ChangeLogLevelFunction.java      |    7 +-
 .../internal/cli/functions/CliFunctionResult.java  |   10 +-
 .../functions/RecreateCacheFunction.java           |   20 +-
 .../apache/geode/pdx/internal/PdxInstanceImpl.java |   21 +-
 .../apache/geode/pdx/internal/TypeRegistry.java    |   42 +-
 .../sanctioned-geode-core-serializables.txt        |    1 +
 .../java/org/apache/geode/TestDataSerializer.java  |    4 +-
 .../AutoConnectionSourceImplJUnitTest.java         |    4 +-
 .../cache/client/internal/LocatorSSLJUnitTest.java |   64 +
 .../ResourceManagerWithQueryMonitorDUnitTest.java  |  143 ++
 .../geode/codeAnalysis/ClassAndMethodDetails.java  |    6 +-
 .../DistributedLockServiceDUnitTest.java           |   31 +-
 .../internal/DlockAndTxlockRegressionTest.java     |  235 ++++
 ...alDataSerializerSerializationWhitelistTest.java |    2 -
 .../internal/SSLConfigIntegrationJUnitTest.java    |    7 +
 .../apache/geode/internal/SSLConfigJUnitTest.java  |    7 +
 .../cache/ClientServerGetAllDUnitTest.java         |   10 +-
 .../cache/ClientServerTransactionDUnitTest.java    |   11 +-
 .../DistributedRegionSearchLoadJUnitTest.java      |    3 +-
 .../cache/EntryEventSerializationTest.java         |    3 -
 .../geode/internal/cache/GridAdvisorDUnitTest.java |   86 +-
 ...a => PRAccessorWithOverflowRegressionTest.java} |   29 +-
 .../internal/cache/PRQueryDistributedTest.java     |  550 ++++++++
 .../PRQueryWithIndexAndPdxDistributedTest.java     |  241 ++++
 .../cache/PRQueryWithIndexDistributedTest.java     |  172 +++
 .../cache/PRQueryWithOrderByDistributedTest.java   |  217 ++++
 ...RQueryWithPdxDuringRebalanceRegressionTest.java |  163 +++
 .../PRWithIndexAfterRebalanceRegressionTest.java   |  180 +++
 .../internal/cache/PartitionRegionConfigTest.java  |    2 -
 .../cache/PartitionedRegionQueryDUnitTest.java     | 1359 --------------------
 .../cache/SearchLoadAndWriteProcessorTest.java     |    2 +-
 .../internal/cache/TombstoneCreationJUnitTest.java |   45 +-
 .../cache/partitioned/Bug47388DUnitTest.java       |    7 +-
 .../DefaultDiskDirsIntegrationTest.java            |   47 +
 .../cache/persistence/DefaultDiskDirsTest.java     |   50 +
 ...ava => DataSerializerPropagationDUnitTest.java} |  323 +++--
 .../logging/DistributedSystemLogFileJUnitTest.java |   27 +-
 .../log4j/FastLoggerIntegrationJUnitTest.java      |    5 +-
 .../geode/internal/net/DummySocketCreator.java     |    8 +-
 .../internal/net/SSLSocketIntegrationTest.java     |    5 +-
 .../geode/internal/net/SocketCreatorJUnitTest.java |   17 +
 .../internal/cli/CommandManagerJUnitTest.java      |  103 +-
 .../DescribeJndiBindingCommandDUnitTest.java       |    6 +
 .../commands/HTTPServiceSSLSupportJUnitTest.java   |    2 +
 .../internal/cli/domain/MyCacheListener.java       |   36 +
 .../internal/cli/domain/MyCacheLoader.java         |   46 +
 .../internal/cli/domain/MyCacheWriter.java         |    3 +-
 .../ClusterConfigDeployJarDUnitTest.java           |    4 +
 .../ClusterConfigImportDUnitTest.java              |   34 +-
 .../ClusterConfigStartMemberDUnitTest.java         |    5 +
 .../configuration/ClusterConfigTestBase.java       |    4 -
 .../ClusterConfigWithCallbacksDUnitTest.java       |   97 ++
 .../configuration/DeployJarWithSSLDUnitTest.java   |  143 ++
 .../geode/pdx/AutoSerializableJUnitTest.java       |    7 +-
 .../pdx/PdxInstanceLoaderIntegrationTest.java      |   13 +
 .../apache/geode/pdx/PdxSerializerJUnitTest.java   |  138 --
 .../geode/pdx/PdxSerializerRegressionTest.java     |  106 --
 .../geode/test/dunit/rules/ClientCacheRule.java    |  225 ++++
 .../test/dunit/rules/DistributedDiskDirRule.java   |  275 ++++
 .../apache/geode/test/junit/rules/DiskDirRule.java |  188 +++
 .../apache/geode/test/junit/rules/VMProvider.java  |    4 -
 .../cache/client/internal/cacheserver.truststore   |  Bin 844 -> 1658 bytes
 .../codeAnalysis/sanctionedDataSerializables.txt   |  235 ++--
 .../geode/internal/cache/PutAllCSDUnitTest.java    |    4 +-
 .../continuous_querying_whats_next.html.md.erb     |    2 +-
 geode-docs/images/inline-cache.png                 |  Bin 0 -> 18797 bytes
 .../compacting_disk_stores.html.md.erb             |    2 +-
 .../keeping_offline_disk_store_in_sync.html.md.erb |    2 +-
 .../logging/configuring_log4j2.html.md.erb         |    6 +-
 .../implementing_authorization.html.md.erb         |    2 +-
 geode-docs/use_cases/book_intro.html.md.erb        |   32 +
 geode-docs/use_cases/inline-cache.html.md.erb      |   44 +
 .../geode/experimental/driver/DriverFactory.java   |   85 +-
 .../geode/experimental/driver/ProtobufChannel.java |   65 +-
 .../geode/experimental/driver/ProtobufDriver.java  |   13 +-
 .../geode/experimental/driver/SocketFactory.java   |  203 +++
 .../apache/geode/experimental/driver/SSLTest.java  |  187 +++
 .../geode/experimental/driver/bogusclient.keystore |  Bin
 .../geode/experimental/driver/bogusserver.keystore |  Bin 0 -> 1299 bytes
 .../experimental/driver}/cacheserver.keystore      |  Bin
 .../experimental/driver/cacheserver.truststore     |  Bin 0 -> 2519 bytes
 .../geode/experimental/driver}/client.keystore     |  Bin
 .../geode/experimental/driver}/client.truststore   |  Bin
 geode-junit/build.gradle                           |    1 +
 .../junit/rules/DescribedExternalResource.java     |   23 +-
 .../geode/test/junit/rules/gfsh/GfshRule.java      |   53 +-
 .../serializable/SerializableTemporaryFolder.java  |    8 +-
 .../rules/serializable/SerializableTestName.java   |    2 +-
 .../lucene/internal/LuceneResultStructImpl.java    |    5 +-
 .../lucene/internal/distributed/EntryScore.java    |    3 +-
 .../cache/lucene/internal/results/PageEntry.java   |    5 +-
 geode-old-client-support/build.gradle              |    1 +
 geode-old-versions/build.gradle                    |    4 +
 .../test/dunit/standalone/VersionManager.java      |    4 +-
 .../dunit/standalone/VersionManagerJUnitTest.java  |    3 +-
 geode-protobuf/build.gradle                        |    1 +
 .../tools/pulse/internal/data/JMXDataUpdater.java  |   65 +-
 geode-web/build.gradle                             |    1 +
 .../cli/commands/ConnectCommandWithSSLTest.java    |    4 -
 gradle/spotless.gradle                             |   27 +-
 325 files changed, 7708 insertions(+), 5828 deletions(-)
 create mode 100644 geode-assembly/src/test/java/org/apache/geode/management/internal/cli/commands/ImportClusterConfigTest.java
 copy geode-core/src/test/java/org/apache/geode/internal/net/SocketCreatorJUnitTest.java => geode-assembly/src/test/java/org/apache/geode/test/junit/rules/GfshRuleTest.java (53%)
 create mode 100644 geode-core/src/main/java/org/apache/geode/internal/cache/persistence/DefaultDiskDirs.java
 create mode 100644 geode-core/src/main/java/org/apache/geode/management/cli/Disabled.java
 create mode 100644 geode-core/src/main/java/org/apache/geode/management/internal/ContextAwareSSLRMIClientSocketFactory.java
 create mode 100644 geode-core/src/test/java/org/apache/geode/cache/client/internal/LocatorSSLJUnitTest.java
 create mode 100644 geode-core/src/test/java/org/apache/geode/distributed/internal/DlockAndTxlockRegressionTest.java
 rename geode-core/src/test/java/org/apache/geode/internal/cache/{BucketRegionSizeWithOverflowRegressionTest.java => PRAccessorWithOverflowRegressionTest.java} (79%)
 create mode 100644 geode-core/src/test/java/org/apache/geode/internal/cache/PRQueryDistributedTest.java
 create mode 100644 geode-core/src/test/java/org/apache/geode/internal/cache/PRQueryWithIndexAndPdxDistributedTest.java
 create mode 100644 geode-core/src/test/java/org/apache/geode/internal/cache/PRQueryWithIndexDistributedTest.java
 create mode 100644 geode-core/src/test/java/org/apache/geode/internal/cache/PRQueryWithOrderByDistributedTest.java
 create mode 100644 geode-core/src/test/java/org/apache/geode/internal/cache/PRQueryWithPdxDuringRebalanceRegressionTest.java
 create mode 100644 geode-core/src/test/java/org/apache/geode/internal/cache/PRWithIndexAfterRebalanceRegressionTest.java
 delete mode 100644 geode-core/src/test/java/org/apache/geode/internal/cache/PartitionedRegionQueryDUnitTest.java
 create mode 100644 geode-core/src/test/java/org/apache/geode/internal/cache/persistence/DefaultDiskDirsIntegrationTest.java
 create mode 100644 geode-core/src/test/java/org/apache/geode/internal/cache/persistence/DefaultDiskDirsTest.java
 rename geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/{DataSerializerPropogationDUnitTest.java => DataSerializerPropagationDUnitTest.java} (80%)
 create mode 100644 geode-core/src/test/java/org/apache/geode/management/internal/cli/domain/MyCacheListener.java
 create mode 100644 geode-core/src/test/java/org/apache/geode/management/internal/cli/domain/MyCacheLoader.java
 create mode 100644 geode-core/src/test/java/org/apache/geode/management/internal/configuration/ClusterConfigWithCallbacksDUnitTest.java
 create mode 100644 geode-core/src/test/java/org/apache/geode/management/internal/configuration/DeployJarWithSSLDUnitTest.java
 delete mode 100644 geode-core/src/test/java/org/apache/geode/pdx/PdxSerializerJUnitTest.java
 delete mode 100644 geode-core/src/test/java/org/apache/geode/pdx/PdxSerializerRegressionTest.java
 create mode 100644 geode-core/src/test/java/org/apache/geode/test/dunit/rules/ClientCacheRule.java
 create mode 100644 geode-core/src/test/java/org/apache/geode/test/dunit/rules/DistributedDiskDirRule.java
 create mode 100644 geode-core/src/test/java/org/apache/geode/test/junit/rules/DiskDirRule.java
 create mode 100644 geode-docs/images/inline-cache.png
 create mode 100644 geode-docs/use_cases/book_intro.html.md.erb
 create mode 100644 geode-docs/use_cases/inline-cache.html.md.erb
 create mode 100644 geode-experimental-driver/src/main/java/org/apache/geode/experimental/driver/SocketFactory.java
 create mode 100644 geode-experimental-driver/src/test/java/org/apache/geode/experimental/driver/SSLTest.java
 copy geode-protobuf/src/test/resources/org/apache/geode/internal/protocol/protobuf/v1/acceptance/default.keystore => geode-experimental-driver/src/test/resources/org/apache/geode/experimental/driver/bogusclient.keystore (100%)
 create mode 100644 geode-experimental-driver/src/test/resources/org/apache/geode/experimental/driver/bogusserver.keystore
 copy {geode-core/src/test/resources/org/apache/geode/cache/client/internal => geode-experimental-driver/src/test/resources/org/apache/geode/experimental/driver}/cacheserver.keystore (100%)
 create mode 100644 geode-experimental-driver/src/test/resources/org/apache/geode/experimental/driver/cacheserver.truststore
 copy {geode-core/src/test/resources/org/apache/geode/cache/client/internal => geode-experimental-driver/src/test/resources/org/apache/geode/experimental/driver}/client.keystore (100%)
 copy {geode-core/src/test/resources/org/apache/geode/cache/client/internal => geode-experimental-driver/src/test/resources/org/apache/geode/experimental/driver}/client.truststore (100%)
 rename {geode-core/src/test => geode-old-versions/src/main}/java/org/apache/geode/test/dunit/standalone/VersionManager.java (98%)
 rename {geode-core => geode-old-versions}/src/test/java/org/apache/geode/test/dunit/standalone/VersionManagerJUnitTest.java (94%)

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 23/23: caps

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit 473d3799aec600a5885c35b5958a1b376e75ced4
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Wed Apr 4 13:29:50 2018 -0700

    caps
---
 .../test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
index 69e3fa9..12fb6fb 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
@@ -53,7 +53,7 @@ import org.apache.geode.test.junit.rules.GfshCommandRule;
 import org.apache.geode.test.junit.rules.serializable.SerializableTestName;
 
 /**
- * End-to-end dunits for jdbc connector
+ * End-to-end dunits for JDBC connector
  */
 @Category(AcceptanceTest.class)
 public abstract class JdbcDistributedTest implements Serializable {

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 05/23: GEODE-4947: Fix failing tests due to type conversions

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit 0c936470b4c18c03e25e500e54d4e413e611359a
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Wed Mar 28 11:05:11 2018 -0700

    GEODE-4947: Fix failing tests due to type conversions
---
 .../org/apache/geode/connectors/jdbc/JdbcDUnitTest.java  |  5 +++--
 .../geode/connectors/jdbc/JdbcLoaderIntegrationTest.java | 16 ++++++----------
 .../connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java  | 12 +++++++++++-
 .../jdbc/PostgresJdbcLoaderIntegrationTest.java          | 11 +++++++++++
 4 files changed, 31 insertions(+), 13 deletions(-)

diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDUnitTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDUnitTest.java
index e63d480..90cfd17 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDUnitTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDUnitTest.java
@@ -25,6 +25,7 @@ import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.sql.Statement;
 import java.sql.Types;
+import java.time.Instant;
 import java.util.Date;
 import java.util.Properties;
 import java.util.concurrent.TimeUnit;
@@ -507,7 +508,7 @@ public class JdbcDUnitTest implements Serializable {
     client.invoke(() -> {
       String key = "id1";
       ClassWithSupportedPdxFields value = new ClassWithSupportedPdxFields(true, (byte) 1, (short) 2,
-          3, 4, 5.5f, 6.0, "BigEmp", new Date(100000), "BigEmpObject", new byte[] {1, 2}, 'c');
+          3, 4, 5.5f, 6.0, "BigEmp", new Date(0), "BigEmpObject", new byte[] {1, 2}, 'c');
       Region<String, ClassWithSupportedPdxFields> region =
           ClusterStartupRule.getClientCache().getRegion(REGION_NAME);
       region.put(key, value);
@@ -550,7 +551,7 @@ public class JdbcDUnitTest implements Serializable {
     createMapping(REGION_NAME, CONNECTION_NAME, ClassWithSupportedPdxFields.class.getName(), false);
     String key = "id1";
     ClassWithSupportedPdxFields value = new ClassWithSupportedPdxFields(true, (byte) 1, (short) 2,
-        3, 4, 5.5f, 6.0, "BigEmp", new Date(100000), "BigEmpObject", new byte[] {1, 2}, 'c');
+        3, 4, 5.5f, 6.0, "BigEmp", new Date(0), "BigEmpObject", new byte[] {1, 2}, 'c');
 
     server.invoke(() -> {
       insertDataForAllSupportedFieldsTable(key, value);
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java
index 6a9dfbd..1e14c6d 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java
@@ -23,6 +23,7 @@ import java.sql.DriverManager;
 import java.sql.PreparedStatement;
 import java.sql.SQLException;
 import java.sql.Statement;
+import java.time.Instant;
 import java.util.Date;
 
 import org.junit.After;
@@ -84,19 +85,14 @@ public abstract class JdbcLoaderIntegrationTest {
 
   public abstract String getConnectionUrl();
 
+  protected abstract void createClassWithSupportedPdxFieldsTable(Statement statement, String tableName)
+      throws SQLException;
+
   private void createEmployeeTable() throws Exception {
     statement.execute("Create Table " + REGION_TABLE_NAME
         + " (id varchar(10) primary key not null, name varchar(10), age int)");
   }
 
-  private void createClassWithSupportedPdxFieldsTable() throws Exception {
-    statement.execute("Create Table " + REGION_TABLE_NAME
-        + " (id varchar(10) primary key not null, " + "aboolean smallint, " + "abyte smallint, "
-        + "ashort smallint, " + "anint int, " + "along bigint, " + "afloat float, "
-        + "adouble float, " + "astring varchar(10), " + "adate timestamp, "
-        + "anobject varchar(20), " + "abytearray blob(100), " + "achar char(1))");
-  }
-
   private void closeDB() throws Exception {
     if (statement == null) {
       statement = connection.createStatement();
@@ -153,7 +149,7 @@ public abstract class JdbcLoaderIntegrationTest {
 
   @Test
   public void verifyGetWithSupportedFieldsWithPdxClassName() throws Exception {
-    createClassWithSupportedPdxFieldsTable();
+    createClassWithSupportedPdxFieldsTable(statement, REGION_TABLE_NAME);
     ClassWithSupportedPdxFields classWithSupportedPdxFields =
         createClassWithSupportedPdxFieldsForInsert();
     insertIntoClassWithSupportedPdxFieldsTable("1", classWithSupportedPdxFields);
@@ -203,7 +199,7 @@ public abstract class JdbcLoaderIntegrationTest {
   private ClassWithSupportedPdxFields createClassWithSupportedPdxFieldsForInsert() {
     ClassWithSupportedPdxFields classWithSupportedPdxFields =
         new ClassWithSupportedPdxFields(true, (byte) 1, (short) 2, 3, 4, 5.5f, 6.0, "BigEmp",
-            new Date(100000), "BigEmpObject", new byte[] {1, 2}, 'c');
+            new Date(0), "BigEmpObject", new byte[] {1, 2}, 'c');
 
     return classWithSupportedPdxFields;
   }
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
index 9555769..1eb8e07 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
@@ -16,6 +16,7 @@ package org.apache.geode.connectors.jdbc;
 
 import java.sql.Connection;
 import java.sql.SQLException;
+import java.sql.Statement;
 
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
@@ -41,4 +42,13 @@ public class MySqlJdbcLoaderIntegrationTest extends JdbcLoaderIntegrationTest {
   public String getConnectionUrl() {
     return dbRule.getConnectionUrl();
   }
-}
+
+  @Override
+  protected void createClassWithSupportedPdxFieldsTable(Statement statement, String tableName)
+      throws SQLException {
+    statement.execute("CREATE TABLE " + tableName
+        + " (id varchar(10) primary key not null, " + "aboolean smallint, " + "abyte smallint, "
+        + "ashort smallint, " + "anint int, " + "along bigint, " + "afloat float, "
+        + "adouble float, " + "astring varchar(10), " + "adate datetime, "
+        + "anobject varchar(20), " + "abytearray blob(100), " + "achar char(1))");
+  }}
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
index 0a96d5f..62a1b14 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
@@ -16,6 +16,7 @@ package org.apache.geode.connectors.jdbc;
 
 import java.sql.Connection;
 import java.sql.SQLException;
+import java.sql.Statement;
 
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
@@ -41,4 +42,14 @@ public class PostgresJdbcLoaderIntegrationTest extends JdbcLoaderIntegrationTest
   public String getConnectionUrl() {
     return dbRule.getConnectionUrl();
   }
+
+  @Override
+  protected void createClassWithSupportedPdxFieldsTable(Statement statement, String tableName)
+      throws SQLException {
+    statement.execute("CREATE TABLE " + tableName
+        + " (id varchar(10) primary key not null, " + "aboolean boolean, " + "abyte smallint, "
+        + "ashort smallint, " + "anint int, " + "along bigint, " + "afloat float, "
+        + "adouble float, " + "astring varchar(10), " + "adate timestamp, "
+        + "anobject varchar(20), " + "abytearray bytea, " + "achar char(1))");
+  }
 }

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 11/23: GEODE-4947: Change resource paths

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit 0a2e444d52ab45d7b0f7df2fbb5dcba282bff834
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Thu Mar 29 13:40:35 2018 -0700

    GEODE-4947: Change resource paths
---
 .../jdbc/MySqlJdbcAsyncWriterIntegrationTest.java  |  2 +-
 .../connectors/jdbc/MySqlJdbcDistributedTest.java  |  2 +-
 .../jdbc/MySqlJdbcLoaderIntegrationTest.java       |  2 +-
 .../jdbc/MySqlJdbcWriterIntegrationTest.java       |  2 +-
 .../PostgresJdbcAsyncWriterIntegrationTest.java    |  2 +-
 .../jdbc/PostgresJdbcDistributedTest.java          |  2 +-
 .../jdbc/PostgresJdbcLoaderIntegrationTest.java    |  2 +-
 .../jdbc/PostgresJdbcWriterIntegrationTest.java    |  2 +-
 .../MySqlTableMetaDataManagerIntegrationTest.java  |  2 +-
 ...ostgresTableMetaDataManagerIntegrationTest.java |  2 +-
 .../geode/connectors/jdbc/internal/mysql.yml       | 28 ++++++++++++++++++++++
 .../geode/connectors/jdbc/internal/postgres.yml    | 27 +++++++++++++++++++++
 .../org/apache/geode/connectors/jdbc/mysql.yml     | 28 ++++++++++++++++++++++
 .../org/apache/geode/connectors/jdbc/postgres.yml  | 27 +++++++++++++++++++++
 14 files changed, 120 insertions(+), 10 deletions(-)

diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java
index 8e758d9..37a057d 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java
@@ -29,7 +29,7 @@ import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 public class MySqlJdbcAsyncWriterIntegrationTest extends JdbcAsyncWriterIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
-      MySqlJdbcAsyncWriterIntegrationTest.class.getResource("docker/mysql.yml");
+      MySqlJdbcAsyncWriterIntegrationTest.class.getResource("mysql.yml");
 
   @ClassRule
   public static DatabaseConnectionRule dbRule = new MySqlConnectionRule.Builder()
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
index a21ea07..347b03d 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
@@ -35,7 +35,7 @@ import org.apache.geode.test.junit.rules.SqlDatabaseConnectionRule;
 public class MySqlJdbcDistributedTest extends JdbcDistributedTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
-      MySqlJdbcDistributedTest.class.getResource("docker/mysql.yml");
+      MySqlJdbcDistributedTest.class.getResource("mysql.yml");
 
   @ClassRule
   public static transient SqlDatabaseConnectionRule dbRule = createConnectionRule();
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
index 14bd3f2..0d75045 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
@@ -30,7 +30,7 @@ import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 public class MySqlJdbcLoaderIntegrationTest extends JdbcLoaderIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
-      MySqlJdbcLoaderIntegrationTest.class.getResource("docker/mysql.yml");
+      MySqlJdbcLoaderIntegrationTest.class.getResource("mysql.yml");
 
   @ClassRule
   public static DatabaseConnectionRule dbRule = new MySqlConnectionRule.Builder()
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java
index 12ceec9..7d64ad0 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java
@@ -29,7 +29,7 @@ import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 public class MySqlJdbcWriterIntegrationTest extends JdbcWriterIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
-      MySqlJdbcWriterIntegrationTest.class.getResource("docker/mysql.yml");
+      MySqlJdbcWriterIntegrationTest.class.getResource("mysql.yml");
 
   @ClassRule
   public static DatabaseConnectionRule dbRule = new MySqlConnectionRule.Builder()
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java
index fbaa93d..4dbacea 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java
@@ -29,7 +29,7 @@ import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 public class PostgresJdbcAsyncWriterIntegrationTest extends JdbcAsyncWriterIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
-      PostgresJdbcAsyncWriterIntegrationTest.class.getResource("docker/postgres.yml");
+      PostgresJdbcAsyncWriterIntegrationTest.class.getResource("postgres.yml");
 
   @ClassRule
   public static DatabaseConnectionRule dbRule = new PostgresConnectionRule.Builder()
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
index 5009cd7..25f33c9 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
@@ -35,7 +35,7 @@ import org.apache.geode.test.junit.rules.SqlDatabaseConnectionRule;
 public class PostgresJdbcDistributedTest extends JdbcDistributedTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
-      PostgresJdbcDistributedTest.class.getResource("docker/postgres.yml");
+      PostgresJdbcDistributedTest.class.getResource("postgres.yml");
 
   @ClassRule
   public static transient SqlDatabaseConnectionRule dbRule = createConnectionRule();
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
index d9acdea..3b9755f 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
@@ -30,7 +30,7 @@ import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 public class PostgresJdbcLoaderIntegrationTest extends JdbcLoaderIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
-      PostgresJdbcLoaderIntegrationTest.class.getResource("docker/postgres.yml");
+      PostgresJdbcLoaderIntegrationTest.class.getResource("postgres.yml");
 
   @ClassRule
   public static DatabaseConnectionRule dbRule = new PostgresConnectionRule.Builder()
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java
index e3f273e..98d45c0 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java
@@ -29,7 +29,7 @@ import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 public class PostgresJdbcWriterIntegrationTest extends JdbcWriterIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
-      PostgresJdbcWriterIntegrationTest.class.getResource("docker/postgres.yml");
+      PostgresJdbcWriterIntegrationTest.class.getResource("postgres.yml");
 
   @ClassRule
   public static DatabaseConnectionRule dbRule = new PostgresConnectionRule.Builder()
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java
index 4749b55..44d3365 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java
@@ -29,7 +29,7 @@ import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 public class MySqlTableMetaDataManagerIntegrationTest extends TableMetaDataManagerIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
-      MySqlTableMetaDataManagerIntegrationTest.class.getResource("../docker/mysql.yml");
+      MySqlTableMetaDataManagerIntegrationTest.class.getResource("mysql.yml");
 
   @ClassRule
   public static DatabaseConnectionRule dbRule = new MySqlConnectionRule.Builder()
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java
index 4a7a1a7..c5304ae 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java
@@ -30,7 +30,7 @@ public class PostgresTableMetaDataManagerIntegrationTest
     extends TableMetaDataManagerIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
-      PostgresTableMetaDataManagerIntegrationTest.class.getResource("../docker/postgres.yml");
+      PostgresTableMetaDataManagerIntegrationTest.class.getResource("postgres.yml");
 
   @ClassRule
   public static DatabaseConnectionRule dbRule = new PostgresConnectionRule.Builder()
diff --git a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/internal/mysql.yml b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/internal/mysql.yml
new file mode 100644
index 0000000..97e1c32
--- /dev/null
+++ b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/internal/mysql.yml
@@ -0,0 +1,28 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+version: '3.1'
+
+services:
+
+  db:
+    image: mysql:5.7
+    restart: always
+    ports:
+        - 3306
+    environment:
+      MYSQL_ALLOW_EMPTY_PASSWORD: "true"
+      #MYSQL_ROOT_PASSWORD: "secret"
\ No newline at end of file
diff --git a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/internal/postgres.yml b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/internal/postgres.yml
new file mode 100644
index 0000000..2380b9e
--- /dev/null
+++ b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/internal/postgres.yml
@@ -0,0 +1,27 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+version: '3.1'
+
+services:
+
+  db:
+    image: postgres
+    restart: always
+    ports:
+      - 5432
+    environment:
+      POSTGRES_DB: test
diff --git a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/mysql.yml b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/mysql.yml
new file mode 100644
index 0000000..97e1c32
--- /dev/null
+++ b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/mysql.yml
@@ -0,0 +1,28 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+version: '3.1'
+
+services:
+
+  db:
+    image: mysql:5.7
+    restart: always
+    ports:
+        - 3306
+    environment:
+      MYSQL_ALLOW_EMPTY_PASSWORD: "true"
+      #MYSQL_ROOT_PASSWORD: "secret"
\ No newline at end of file
diff --git a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/postgres.yml b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/postgres.yml
new file mode 100644
index 0000000..2380b9e
--- /dev/null
+++ b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/postgres.yml
@@ -0,0 +1,27 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+version: '3.1'
+
+services:
+
+  db:
+    image: postgres
+    restart: always
+    ports:
+      - 5432
+    environment:
+      POSTGRES_DB: test

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 03/23: GEODE-4947: Add Derby connection rule

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit 6603bdc9a1ccf9373157186052b3a67f38e9d059
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Tue Mar 27 14:24:04 2018 -0700

    GEODE-4947: Add Derby connection rule
---
 .../DerbyTableMetaDataManagerIntegrationTest.java  |  43 ++++++++
 .../MySqlTableMetaDataManagerIntegrationTest.java  |  39 +++++++
 ...ostgresTableMetaDataManagerIntegrationTest.java |  40 ++++++++
 .../TableMetaDataManagerIntegrationTest.java       |  28 +++--
 .../TableMetaDataManagerMySqlIntegrationTest.java  | 113 --------------------
 ...ableMetaDataManagerPostgresIntegrationTest.java | 114 ---------------------
 .../test/junit/rules/DatabaseConnectionRule.java   | 103 +------------------
 ...nRule.java => InMemoryDerbyConnectionRule.java} |  37 +++----
 .../test/junit/rules/MySqlConnectionRule.java      |   4 +-
 .../test/junit/rules/PostgresConnectionRule.java   |   4 +-
 ...ionRule.java => SqlDatabaseConnectionRule.java} |   6 +-
 11 files changed, 165 insertions(+), 366 deletions(-)

diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/DerbyTableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/DerbyTableMetaDataManagerIntegrationTest.java
new file mode 100644
index 0000000..8f0ed43
--- /dev/null
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/DerbyTableMetaDataManagerIntegrationTest.java
@@ -0,0 +1,43 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
+ * agreements. See the NOTICE file distributed with this work for additional information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package org.apache.geode.connectors.jdbc.internal;
+
+import java.sql.Connection;
+import java.sql.SQLException;
+
+import org.junit.Rule;
+import org.junit.experimental.categories.Category;
+
+import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
+import org.apache.geode.test.junit.rules.InMemoryDerbyConnectionRule;
+
+@Category(IntegrationTest.class)
+public class DerbyTableMetaDataManagerIntegrationTest extends TableMetaDataManagerIntegrationTest {
+
+  @Rule
+  public DatabaseConnectionRule dbRule = new InMemoryDerbyConnectionRule(DB_NAME);
+
+  @Override
+  protected Connection getConnection() throws SQLException {
+    return dbRule.getConnection();
+  }
+
+  @Override
+  protected void createTable() throws SQLException {
+    statement.execute("Create Table " + REGION_TABLE_NAME
+        + " (\"id\" varchar(10) primary key not null, \"name\" varchar(10), \"age\" int)");
+  }
+}
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java
new file mode 100644
index 0000000..b69f88c
--- /dev/null
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java
@@ -0,0 +1,39 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
+ * agreements. See the NOTICE file distributed with this work for additional information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package org.apache.geode.connectors.jdbc.internal;
+
+import java.sql.Connection;
+import java.sql.SQLException;
+
+import org.junit.ClassRule;
+import org.junit.experimental.categories.Category;
+
+import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
+import org.apache.geode.test.junit.rules.MySqlConnectionRule;
+
+@Category(IntegrationTest.class)
+public class MySqlTableMetaDataManagerIntegrationTest extends TableMetaDataManagerIntegrationTest {
+
+  @ClassRule
+  public static DatabaseConnectionRule dbRule =
+      new MySqlConnectionRule.Builder().file("src/test/resources/docker/mysql.yml")
+          .serviceName("db").port(3306).database(DB_NAME).build();
+
+  @Override
+  public Connection getConnection() throws SQLException {
+    return dbRule.getConnection();
+  }
+}
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java
new file mode 100644
index 0000000..21573e9
--- /dev/null
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java
@@ -0,0 +1,40 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
+ * agreements. See the NOTICE file distributed with this work for additional information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package org.apache.geode.connectors.jdbc.internal;
+
+import java.sql.Connection;
+import java.sql.SQLException;
+
+import org.junit.ClassRule;
+import org.junit.experimental.categories.Category;
+
+import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
+import org.apache.geode.test.junit.rules.PostgresConnectionRule;
+
+@Category(IntegrationTest.class)
+public class PostgresTableMetaDataManagerIntegrationTest
+    extends TableMetaDataManagerIntegrationTest {
+
+  @ClassRule
+  public static DatabaseConnectionRule dbRule =
+      new PostgresConnectionRule.Builder().file("src/test/resources/docker/postgres.yml")
+          .serviceName("db").port(5432).database(DB_NAME).build();
+
+  @Override
+  public Connection getConnection() throws SQLException {
+    return dbRule.getConnection();
+  }
+}
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerIntegrationTest.java
index cf91661..02a6584 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerIntegrationTest.java
@@ -19,7 +19,7 @@ package org.apache.geode.connectors.jdbc.internal;
 import static org.assertj.core.api.Assertions.assertThat;
 
 import java.sql.Connection;
-import java.sql.DriverManager;
+import java.sql.SQLException;
 import java.sql.Statement;
 import java.sql.Types;
 
@@ -31,22 +31,20 @@ import org.junit.experimental.categories.Category;
 import org.apache.geode.test.junit.categories.IntegrationTest;
 
 @Category(IntegrationTest.class)
-public class TableMetaDataManagerIntegrationTest {
+public abstract class TableMetaDataManagerIntegrationTest {
 
-  private static final String DB_NAME = "DerbyDB";
-  private static final String REGION_TABLE_NAME = "employees";
-  private static final String CONNECTION_URL = "jdbc:derby:memory:" + DB_NAME + ";create=true";
+  protected static final String REGION_TABLE_NAME = "employees";
+  protected static final String DB_NAME = "test";
 
-  private TableMetaDataManager manager;
-  private Connection connection;
-  private Statement statement;
+  protected TableMetaDataManager manager;
+  protected Connection connection;
+  protected Statement statement;
 
   @Before
   public void setup() throws Exception {
-    connection = DriverManager.getConnection(CONNECTION_URL);
+    connection = getConnection();
     statement = connection.createStatement();
-    statement.execute("Create Table " + REGION_TABLE_NAME
-        + " (\"id\" varchar(10) primary key not null, \"name\" varchar(10), \"age\" int)");
+    createTable();
     manager = new TableMetaDataManager();
   }
 
@@ -67,6 +65,14 @@ public class TableMetaDataManagerIntegrationTest {
     }
   }
 
+  protected abstract Connection getConnection() throws SQLException;
+
+  protected void createTable() throws SQLException {
+    statement.execute("CREATE TABLE " + REGION_TABLE_NAME
+        + " (id VARCHAR(10) primary key not null, name VARCHAR(10), age int)");
+
+  }
+
   @Test
   public void validateKeyColumnName() {
     TableMetaDataView metaData = manager.getTableMetaDataView(connection, REGION_TABLE_NAME);
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerMySqlIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerMySqlIntegrationTest.java
deleted file mode 100644
index 25cac1b..0000000
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerMySqlIntegrationTest.java
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
- * agreements. See the NOTICE file distributed with this work for additional information regarding
- * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance with the License. You may obtain a
- * copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License
- * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied. See the License for the specific language governing permissions and limitations under
- * the License.
- */
-package org.apache.geode.connectors.jdbc.internal;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import java.sql.Connection;
-import java.sql.DatabaseMetaData;
-import java.sql.Statement;
-import java.sql.Types;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.ClassRule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
-
-import org.apache.geode.test.junit.categories.IntegrationTest;
-import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
-import org.apache.geode.test.junit.rules.MySqlConnectionRule;
-
-@Category(IntegrationTest.class)
-public class TableMetaDataManagerMySqlIntegrationTest {
-
-  private static final String DB_NAME = "test";
-  private static final String REGION_TABLE_NAME = "employees";
-
-  private TableMetaDataManager manager;
-  private Connection connection;
-  private Statement statement;
-
-  @ClassRule
-  public static DatabaseConnectionRule dbRule =
-      new MySqlConnectionRule.Builder().file("src/test/resources/docker/mysql.yml")
-          .serviceName("db").port(3306).database(DB_NAME).build();
-
-  @Before
-  public void setup() throws Exception {
-    connection = dbRule.getConnection();
-    statement = connection.createStatement();
-    statement.execute("Create Table " + REGION_TABLE_NAME
-        + " (id VARCHAR(10) primary key not null, name VARCHAR(10), age int)");
-    manager = new TableMetaDataManager();
-    DatabaseMetaData data = connection.getMetaData();
-    data.getConnection();
-  }
-
-  @After
-  public void tearDown() throws Exception {
-    closeDB();
-  }
-
-  private void closeDB() throws Exception {
-    if (statement == null) {
-      statement = connection.createStatement();
-    }
-    statement.execute("Drop table " + REGION_TABLE_NAME);
-    statement.close();
-
-    if (connection != null) {
-      connection.close();
-    }
-  }
-
-  @Test
-  public void validateKeyColumnName() {
-    TableMetaDataView metaData = manager.getTableMetaDataView(connection, REGION_TABLE_NAME);
-
-    String keyColumnName = metaData.getKeyColumnName();
-
-    assertThat(keyColumnName).isEqualToIgnoringCase("id");
-  }
-
-  @Test
-  public void validateColumnDataTypeForName() {
-    TableMetaDataView metaData = manager.getTableMetaDataView(connection, REGION_TABLE_NAME);
-
-    int nameDataType = metaData.getColumnDataType("name");
-
-    assertThat(nameDataType).isEqualTo(Types.VARCHAR);
-  }
-
-  @Test
-  public void validateColumnDataTypeForId() {
-    TableMetaDataView metaData = manager.getTableMetaDataView(connection, REGION_TABLE_NAME);
-
-    int nameDataType = metaData.getColumnDataType("id");
-
-    assertThat(nameDataType).isEqualTo(Types.VARCHAR);
-  }
-
-  @Test
-  public void validateColumnDataTypeForAge() {
-    TableMetaDataView metaData = manager.getTableMetaDataView(connection, REGION_TABLE_NAME);
-
-    int nameDataType = metaData.getColumnDataType("age");
-
-    assertThat(nameDataType).isEqualTo(Types.INTEGER);
-  }
-
-}
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerPostgresIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerPostgresIntegrationTest.java
deleted file mode 100644
index 0538e13..0000000
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerPostgresIntegrationTest.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
- * agreements. See the NOTICE file distributed with this work for additional information regarding
- * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance with the License. You may obtain a
- * copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License
- * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied. See the License for the specific language governing permissions and limitations under
- * the License.
- */
-package org.apache.geode.connectors.jdbc.internal;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import java.sql.Connection;
-import java.sql.DatabaseMetaData;
-import java.sql.Statement;
-import java.sql.Types;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.ClassRule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
-
-import org.apache.geode.test.junit.categories.IntegrationTest;
-import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
-import org.apache.geode.test.junit.rules.MySqlConnectionRule;
-import org.apache.geode.test.junit.rules.PostgresConnectionRule;
-
-@Category(IntegrationTest.class)
-public class TableMetaDataManagerPostgresIntegrationTest {
-
-  private static final String DB_NAME = "test";
-  private static final String REGION_TABLE_NAME = "employees";
-
-  private TableMetaDataManager manager;
-  private Connection connection;
-  private Statement statement;
-
-  @ClassRule
-  public static DatabaseConnectionRule dbRule =
-      new PostgresConnectionRule.Builder().file("src/test/resources/docker/postgres.yml")
-          .serviceName("db").port(5432).database(DB_NAME).build();
-
-  @Before
-  public void setup() throws Exception {
-    connection = dbRule.getConnection();
-    statement = connection.createStatement();
-    statement.execute("Create Table " + REGION_TABLE_NAME
-        + " (id VARCHAR(10) primary key not null, name VARCHAR(10), age int)");
-    manager = new TableMetaDataManager();
-    DatabaseMetaData data = connection.getMetaData();
-    data.getConnection();
-  }
-
-  @After
-  public void tearDown() throws Exception {
-    closeDB();
-  }
-
-  private void closeDB() throws Exception {
-    if (statement == null) {
-      statement = connection.createStatement();
-    }
-    statement.execute("Drop table " + REGION_TABLE_NAME);
-    statement.close();
-
-    if (connection != null) {
-      connection.close();
-    }
-  }
-
-  @Test
-  public void validateKeyColumnName() {
-    TableMetaDataView metaData = manager.getTableMetaDataView(connection, REGION_TABLE_NAME);
-
-    String keyColumnName = metaData.getKeyColumnName();
-
-    assertThat(keyColumnName).isEqualToIgnoringCase("id");
-  }
-
-  @Test
-  public void validateColumnDataTypeForName() {
-    TableMetaDataView metaData = manager.getTableMetaDataView(connection, REGION_TABLE_NAME);
-
-    int nameDataType = metaData.getColumnDataType("name");
-
-    assertThat(nameDataType).isEqualTo(Types.VARCHAR);
-  }
-
-  @Test
-  public void validateColumnDataTypeForId() {
-    TableMetaDataView metaData = manager.getTableMetaDataView(connection, REGION_TABLE_NAME);
-
-    int nameDataType = metaData.getColumnDataType("id");
-
-    assertThat(nameDataType).isEqualTo(Types.VARCHAR);
-  }
-
-  @Test
-  public void validateColumnDataTypeForAge() {
-    TableMetaDataView metaData = manager.getTableMetaDataView(connection, REGION_TABLE_NAME);
-
-    int nameDataType = metaData.getColumnDataType("age");
-
-    assertThat(nameDataType).isEqualTo(Types.INTEGER);
-  }
-
-}
diff --git a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java
index 0bae5fa..bd1c9cf 100644
--- a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java
+++ b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java
@@ -14,108 +14,11 @@
  */
 package org.apache.geode.test.junit.rules;
 
-import static org.awaitility.Awaitility.matches;
-
-import java.io.IOException;
 import java.sql.Connection;
-import java.sql.DriverManager;
 import java.sql.SQLException;
-import java.util.concurrent.TimeUnit;
-
-import com.palantir.docker.compose.DockerComposeRule;
-import com.palantir.docker.compose.connection.DockerPort;
-import com.palantir.docker.compose.connection.waiting.HealthChecks;
-import org.awaitility.Awaitility;
-import org.junit.rules.ExternalResource;
-
-public abstract class DatabaseConnectionRule extends ExternalResource {
-
-  private final DockerComposeRule dockerRule;
-  private final String serviceName;
-  private final int port;
-  private final String dbName;
-
-  protected DatabaseConnectionRule(DockerComposeRule dockerRule, String serviceName, int port,
-      String dbName) {
-    this.dockerRule = dockerRule;
-    this.serviceName = serviceName;
-    this.port = port;
-    this.dbName = dbName;
-  }
-
-  @Override
-  public void before() throws IOException, InterruptedException {
-    dockerRule.before();
-  }
-
-  @Override
-  public void after() {
-    dockerRule.after();
-  }
-
-  protected DockerPort getDockerPort() {
-    return dockerRule.containers().container(serviceName).port(port);
-  }
-
-  protected String getDbName() {
-    return dbName;
-  }
-
-  public Connection getConnection() throws SQLException {
-    String connectionUrl = getConnectionString();
-    Awaitility.await().ignoreExceptions().atMost(10, TimeUnit.SECONDS)
-        .until(matches(() -> DriverManager.getConnection(connectionUrl)));
-    Connection connection = DriverManager.getConnection(connectionUrl);
-    return connection;
-  }
-
-  protected abstract String getConnectionString();
-
-  public abstract static class Builder {
-    private String filePath;
-    private String serviceName;
-    private int port;
-    private String dbName;
-
-    public abstract DatabaseConnectionRule build();
-
-    public Builder file(String filePath) {
-      this.filePath = filePath;
-      return this;
-    }
-
-    public Builder serviceName(String serviceName) {
-      this.serviceName = serviceName;
-      return this;
-    }
-
-    public Builder port(int port) {
-      this.port = port;
-      return this;
-    }
-
-    public Builder database(String dbName) {
-      this.dbName = dbName;
-      return this;
-    }
-
-    protected String getDbName() {
-      return dbName;
-    }
-
-    protected String getServiceName() {
-      return serviceName;
-    }
-
-    protected int getPort() {
-      return port;
-    }
-
-    protected DockerComposeRule createDockerRule() {
-      return DockerComposeRule.builder().file(filePath)
-          .waitingForService(serviceName, HealthChecks.toHaveAllPortsOpen()).build();
-    }
 
-  }
+import org.junit.rules.TestRule;
 
+public interface DatabaseConnectionRule extends TestRule {
+  Connection getConnection() throws SQLException;
 }
diff --git a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/PostgresConnectionRule.java b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/InMemoryDerbyConnectionRule.java
similarity index 50%
copy from geode-connectors/src/test/java/org/apache/geode/test/junit/rules/PostgresConnectionRule.java
copy to geode-connectors/src/test/java/org/apache/geode/test/junit/rules/InMemoryDerbyConnectionRule.java
index 557d617..299a858 100644
--- a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/PostgresConnectionRule.java
+++ b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/InMemoryDerbyConnectionRule.java
@@ -14,32 +14,25 @@
  */
 package org.apache.geode.test.junit.rules;
 
-import com.palantir.docker.compose.DockerComposeRule;
+import java.sql.Connection;
+import java.sql.DriverManager;
+import java.sql.SQLException;
 
-public class PostgresConnectionRule extends DatabaseConnectionRule {
-  private static final String CONNECTION_STRING =
-      "jdbc:postgresql://$HOST:$EXTERNAL_PORT/%s?user=postgres";
+import org.junit.rules.ExternalResource;
 
-  protected PostgresConnectionRule(DockerComposeRule dockerRule, String serviceName, int port,
-      String dbName) {
-    super(dockerRule, serviceName, port, dbName);
-  }
-
-  @Override
-  protected String getConnectionString() {
-    return getDockerPort().inFormat(String.format(CONNECTION_STRING, getDbName()));
-  }
+public class InMemoryDerbyConnectionRule extends ExternalResource
+    implements DatabaseConnectionRule {
+  private static final String CONNECTION_URL = "jdbc:derby:memory:%s;create=true";
 
-  public static class Builder extends DatabaseConnectionRule.Builder {
+  private final String dbName;
 
-    public Builder() {
-      super();
-    }
+  public InMemoryDerbyConnectionRule(String dbName) {
+    this.dbName = dbName;
+  }
 
-    @Override
-    public PostgresConnectionRule build() {
-      return new PostgresConnectionRule(createDockerRule(), getServiceName(), getPort(),
-          getDbName());
-    }
+  @Override
+  public Connection getConnection() throws SQLException {
+    String url = String.format(CONNECTION_URL, dbName);
+    return DriverManager.getConnection(url);
   }
 }
diff --git a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java
index 4925c6d..8a3d34f 100644
--- a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java
+++ b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java
@@ -19,7 +19,7 @@ import java.sql.SQLException;
 
 import com.palantir.docker.compose.DockerComposeRule;
 
-public class MySqlConnectionRule extends DatabaseConnectionRule {
+public class MySqlConnectionRule extends SqlDatabaseConnectionRule {
   private static final String CONNECTION_STRING =
       "jdbc:mysql://$HOST:$EXTERNAL_PORT?user=root&useSSL=false";
 
@@ -44,7 +44,7 @@ public class MySqlConnectionRule extends DatabaseConnectionRule {
     return getDockerPort().inFormat(CONNECTION_STRING);
   }
 
-  public static class Builder extends DatabaseConnectionRule.Builder {
+  public static class Builder extends SqlDatabaseConnectionRule.Builder {
 
     public Builder() {
       super();
diff --git a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/PostgresConnectionRule.java b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/PostgresConnectionRule.java
index 557d617..a3d064c 100644
--- a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/PostgresConnectionRule.java
+++ b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/PostgresConnectionRule.java
@@ -16,7 +16,7 @@ package org.apache.geode.test.junit.rules;
 
 import com.palantir.docker.compose.DockerComposeRule;
 
-public class PostgresConnectionRule extends DatabaseConnectionRule {
+public class PostgresConnectionRule extends SqlDatabaseConnectionRule {
   private static final String CONNECTION_STRING =
       "jdbc:postgresql://$HOST:$EXTERNAL_PORT/%s?user=postgres";
 
@@ -30,7 +30,7 @@ public class PostgresConnectionRule extends DatabaseConnectionRule {
     return getDockerPort().inFormat(String.format(CONNECTION_STRING, getDbName()));
   }
 
-  public static class Builder extends DatabaseConnectionRule.Builder {
+  public static class Builder extends SqlDatabaseConnectionRule.Builder {
 
     public Builder() {
       super();
diff --git a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/SqlDatabaseConnectionRule.java
similarity index 93%
copy from geode-connectors/src/test/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java
copy to geode-connectors/src/test/java/org/apache/geode/test/junit/rules/SqlDatabaseConnectionRule.java
index 0bae5fa..2897873 100644
--- a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java
+++ b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/SqlDatabaseConnectionRule.java
@@ -28,14 +28,15 @@ import com.palantir.docker.compose.connection.waiting.HealthChecks;
 import org.awaitility.Awaitility;
 import org.junit.rules.ExternalResource;
 
-public abstract class DatabaseConnectionRule extends ExternalResource {
+public abstract class SqlDatabaseConnectionRule extends ExternalResource
+    implements DatabaseConnectionRule {
 
   private final DockerComposeRule dockerRule;
   private final String serviceName;
   private final int port;
   private final String dbName;
 
-  protected DatabaseConnectionRule(DockerComposeRule dockerRule, String serviceName, int port,
+  protected SqlDatabaseConnectionRule(DockerComposeRule dockerRule, String serviceName, int port,
       String dbName) {
     this.dockerRule = dockerRule;
     this.serviceName = serviceName;
@@ -61,6 +62,7 @@ public abstract class DatabaseConnectionRule extends ExternalResource {
     return dbName;
   }
 
+  @Override
   public Connection getConnection() throws SQLException {
     String connectionUrl = getConnectionString();
     Awaitility.await().ignoreExceptions().atMost(10, TimeUnit.SECONDS)

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 17/23: GEODE-4947: Remove duplicate code

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit b8fe4a0e115484d80dc31404ebe0ab29f7a06e0f
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Mon Apr 2 15:21:57 2018 -0700

    GEODE-4947: Remove duplicate code
---
 .../java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java   | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
index d3c6f07..bafe015 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
@@ -161,11 +161,6 @@ public abstract class JdbcDistributedTest implements Serializable {
           statement.execute("Drop table " + TABLE_NAME);
         } catch (SQLException ignore) {
         }
-
-        try {
-          statement.execute("Drop table " + TABLE_NAME + "");
-        } catch (SQLException ignore) {
-        }
       }
     }
   }

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 16/23: GEODE-4947: Downgrade docker compose version in config files

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit 1dd8aaefa51bff625b044a6e76e00f0ec25b4e78
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Mon Apr 2 14:31:53 2018 -0700

    GEODE-4947: Downgrade docker compose version in config files
---
 .../test/resources/org/apache/geode/connectors/jdbc/internal/mysql.yml  | 2 +-
 .../resources/org/apache/geode/connectors/jdbc/internal/postgres.yml    | 2 +-
 .../src/test/resources/org/apache/geode/connectors/jdbc/mysql.yml       | 2 +-
 .../src/test/resources/org/apache/geode/connectors/jdbc/postgres.yml    | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/internal/mysql.yml b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/internal/mysql.yml
index 97e1c32..6b127df 100644
--- a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/internal/mysql.yml
+++ b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/internal/mysql.yml
@@ -14,7 +14,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #
-version: '3.1'
+version: '2.0'
 
 services:
 
diff --git a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/internal/postgres.yml b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/internal/postgres.yml
index 2380b9e..2320682 100644
--- a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/internal/postgres.yml
+++ b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/internal/postgres.yml
@@ -14,7 +14,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #
-version: '3.1'
+version: '2.0'
 
 services:
 
diff --git a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/mysql.yml b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/mysql.yml
index 97e1c32..6b127df 100644
--- a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/mysql.yml
+++ b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/mysql.yml
@@ -14,7 +14,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #
-version: '3.1'
+version: '2.0'
 
 services:
 
diff --git a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/postgres.yml b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/postgres.yml
index 2380b9e..2320682 100644
--- a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/postgres.yml
+++ b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/postgres.yml
@@ -14,7 +14,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #
-version: '3.1'
+version: '2.0'
 
 services:
 

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 02/23: GEODE-4947: Add Postgres test rule and test utilizing it

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit 4e83237f15764a8f07ebd629f57436db3f696799
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Tue Mar 27 10:38:10 2018 -0700

    GEODE-4947: Add Postgres test rule and test utilizing it
---
 geode-connectors/build.gradle                      |   3 +-
 ...ableMetaDataManagerPostgresIntegrationTest.java | 114 +++++++++++++++++++++
 .../test/junit/rules/DatabaseConnectionRule.java   |  10 +-
 .../test/junit/rules/MySqlConnectionRule.java      |  14 +++
 ...ectionRule.java => PostgresConnectionRule.java} |  13 +--
 .../src/test/resources/docker/postgres.yml         |  11 ++
 6 files changed, 153 insertions(+), 12 deletions(-)

diff --git a/geode-connectors/build.gradle b/geode-connectors/build.gradle
index 432fbd5..005f498 100644
--- a/geode-connectors/build.gradle
+++ b/geode-connectors/build.gradle
@@ -25,13 +25,14 @@ dependencies {
     compile project(':geode-core')
     compile project(':geode-common')
     compile group: 'com.zaxxer', name: 'HikariCP', version: project.'HikariCP.version'
-    compile group: 'mysql', name: 'mysql-connector-java', version: '5.1.46'
 
 
     testCompile project(':geode-junit')
 
     //Connectors test framework.
     testRuntime 'org.apache.derby:derby:' + project.'derby.version'
+    testCompile group: 'mysql', name: 'mysql-connector-java', version: '5.1.46'
+    testCompile group: 'org.postgresql', name: 'postgresql', version: '42.2.2'
     testCompile 'com.palantir.docker.compose:docker-compose-rule-junit4:0.31.1'
     testCompile 'com.pholser:junit-quickcheck-core:' + project.'junit-quickcheck.version'
     testCompile 'com.pholser:junit-quickcheck-generators:' + project.'junit-quickcheck.version'
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerPostgresIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerPostgresIntegrationTest.java
new file mode 100644
index 0000000..0538e13
--- /dev/null
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerPostgresIntegrationTest.java
@@ -0,0 +1,114 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
+ * agreements. See the NOTICE file distributed with this work for additional information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package org.apache.geode.connectors.jdbc.internal;
+
+import static org.assertj.core.api.Assertions.assertThat;
+
+import java.sql.Connection;
+import java.sql.DatabaseMetaData;
+import java.sql.Statement;
+import java.sql.Types;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.ClassRule;
+import org.junit.Test;
+import org.junit.experimental.categories.Category;
+
+import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
+import org.apache.geode.test.junit.rules.MySqlConnectionRule;
+import org.apache.geode.test.junit.rules.PostgresConnectionRule;
+
+@Category(IntegrationTest.class)
+public class TableMetaDataManagerPostgresIntegrationTest {
+
+  private static final String DB_NAME = "test";
+  private static final String REGION_TABLE_NAME = "employees";
+
+  private TableMetaDataManager manager;
+  private Connection connection;
+  private Statement statement;
+
+  @ClassRule
+  public static DatabaseConnectionRule dbRule =
+      new PostgresConnectionRule.Builder().file("src/test/resources/docker/postgres.yml")
+          .serviceName("db").port(5432).database(DB_NAME).build();
+
+  @Before
+  public void setup() throws Exception {
+    connection = dbRule.getConnection();
+    statement = connection.createStatement();
+    statement.execute("Create Table " + REGION_TABLE_NAME
+        + " (id VARCHAR(10) primary key not null, name VARCHAR(10), age int)");
+    manager = new TableMetaDataManager();
+    DatabaseMetaData data = connection.getMetaData();
+    data.getConnection();
+  }
+
+  @After
+  public void tearDown() throws Exception {
+    closeDB();
+  }
+
+  private void closeDB() throws Exception {
+    if (statement == null) {
+      statement = connection.createStatement();
+    }
+    statement.execute("Drop table " + REGION_TABLE_NAME);
+    statement.close();
+
+    if (connection != null) {
+      connection.close();
+    }
+  }
+
+  @Test
+  public void validateKeyColumnName() {
+    TableMetaDataView metaData = manager.getTableMetaDataView(connection, REGION_TABLE_NAME);
+
+    String keyColumnName = metaData.getKeyColumnName();
+
+    assertThat(keyColumnName).isEqualToIgnoringCase("id");
+  }
+
+  @Test
+  public void validateColumnDataTypeForName() {
+    TableMetaDataView metaData = manager.getTableMetaDataView(connection, REGION_TABLE_NAME);
+
+    int nameDataType = metaData.getColumnDataType("name");
+
+    assertThat(nameDataType).isEqualTo(Types.VARCHAR);
+  }
+
+  @Test
+  public void validateColumnDataTypeForId() {
+    TableMetaDataView metaData = manager.getTableMetaDataView(connection, REGION_TABLE_NAME);
+
+    int nameDataType = metaData.getColumnDataType("id");
+
+    assertThat(nameDataType).isEqualTo(Types.VARCHAR);
+  }
+
+  @Test
+  public void validateColumnDataTypeForAge() {
+    TableMetaDataView metaData = manager.getTableMetaDataView(connection, REGION_TABLE_NAME);
+
+    int nameDataType = metaData.getColumnDataType("age");
+
+    assertThat(nameDataType).isEqualTo(Types.INTEGER);
+  }
+
+}
diff --git a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java
index 1869172..0bae5fa 100644
--- a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java
+++ b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java
@@ -57,15 +57,15 @@ public abstract class DatabaseConnectionRule extends ExternalResource {
     return dockerRule.containers().container(serviceName).port(port);
   }
 
+  protected String getDbName() {
+    return dbName;
+  }
+
   public Connection getConnection() throws SQLException {
     String connectionUrl = getConnectionString();
     Awaitility.await().ignoreExceptions().atMost(10, TimeUnit.SECONDS)
         .until(matches(() -> DriverManager.getConnection(connectionUrl)));
     Connection connection = DriverManager.getConnection(connectionUrl);
-    if (dbName != null) {
-      connection.createStatement().execute("CREATE DATABASE IF NOT EXISTS " + dbName);
-      connection.setCatalog(dbName);
-    }
     return connection;
   }
 
@@ -104,7 +104,7 @@ public abstract class DatabaseConnectionRule extends ExternalResource {
     }
 
     protected String getServiceName() {
-      return  serviceName;
+      return serviceName;
     }
 
     protected int getPort() {
diff --git a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java
index 4cda016..4925c6d 100644
--- a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java
+++ b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java
@@ -14,6 +14,9 @@
  */
 package org.apache.geode.test.junit.rules;
 
+import java.sql.Connection;
+import java.sql.SQLException;
+
 import com.palantir.docker.compose.DockerComposeRule;
 
 public class MySqlConnectionRule extends DatabaseConnectionRule {
@@ -26,6 +29,17 @@ public class MySqlConnectionRule extends DatabaseConnectionRule {
   }
 
   @Override
+  public Connection getConnection() throws SQLException {
+    Connection connection = super.getConnection();
+    String dbName = getDbName();
+    if (dbName != null) {
+      connection.createStatement().execute("CREATE DATABASE IF NOT EXISTS " + dbName);
+      connection.setCatalog(dbName);
+    }
+    return connection;
+  }
+
+  @Override
   protected String getConnectionString() {
     return getDockerPort().inFormat(CONNECTION_STRING);
   }
diff --git a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/PostgresConnectionRule.java
similarity index 72%
copy from geode-connectors/src/test/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java
copy to geode-connectors/src/test/java/org/apache/geode/test/junit/rules/PostgresConnectionRule.java
index 4cda016..557d617 100644
--- a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java
+++ b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/PostgresConnectionRule.java
@@ -16,18 +16,18 @@ package org.apache.geode.test.junit.rules;
 
 import com.palantir.docker.compose.DockerComposeRule;
 
-public class MySqlConnectionRule extends DatabaseConnectionRule {
+public class PostgresConnectionRule extends DatabaseConnectionRule {
   private static final String CONNECTION_STRING =
-      "jdbc:mysql://$HOST:$EXTERNAL_PORT?user=root&useSSL=false";
+      "jdbc:postgresql://$HOST:$EXTERNAL_PORT/%s?user=postgres";
 
-  protected MySqlConnectionRule(DockerComposeRule dockerRule, String serviceName, int port,
+  protected PostgresConnectionRule(DockerComposeRule dockerRule, String serviceName, int port,
       String dbName) {
     super(dockerRule, serviceName, port, dbName);
   }
 
   @Override
   protected String getConnectionString() {
-    return getDockerPort().inFormat(CONNECTION_STRING);
+    return getDockerPort().inFormat(String.format(CONNECTION_STRING, getDbName()));
   }
 
   public static class Builder extends DatabaseConnectionRule.Builder {
@@ -37,8 +37,9 @@ public class MySqlConnectionRule extends DatabaseConnectionRule {
     }
 
     @Override
-    public MySqlConnectionRule build() {
-      return new MySqlConnectionRule(createDockerRule(), getServiceName(), getPort(), getDbName());
+    public PostgresConnectionRule build() {
+      return new PostgresConnectionRule(createDockerRule(), getServiceName(), getPort(),
+          getDbName());
     }
   }
 }
diff --git a/geode-connectors/src/test/resources/docker/postgres.yml b/geode-connectors/src/test/resources/docker/postgres.yml
new file mode 100644
index 0000000..1b2ce80
--- /dev/null
+++ b/geode-connectors/src/test/resources/docker/postgres.yml
@@ -0,0 +1,11 @@
+version: '3.1'
+
+services:
+
+  db:
+    image: postgres
+    restart: always
+    ports:
+      - 5432
+    environment:
+      POSTGRES_DB: test

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 10/23: GEODE-4947: Fix docker compose yml file references

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit a9838197f00d6c51fb39ec2c6790370e3f853d10
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Thu Mar 29 11:52:42 2018 -0700

    GEODE-4947: Fix docker compose yml file references
---
 .../org/apache/geode/connectors/jdbc/JdbcDistributedTest.java    | 5 -----
 .../apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java   | 2 +-
 .../geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java    | 2 +-
 .../geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java    | 2 +-
 .../connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java  | 2 +-
 .../geode/connectors/jdbc/PostgresJdbcDistributedTest.java       | 2 +-
 .../geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java | 2 +-
 .../geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java | 2 +-
 .../jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java  | 9 ++++++---
 .../internal/PostgresTableMetaDataManagerIntegrationTest.java    | 9 ++++++---
 10 files changed, 19 insertions(+), 18 deletions(-)

diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
index cfd6562..3c01a40 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
@@ -155,11 +155,6 @@ public abstract class JdbcDistributedTest implements Serializable {
   @After
   public void tearDown() throws Exception {
     closeDB();
-    /*
-     * server.invoke(() -> {
-     * closeDB();
-     * });
-     */
   }
 
   private void closeDB() throws SQLException {
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
index 32fb9f3..a21ea07 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
@@ -35,7 +35,7 @@ import org.apache.geode.test.junit.rules.SqlDatabaseConnectionRule;
 public class MySqlJdbcDistributedTest extends JdbcDistributedTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
-      MySqlJdbcAsyncWriterIntegrationTest.class.getResource("docker/mysql.yml");
+      MySqlJdbcDistributedTest.class.getResource("docker/mysql.yml");
 
   @ClassRule
   public static transient SqlDatabaseConnectionRule dbRule = createConnectionRule();
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
index 9ab31a0..14bd3f2 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
@@ -30,7 +30,7 @@ import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 public class MySqlJdbcLoaderIntegrationTest extends JdbcLoaderIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
-      MySqlJdbcAsyncWriterIntegrationTest.class.getResource("docker/mysql.yml");
+      MySqlJdbcLoaderIntegrationTest.class.getResource("docker/mysql.yml");
 
   @ClassRule
   public static DatabaseConnectionRule dbRule = new MySqlConnectionRule.Builder()
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java
index 50df180..12ceec9 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java
@@ -29,7 +29,7 @@ import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 public class MySqlJdbcWriterIntegrationTest extends JdbcWriterIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
-      MySqlJdbcAsyncWriterIntegrationTest.class.getResource("docker/mysql.yml");
+      MySqlJdbcWriterIntegrationTest.class.getResource("docker/mysql.yml");
 
   @ClassRule
   public static DatabaseConnectionRule dbRule = new MySqlConnectionRule.Builder()
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java
index 3b363c2..fbaa93d 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java
@@ -29,7 +29,7 @@ import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 public class PostgresJdbcAsyncWriterIntegrationTest extends JdbcAsyncWriterIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
-      MySqlJdbcAsyncWriterIntegrationTest.class.getResource("docker/postgres.yml");
+      PostgresJdbcAsyncWriterIntegrationTest.class.getResource("docker/postgres.yml");
 
   @ClassRule
   public static DatabaseConnectionRule dbRule = new PostgresConnectionRule.Builder()
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
index 82e0ec6..5009cd7 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
@@ -35,7 +35,7 @@ import org.apache.geode.test.junit.rules.SqlDatabaseConnectionRule;
 public class PostgresJdbcDistributedTest extends JdbcDistributedTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
-      MySqlJdbcAsyncWriterIntegrationTest.class.getResource("docker/postgres.yml");
+      PostgresJdbcDistributedTest.class.getResource("docker/postgres.yml");
 
   @ClassRule
   public static transient SqlDatabaseConnectionRule dbRule = createConnectionRule();
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
index 904a5b8..d9acdea 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
@@ -30,7 +30,7 @@ import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 public class PostgresJdbcLoaderIntegrationTest extends JdbcLoaderIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
-      MySqlJdbcAsyncWriterIntegrationTest.class.getResource("docker/postgres.yml");
+      PostgresJdbcLoaderIntegrationTest.class.getResource("docker/postgres.yml");
 
   @ClassRule
   public static DatabaseConnectionRule dbRule = new PostgresConnectionRule.Builder()
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java
index 1009119..e3f273e 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java
@@ -29,7 +29,7 @@ import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 public class PostgresJdbcWriterIntegrationTest extends JdbcWriterIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
-      MySqlJdbcAsyncWriterIntegrationTest.class.getResource("docker/postgres.yml");
+      PostgresJdbcWriterIntegrationTest.class.getResource("docker/postgres.yml");
 
   @ClassRule
   public static DatabaseConnectionRule dbRule = new PostgresConnectionRule.Builder()
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java
index b69f88c..4749b55 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java
@@ -14,6 +14,7 @@
  */
 package org.apache.geode.connectors.jdbc.internal;
 
+import java.net.URL;
 import java.sql.Connection;
 import java.sql.SQLException;
 
@@ -27,10 +28,12 @@ import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 @Category(IntegrationTest.class)
 public class MySqlTableMetaDataManagerIntegrationTest extends TableMetaDataManagerIntegrationTest {
 
+  private static final URL COMPOSE_RESOURCE_PATH =
+      MySqlTableMetaDataManagerIntegrationTest.class.getResource("../docker/mysql.yml");
+
   @ClassRule
-  public static DatabaseConnectionRule dbRule =
-      new MySqlConnectionRule.Builder().file("src/test/resources/docker/mysql.yml")
-          .serviceName("db").port(3306).database(DB_NAME).build();
+  public static DatabaseConnectionRule dbRule = new MySqlConnectionRule.Builder()
+      .file(COMPOSE_RESOURCE_PATH.getPath()).serviceName("db").port(3306).database(DB_NAME).build();
 
   @Override
   public Connection getConnection() throws SQLException {
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java
index 21573e9..4a7a1a7 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java
@@ -14,6 +14,7 @@
  */
 package org.apache.geode.connectors.jdbc.internal;
 
+import java.net.URL;
 import java.sql.Connection;
 import java.sql.SQLException;
 
@@ -28,10 +29,12 @@ import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 public class PostgresTableMetaDataManagerIntegrationTest
     extends TableMetaDataManagerIntegrationTest {
 
+  private static final URL COMPOSE_RESOURCE_PATH =
+      PostgresTableMetaDataManagerIntegrationTest.class.getResource("../docker/postgres.yml");
+
   @ClassRule
-  public static DatabaseConnectionRule dbRule =
-      new PostgresConnectionRule.Builder().file("src/test/resources/docker/postgres.yml")
-          .serviceName("db").port(5432).database(DB_NAME).build();
+  public static DatabaseConnectionRule dbRule = new PostgresConnectionRule.Builder()
+      .file(COMPOSE_RESOURCE_PATH.getPath()).serviceName("db").port(5432).database(DB_NAME).build();
 
   @Override
   public Connection getConnection() throws SQLException {

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 12/23: GEODE-4947: Protect against having no connection rule

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit ded7309a08f6acf54e1844598164ae235a07c8ea
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Thu Mar 29 15:30:18 2018 -0700

    GEODE-4947: Protect against having no connection rule
---
 .../java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java | 2 +-
 .../org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
index 347b03d..2576126 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
@@ -56,7 +56,7 @@ public class MySqlJdbcDistributedTest extends JdbcDistributedTest {
 
   @Override
   public String getConnectionUrl() {
-    return dbRule.getConnectionUrl();
+    return dbRule == null ? null : dbRule.getConnectionUrl();
   }
 
   @Override
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
index 25f33c9..6643cbe 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
@@ -56,7 +56,7 @@ public class PostgresJdbcDistributedTest extends JdbcDistributedTest {
 
   @Override
   public String getConnectionUrl() {
-    return dbRule.getConnectionUrl();
+    return dbRule == null ? null : dbRule.getConnectionUrl();
   }
 
   @Override

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 09/23: GEODE-4947: Improve pathing to docker compose resource files

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit 5bd24f61573913d8124f124e483bd4e4680b280d
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Thu Mar 29 11:08:02 2018 -0700

    GEODE-4947: Improve pathing to docker compose resource files
---
 .../jdbc/MySqlJdbcAsyncWriterIntegrationTest.java  | 10 ++++----
 .../connectors/jdbc/MySqlJdbcDistributedTest.java  |  9 ++++---
 .../jdbc/MySqlJdbcLoaderIntegrationTest.java       |  9 ++++---
 .../jdbc/MySqlJdbcWriterIntegrationTest.java       |  9 ++++---
 .../PostgresJdbcAsyncWriterIntegrationTest.java    |  9 ++++---
 .../jdbc/PostgresJdbcDistributedTest.java          |  9 ++++---
 .../jdbc/PostgresJdbcLoaderIntegrationTest.java    |  9 ++++---
 .../jdbc/PostgresJdbcWriterIntegrationTest.java    |  9 ++++---
 .../src/test/resources/docker/mysql.yml            | 12 ----------
 .../src/test/resources/docker/postgres.yml         | 11 ---------
 .../apache/geode/connectors/jdbc/docker/mysql.yml  | 28 ++++++++++++++++++++++
 .../geode/connectors/jdbc/docker/postgres.yml      | 27 +++++++++++++++++++++
 12 files changed, 103 insertions(+), 48 deletions(-)

diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java
index 2ca6ff4..8e758d9 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java
@@ -14,6 +14,7 @@
  */
 package org.apache.geode.connectors.jdbc;
 
+import java.net.URL;
 import java.sql.Connection;
 import java.sql.SQLException;
 
@@ -23,15 +24,16 @@ import org.junit.experimental.categories.Category;
 import org.apache.geode.test.junit.categories.IntegrationTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.MySqlConnectionRule;
-import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 
 @Category(IntegrationTest.class)
 public class MySqlJdbcAsyncWriterIntegrationTest extends JdbcAsyncWriterIntegrationTest {
 
+  private static final URL COMPOSE_RESOURCE_PATH =
+      MySqlJdbcAsyncWriterIntegrationTest.class.getResource("docker/mysql.yml");
+
   @ClassRule
-  public static DatabaseConnectionRule dbRule =
-      new MySqlConnectionRule.Builder().file("src/test/resources/docker/mysql.yml")
-          .serviceName("db").port(3306).database(DB_NAME).build();
+  public static DatabaseConnectionRule dbRule = new MySqlConnectionRule.Builder()
+      .file(COMPOSE_RESOURCE_PATH.getPath()).serviceName("db").port(3306).database(DB_NAME).build();
 
   @Override
   public Connection getConnection() throws SQLException {
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
index fc1f655..32fb9f3 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
@@ -14,6 +14,7 @@
  */
 package org.apache.geode.connectors.jdbc;
 
+import java.net.URL;
 import java.sql.Connection;
 import java.sql.PreparedStatement;
 import java.sql.SQLException;
@@ -33,13 +34,15 @@ import org.apache.geode.test.junit.rules.SqlDatabaseConnectionRule;
 @Category(DistributedTest.class)
 public class MySqlJdbcDistributedTest extends JdbcDistributedTest {
 
+  private static final URL COMPOSE_RESOURCE_PATH =
+      MySqlJdbcAsyncWriterIntegrationTest.class.getResource("docker/mysql.yml");
+
   @ClassRule
-  public static transient SqlDatabaseConnectionRule dbRule = createConnectionRule();// = new
-                                                                                    // MySqlConnectionRule.Builder().file("src/test/resources/docker/mysql.yml").serviceName("db").port(3306).database(DB_NAME).build();
+  public static transient SqlDatabaseConnectionRule dbRule = createConnectionRule();
 
   private static SqlDatabaseConnectionRule createConnectionRule() {
     try {
-      return new MySqlConnectionRule.Builder().file("src/test/resources/docker/mysql.yml")
+      return new MySqlConnectionRule.Builder().file(COMPOSE_RESOURCE_PATH.getPath())
           .serviceName("db").port(3306).database(DB_NAME).build();
     } catch (IllegalStateException e) {
       return null;
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
index c59cc41..9ab31a0 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
@@ -14,6 +14,7 @@
  */
 package org.apache.geode.connectors.jdbc;
 
+import java.net.URL;
 import java.sql.Connection;
 import java.sql.SQLException;
 import java.sql.Statement;
@@ -28,10 +29,12 @@ import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 @Category(IntegrationTest.class)
 public class MySqlJdbcLoaderIntegrationTest extends JdbcLoaderIntegrationTest {
 
+  private static final URL COMPOSE_RESOURCE_PATH =
+      MySqlJdbcAsyncWriterIntegrationTest.class.getResource("docker/mysql.yml");
+
   @ClassRule
-  public static DatabaseConnectionRule dbRule =
-      new MySqlConnectionRule.Builder().file("src/test/resources/docker/mysql.yml")
-          .serviceName("db").port(3306).database(DB_NAME).build();
+  public static DatabaseConnectionRule dbRule = new MySqlConnectionRule.Builder()
+      .file(COMPOSE_RESOURCE_PATH.getPath()).serviceName("db").port(3306).database(DB_NAME).build();
 
   @Override
   public Connection getConnection() throws SQLException {
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java
index 8ca1ca3..50df180 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java
@@ -14,6 +14,7 @@
  */
 package org.apache.geode.connectors.jdbc;
 
+import java.net.URL;
 import java.sql.Connection;
 import java.sql.SQLException;
 
@@ -27,10 +28,12 @@ import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 @Category(IntegrationTest.class)
 public class MySqlJdbcWriterIntegrationTest extends JdbcWriterIntegrationTest {
 
+  private static final URL COMPOSE_RESOURCE_PATH =
+      MySqlJdbcAsyncWriterIntegrationTest.class.getResource("docker/mysql.yml");
+
   @ClassRule
-  public static DatabaseConnectionRule dbRule =
-      new MySqlConnectionRule.Builder().file("src/test/resources/docker/mysql.yml")
-          .serviceName("db").port(3306).database(DB_NAME).build();
+  public static DatabaseConnectionRule dbRule = new MySqlConnectionRule.Builder()
+      .file(COMPOSE_RESOURCE_PATH.getPath()).serviceName("db").port(3306).database(DB_NAME).build();
 
   @Override
   public Connection getConnection() throws SQLException {
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java
index 31baf95..3b363c2 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java
@@ -14,6 +14,7 @@
  */
 package org.apache.geode.connectors.jdbc;
 
+import java.net.URL;
 import java.sql.Connection;
 import java.sql.SQLException;
 
@@ -27,10 +28,12 @@ import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 @Category(IntegrationTest.class)
 public class PostgresJdbcAsyncWriterIntegrationTest extends JdbcAsyncWriterIntegrationTest {
 
+  private static final URL COMPOSE_RESOURCE_PATH =
+      MySqlJdbcAsyncWriterIntegrationTest.class.getResource("docker/postgres.yml");
+
   @ClassRule
-  public static DatabaseConnectionRule dbRule =
-      new PostgresConnectionRule.Builder().file("src/test/resources/docker/postgres.yml")
-          .serviceName("db").port(5432).database(DB_NAME).build();
+  public static DatabaseConnectionRule dbRule = new PostgresConnectionRule.Builder()
+      .file(COMPOSE_RESOURCE_PATH.getPath()).serviceName("db").port(5432).database(DB_NAME).build();
 
   @Override
   public Connection getConnection() throws SQLException {
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
index 04c1a4f..82e0ec6 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
@@ -14,6 +14,7 @@
  */
 package org.apache.geode.connectors.jdbc;
 
+import java.net.URL;
 import java.sql.Connection;
 import java.sql.PreparedStatement;
 import java.sql.SQLException;
@@ -33,13 +34,15 @@ import org.apache.geode.test.junit.rules.SqlDatabaseConnectionRule;
 @Category(DistributedTest.class)
 public class PostgresJdbcDistributedTest extends JdbcDistributedTest {
 
+  private static final URL COMPOSE_RESOURCE_PATH =
+      MySqlJdbcAsyncWriterIntegrationTest.class.getResource("docker/postgres.yml");
+
   @ClassRule
-  public static transient SqlDatabaseConnectionRule dbRule = createConnectionRule();// = new
-                                                                                    // MySqlConnectionRule.Builder().file("src/test/resources/docker/mysql.yml").serviceName("db").port(3306).database(DB_NAME).build();
+  public static transient SqlDatabaseConnectionRule dbRule = createConnectionRule();
 
   private static SqlDatabaseConnectionRule createConnectionRule() {
     try {
-      return new PostgresConnectionRule.Builder().file("src/test/resources/docker/postgres.yml")
+      return new PostgresConnectionRule.Builder().file(COMPOSE_RESOURCE_PATH.getPath())
           .serviceName("db").port(5432).database(DB_NAME).build();
     } catch (IllegalStateException e) {
       return null;
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
index e9e4115..904a5b8 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
@@ -14,6 +14,7 @@
  */
 package org.apache.geode.connectors.jdbc;
 
+import java.net.URL;
 import java.sql.Connection;
 import java.sql.SQLException;
 import java.sql.Statement;
@@ -28,10 +29,12 @@ import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 @Category(IntegrationTest.class)
 public class PostgresJdbcLoaderIntegrationTest extends JdbcLoaderIntegrationTest {
 
+  private static final URL COMPOSE_RESOURCE_PATH =
+      MySqlJdbcAsyncWriterIntegrationTest.class.getResource("docker/postgres.yml");
+
   @ClassRule
-  public static DatabaseConnectionRule dbRule =
-      new PostgresConnectionRule.Builder().file("src/test/resources/docker/postgres.yml")
-          .serviceName("db").port(5432).database(DB_NAME).build();
+  public static DatabaseConnectionRule dbRule = new PostgresConnectionRule.Builder()
+      .file(COMPOSE_RESOURCE_PATH.getPath()).serviceName("db").port(5432).database(DB_NAME).build();
 
   @Override
   public Connection getConnection() throws SQLException {
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java
index ab2fe8d..1009119 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java
@@ -14,6 +14,7 @@
  */
 package org.apache.geode.connectors.jdbc;
 
+import java.net.URL;
 import java.sql.Connection;
 import java.sql.SQLException;
 
@@ -27,10 +28,12 @@ import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 @Category(IntegrationTest.class)
 public class PostgresJdbcWriterIntegrationTest extends JdbcWriterIntegrationTest {
 
+  private static final URL COMPOSE_RESOURCE_PATH =
+      MySqlJdbcAsyncWriterIntegrationTest.class.getResource("docker/postgres.yml");
+
   @ClassRule
-  public static DatabaseConnectionRule dbRule =
-      new PostgresConnectionRule.Builder().file("src/test/resources/docker/postgres.yml")
-          .serviceName("db").port(5432).database(DB_NAME).build();
+  public static DatabaseConnectionRule dbRule = new PostgresConnectionRule.Builder()
+      .file(COMPOSE_RESOURCE_PATH.getPath()).serviceName("db").port(5432).database(DB_NAME).build();
 
   @Override
   public Connection getConnection() throws SQLException {
diff --git a/geode-connectors/src/test/resources/docker/mysql.yml b/geode-connectors/src/test/resources/docker/mysql.yml
deleted file mode 100644
index 1bebd2b..0000000
--- a/geode-connectors/src/test/resources/docker/mysql.yml
+++ /dev/null
@@ -1,12 +0,0 @@
-version: '3.1'
-
-services:
-
-  db:
-    image: mysql:5.7
-    restart: always
-    ports:
-        - 3306
-    environment:
-      MYSQL_ALLOW_EMPTY_PASSWORD: "true"
-      #MYSQL_ROOT_PASSWORD: "secret"
\ No newline at end of file
diff --git a/geode-connectors/src/test/resources/docker/postgres.yml b/geode-connectors/src/test/resources/docker/postgres.yml
deleted file mode 100644
index 1b2ce80..0000000
--- a/geode-connectors/src/test/resources/docker/postgres.yml
+++ /dev/null
@@ -1,11 +0,0 @@
-version: '3.1'
-
-services:
-
-  db:
-    image: postgres
-    restart: always
-    ports:
-      - 5432
-    environment:
-      POSTGRES_DB: test
diff --git a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/docker/mysql.yml b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/docker/mysql.yml
new file mode 100644
index 0000000..97e1c32
--- /dev/null
+++ b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/docker/mysql.yml
@@ -0,0 +1,28 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+version: '3.1'
+
+services:
+
+  db:
+    image: mysql:5.7
+    restart: always
+    ports:
+        - 3306
+    environment:
+      MYSQL_ALLOW_EMPTY_PASSWORD: "true"
+      #MYSQL_ROOT_PASSWORD: "secret"
\ No newline at end of file
diff --git a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/docker/postgres.yml b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/docker/postgres.yml
new file mode 100644
index 0000000..2380b9e
--- /dev/null
+++ b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/docker/postgres.yml
@@ -0,0 +1,27 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+version: '3.1'
+
+services:
+
+  db:
+    image: postgres
+    restart: always
+    ports:
+      - 5432
+    environment:
+      POSTGRES_DB: test

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 14/23: GEODE-4947: Fix issue with null character string in Postgres

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit 8454a952c9ba87711f5499f7c4a4292aff0513cd
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Mon Apr 2 14:05:34 2018 -0700

    GEODE-4947: Fix issue with null character string in Postgres
---
 .../java/org/apache/geode/connectors/jdbc/internal/SqlHandler.java    | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/geode-connectors/src/main/java/org/apache/geode/connectors/jdbc/internal/SqlHandler.java b/geode-connectors/src/main/java/org/apache/geode/connectors/jdbc/internal/SqlHandler.java
index 3e49cf2..8fc2c5e 100644
--- a/geode-connectors/src/main/java/org/apache/geode/connectors/jdbc/internal/SqlHandler.java
+++ b/geode-connectors/src/main/java/org/apache/geode/connectors/jdbc/internal/SqlHandler.java
@@ -113,7 +113,9 @@ public class SqlHandler {
       index++;
       Object value = columnValue.getValue();
       if (value instanceof Character) {
-        value = ((Character) value).toString();
+        Character character = ((Character) value);
+        // if null character, set to null string instead of a string with the null character
+        value = character == Character.valueOf((char) 0) ? null : character.toString();
       } else if (value instanceof Date) {
         Date jdkDate = (Date) value;
         switch (columnValue.getDataType()) {

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 18/23: GEODE-4947: Make new category for tests that require external services

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit 5af1a0a10fd3074422f4d1f0c6eefaca8a7caec3
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Tue Apr 3 14:56:53 2018 -0700

    GEODE-4947: Make new category for tests that require external services
---
 ci/pipelines/develop.yml                           | 63 ++++++++++++++++++++++
 .../jdbc/JdbcAsyncWriterIntegrationTest.java       |  4 +-
 .../geode/connectors/jdbc/JdbcDistributedTest.java |  4 +-
 .../connectors/jdbc/JdbcLoaderIntegrationTest.java |  4 +-
 .../connectors/jdbc/JdbcWriterIntegrationTest.java |  4 +-
 .../jdbc/MySqlJdbcAsyncWriterIntegrationTest.java  |  4 +-
 .../connectors/jdbc/MySqlJdbcDistributedTest.java  |  4 +-
 .../jdbc/MySqlJdbcLoaderIntegrationTest.java       |  4 +-
 .../jdbc/MySqlJdbcWriterIntegrationTest.java       |  4 +-
 .../PostgresJdbcAsyncWriterIntegrationTest.java    |  4 +-
 .../jdbc/PostgresJdbcDistributedTest.java          |  4 +-
 .../jdbc/PostgresJdbcLoaderIntegrationTest.java    |  4 +-
 .../jdbc/PostgresJdbcWriterIntegrationTest.java    |  4 +-
 .../MySqlTableMetaDataManagerIntegrationTest.java  |  4 +-
 ...ostgresTableMetaDataManagerIntegrationTest.java |  4 +-
 .../TableMetaDataManagerIntegrationTest.java       |  4 +-
 .../test/junit/categories/ExternalServiceTest.java | 22 ++++++++
 gradle/test.gradle                                 | 11 ++++
 18 files changed, 126 insertions(+), 30 deletions(-)

diff --git a/ci/pipelines/develop.yml b/ci/pipelines/develop.yml
index a969f1e..7738f34 100644
--- a/ci/pipelines/develop.yml
+++ b/ci/pipelines/develop.yml
@@ -341,6 +341,69 @@ jobs:
                - integrationTest
                - integrationtestfiles
                path: geode-ci/ci/scripts/test-archive.sh
+- name: ExternalServiceTest
+  serial: true
+  public: true
+  plan:
+    - aggregate:
+      - get: geode
+        passed: [Build]
+        trigger: true
+      - get: geode-ci
+      - get: geode-build-version
+        passed: [Build]
+      - get: docker-test-image
+        params:
+          rootfs: true
+    - task: runtests
+      privileged: true
+      timeout: 8h
+      config:
+        inputs:
+          - name: geode
+          - name: geode-ci
+          - name: docker-test-image
+          - name: geode-build-version
+        platform: linux
+        outputs:
+          - name: built-geode
+        image_resource: *docker-geode-build-image
+        params:
+          MAINTENANCE_VERSION: ((!maintenance-version))
+          SERVICE_ACCOUNT: ((!concourse-gcp-account))
+          PUBLIC_BUCKET: ((!public-bucket))
+          CALL_STACK_TIMEOUT: 25200
+        run:
+          args:
+          - externalServiceTest
+          - externalservicetestfiles
+          path: geode-ci/ci/scripts/test-run.sh
+      on_failure:
+        aggregate:
+          - put: send-notification-email
+            params:
+              subject: built-geode/subject
+              body: built-geode/body
+      ensure:
+         aggregate:
+         - task: archive-results
+           config:
+             inputs:
+               - name: geode
+               - name: geode-ci
+               - name: geode-build-version
+               - name: built-geode
+             platform: linux
+             image_resource: *docker-geode-build-image
+             params:
+               MAINTENANCE_VERSION: ((!maintenance-version))
+               SERVICE_ACCOUNT: ((!concourse-gcp-account))
+               PUBLIC_BUCKET: ((!public-bucket))
+             run:
+               args:
+               - externalServiceTest
+               - externalservicetestfiles
+               path: geode-ci/ci/scripts/test-archive.sh
 
 - name: FlakyTest
   serial: true
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcAsyncWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcAsyncWriterIntegrationTest.java
index 0430f71..44ed5d3 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcAsyncWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcAsyncWriterIntegrationTest.java
@@ -40,9 +40,9 @@ import org.apache.geode.connectors.jdbc.internal.TestConfigService;
 import org.apache.geode.connectors.jdbc.internal.TestableConnectionManager;
 import org.apache.geode.internal.cache.InternalCache;
 import org.apache.geode.pdx.PdxInstance;
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.ExternalServiceTest;
 
-@Category(IntegrationTest.class)
+@Category(ExternalServiceTest.class)
 public abstract class JdbcAsyncWriterIntegrationTest {
 
   static final String DB_NAME = "test";
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
index bafe015..4d4ef65 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
@@ -49,14 +49,14 @@ import org.apache.geode.test.dunit.rules.ClientVM;
 import org.apache.geode.test.dunit.rules.ClusterStartupRule;
 import org.apache.geode.test.dunit.rules.DistributedRestoreSystemProperties;
 import org.apache.geode.test.dunit.rules.MemberVM;
-import org.apache.geode.test.junit.categories.DistributedTest;
+import org.apache.geode.test.junit.categories.ExternalServiceTest;
 import org.apache.geode.test.junit.rules.GfshCommandRule;
 import org.apache.geode.test.junit.rules.serializable.SerializableTestName;
 
 /**
  * End-to-end dunits for jdbc connector
  */
-@Category(DistributedTest.class)
+@Category(ExternalServiceTest.class)
 public abstract class JdbcDistributedTest implements Serializable {
 
   static final String DB_NAME = "test";
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java
index 6707fdc..07cba2e 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java
@@ -45,9 +45,9 @@ import org.apache.geode.internal.util.BlobHelper;
 import org.apache.geode.pdx.PdxInstance;
 import org.apache.geode.pdx.ReflectionBasedAutoSerializer;
 import org.apache.geode.pdx.internal.AutoSerializableManager;
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.ExternalServiceTest;
 
-@Category(IntegrationTest.class)
+@Category(ExternalServiceTest.class)
 public abstract class JdbcLoaderIntegrationTest {
 
   static final String DB_NAME = "test";
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcWriterIntegrationTest.java
index d30b93b..d4cdf63 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcWriterIntegrationTest.java
@@ -42,9 +42,9 @@ import org.apache.geode.connectors.jdbc.internal.TestConfigService;
 import org.apache.geode.connectors.jdbc.internal.TestableConnectionManager;
 import org.apache.geode.internal.cache.InternalCache;
 import org.apache.geode.pdx.PdxInstance;
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.ExternalServiceTest;
 
-@Category(IntegrationTest.class)
+@Category(ExternalServiceTest.class)
 public abstract class JdbcWriterIntegrationTest {
 
   static final String DB_NAME = "test";
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java
index 37a057d..14a9a74 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java
@@ -21,11 +21,11 @@ import java.sql.SQLException;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.ExternalServiceTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 
-@Category(IntegrationTest.class)
+@Category(ExternalServiceTest.class)
 public class MySqlJdbcAsyncWriterIntegrationTest extends JdbcAsyncWriterIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
index 56b32fb..607ab6e 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
@@ -26,14 +26,14 @@ import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
 import org.apache.geode.test.dunit.rules.MemberVM;
-import org.apache.geode.test.junit.categories.DistributedTest;
+import org.apache.geode.test.junit.categories.ExternalServiceTest;
 import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 import org.apache.geode.test.junit.rules.SqlDatabaseConnectionRule;
 
 /**
  * End-to-end dunits for jdbc connector
  */
-@Category(DistributedTest.class)
+@Category(ExternalServiceTest.class)
 public class MySqlJdbcDistributedTest extends JdbcDistributedTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
index 0d75045..7c9aa92 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
@@ -22,11 +22,11 @@ import java.sql.Statement;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.ExternalServiceTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 
-@Category(IntegrationTest.class)
+@Category(ExternalServiceTest.class)
 public class MySqlJdbcLoaderIntegrationTest extends JdbcLoaderIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java
index 7d64ad0..90011d5 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java
@@ -21,11 +21,11 @@ import java.sql.SQLException;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.ExternalServiceTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 
-@Category(IntegrationTest.class)
+@Category(ExternalServiceTest.class)
 public class MySqlJdbcWriterIntegrationTest extends JdbcWriterIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java
index 4dbacea..ab39878 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java
@@ -21,11 +21,11 @@ import java.sql.SQLException;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.ExternalServiceTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 
-@Category(IntegrationTest.class)
+@Category(ExternalServiceTest.class)
 public class PostgresJdbcAsyncWriterIntegrationTest extends JdbcAsyncWriterIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
index 6643cbe..a129fad 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
@@ -24,14 +24,14 @@ import java.sql.Types;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.DistributedTest;
+import org.apache.geode.test.junit.categories.ExternalServiceTest;
 import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 import org.apache.geode.test.junit.rules.SqlDatabaseConnectionRule;
 
 /**
  * End-to-end dunits for jdbc connector
  */
-@Category(DistributedTest.class)
+@Category(ExternalServiceTest.class)
 public class PostgresJdbcDistributedTest extends JdbcDistributedTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
index 3b9755f..80882a4 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
@@ -22,11 +22,11 @@ import java.sql.Statement;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.ExternalServiceTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 
-@Category(IntegrationTest.class)
+@Category(ExternalServiceTest.class)
 public class PostgresJdbcLoaderIntegrationTest extends JdbcLoaderIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java
index 98d45c0..18a8ed7 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java
@@ -21,11 +21,11 @@ import java.sql.SQLException;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.ExternalServiceTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 
-@Category(IntegrationTest.class)
+@Category(ExternalServiceTest.class)
 public class PostgresJdbcWriterIntegrationTest extends JdbcWriterIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java
index 44d3365..b32a382 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java
@@ -21,11 +21,11 @@ import java.sql.SQLException;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.ExternalServiceTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 
-@Category(IntegrationTest.class)
+@Category(ExternalServiceTest.class)
 public class MySqlTableMetaDataManagerIntegrationTest extends TableMetaDataManagerIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java
index c5304ae..6e846e7 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java
@@ -21,11 +21,11 @@ import java.sql.SQLException;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.ExternalServiceTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 
-@Category(IntegrationTest.class)
+@Category(ExternalServiceTest.class)
 public class PostgresTableMetaDataManagerIntegrationTest
     extends TableMetaDataManagerIntegrationTest {
 
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerIntegrationTest.java
index 6ec61f4..ca34a02 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerIntegrationTest.java
@@ -28,9 +28,9 @@ import org.junit.Before;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.ExternalServiceTest;
 
-@Category(IntegrationTest.class)
+@Category(ExternalServiceTest.class)
 public abstract class TableMetaDataManagerIntegrationTest {
 
   private static final String REGION_TABLE_NAME = "employees";
diff --git a/geode-junit/src/main/java/org/apache/geode/test/junit/categories/ExternalServiceTest.java b/geode-junit/src/main/java/org/apache/geode/test/junit/categories/ExternalServiceTest.java
new file mode 100644
index 0000000..88eacf0
--- /dev/null
+++ b/geode-junit/src/main/java/org/apache/geode/test/junit/categories/ExternalServiceTest.java
@@ -0,0 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
+ * agreements. See the NOTICE file distributed with this work for additional information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package org.apache.geode.test.junit.categories;
+
+/**
+ * JUnit Test Category that specifies a test involving external services that must be initialized
+ * and configured for connection to by Geode
+ */
+public interface ExternalServiceTest {
+}
diff --git a/gradle/test.gradle b/gradle/test.gradle
index 4c78af1..21b3068 100644
--- a/gradle/test.gradle
+++ b/gradle/test.gradle
@@ -123,6 +123,17 @@ subprojects {
     }
   }
   
+  task externalServiceTest(type:Test) {
+    useJUnit {
+      includeCategories 'org.apache.geode.test.junit.categories.ExternalServiceTest'
+      excludeCategories 'org.apache.geode.test.junit.categories.FlakyTest'
+    }
+
+    forkEvery 1
+    doFirst {
+      TestPropertiesWriter.writeTestProperties(buildDir, name)
+    }
+  }
   task distributedTest(type:Test) {
     useJUnit {
       includeCategories 'org.apache.geode.test.junit.categories.DistributedTest'

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 22/23: GEODE-4947: Add geode-connectors to acceptance tests

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit 9f51db02e21a5ff0d2d86056989eed29cd280d3a
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Wed Apr 4 10:41:14 2018 -0700

    GEODE-4947: Add geode-connectors to acceptance tests
---
 ci/pipelines/develop.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ci/pipelines/develop.yml b/ci/pipelines/develop.yml
index a969f1e..564c870 100644
--- a/ci/pipelines/develop.yml
+++ b/ci/pipelines/develop.yml
@@ -246,7 +246,7 @@ jobs:
           CALL_STACK_TIMEOUT: 25200
         run:
           args:
-          - :geode-assembly:acceptanceTest
+          - :geode-assembly:acceptanceTest geode-connectors:acceptanceTest
           - acceptancetestfiles
           path: geode-ci/ci/scripts/test-run.sh
       on_failure:

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 19/23: Revert "GEODE-4947: Make new category for tests that require external services"

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit e9859d6600eb3e5c30ab80a23de7358611055727
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Wed Apr 4 08:41:54 2018 -0700

    Revert "GEODE-4947: Make new category for tests that require external services"
    
    This reverts commit 5413739ea8f44e4a2415326dbba2a67fdcbafda2.
---
 ci/pipelines/develop.yml                           | 63 ----------------------
 .../jdbc/JdbcAsyncWriterIntegrationTest.java       |  4 +-
 .../geode/connectors/jdbc/JdbcDistributedTest.java |  4 +-
 .../connectors/jdbc/JdbcLoaderIntegrationTest.java |  4 +-
 .../connectors/jdbc/JdbcWriterIntegrationTest.java |  4 +-
 .../jdbc/MySqlJdbcAsyncWriterIntegrationTest.java  |  4 +-
 .../connectors/jdbc/MySqlJdbcDistributedTest.java  |  4 +-
 .../jdbc/MySqlJdbcLoaderIntegrationTest.java       |  4 +-
 .../jdbc/MySqlJdbcWriterIntegrationTest.java       |  4 +-
 .../PostgresJdbcAsyncWriterIntegrationTest.java    |  4 +-
 .../jdbc/PostgresJdbcDistributedTest.java          |  4 +-
 .../jdbc/PostgresJdbcLoaderIntegrationTest.java    |  4 +-
 .../jdbc/PostgresJdbcWriterIntegrationTest.java    |  4 +-
 .../MySqlTableMetaDataManagerIntegrationTest.java  |  4 +-
 ...ostgresTableMetaDataManagerIntegrationTest.java |  4 +-
 .../TableMetaDataManagerIntegrationTest.java       |  4 +-
 .../test/junit/categories/ExternalServiceTest.java | 22 --------
 gradle/test.gradle                                 | 11 ----
 18 files changed, 30 insertions(+), 126 deletions(-)

diff --git a/ci/pipelines/develop.yml b/ci/pipelines/develop.yml
index 7738f34..a969f1e 100644
--- a/ci/pipelines/develop.yml
+++ b/ci/pipelines/develop.yml
@@ -341,69 +341,6 @@ jobs:
                - integrationTest
                - integrationtestfiles
                path: geode-ci/ci/scripts/test-archive.sh
-- name: ExternalServiceTest
-  serial: true
-  public: true
-  plan:
-    - aggregate:
-      - get: geode
-        passed: [Build]
-        trigger: true
-      - get: geode-ci
-      - get: geode-build-version
-        passed: [Build]
-      - get: docker-test-image
-        params:
-          rootfs: true
-    - task: runtests
-      privileged: true
-      timeout: 8h
-      config:
-        inputs:
-          - name: geode
-          - name: geode-ci
-          - name: docker-test-image
-          - name: geode-build-version
-        platform: linux
-        outputs:
-          - name: built-geode
-        image_resource: *docker-geode-build-image
-        params:
-          MAINTENANCE_VERSION: ((!maintenance-version))
-          SERVICE_ACCOUNT: ((!concourse-gcp-account))
-          PUBLIC_BUCKET: ((!public-bucket))
-          CALL_STACK_TIMEOUT: 25200
-        run:
-          args:
-          - externalServiceTest
-          - externalservicetestfiles
-          path: geode-ci/ci/scripts/test-run.sh
-      on_failure:
-        aggregate:
-          - put: send-notification-email
-            params:
-              subject: built-geode/subject
-              body: built-geode/body
-      ensure:
-         aggregate:
-         - task: archive-results
-           config:
-             inputs:
-               - name: geode
-               - name: geode-ci
-               - name: geode-build-version
-               - name: built-geode
-             platform: linux
-             image_resource: *docker-geode-build-image
-             params:
-               MAINTENANCE_VERSION: ((!maintenance-version))
-               SERVICE_ACCOUNT: ((!concourse-gcp-account))
-               PUBLIC_BUCKET: ((!public-bucket))
-             run:
-               args:
-               - externalServiceTest
-               - externalservicetestfiles
-               path: geode-ci/ci/scripts/test-archive.sh
 
 - name: FlakyTest
   serial: true
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcAsyncWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcAsyncWriterIntegrationTest.java
index 44ed5d3..0430f71 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcAsyncWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcAsyncWriterIntegrationTest.java
@@ -40,9 +40,9 @@ import org.apache.geode.connectors.jdbc.internal.TestConfigService;
 import org.apache.geode.connectors.jdbc.internal.TestableConnectionManager;
 import org.apache.geode.internal.cache.InternalCache;
 import org.apache.geode.pdx.PdxInstance;
-import org.apache.geode.test.junit.categories.ExternalServiceTest;
+import org.apache.geode.test.junit.categories.IntegrationTest;
 
-@Category(ExternalServiceTest.class)
+@Category(IntegrationTest.class)
 public abstract class JdbcAsyncWriterIntegrationTest {
 
   static final String DB_NAME = "test";
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
index 4d4ef65..bafe015 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
@@ -49,14 +49,14 @@ import org.apache.geode.test.dunit.rules.ClientVM;
 import org.apache.geode.test.dunit.rules.ClusterStartupRule;
 import org.apache.geode.test.dunit.rules.DistributedRestoreSystemProperties;
 import org.apache.geode.test.dunit.rules.MemberVM;
-import org.apache.geode.test.junit.categories.ExternalServiceTest;
+import org.apache.geode.test.junit.categories.DistributedTest;
 import org.apache.geode.test.junit.rules.GfshCommandRule;
 import org.apache.geode.test.junit.rules.serializable.SerializableTestName;
 
 /**
  * End-to-end dunits for jdbc connector
  */
-@Category(ExternalServiceTest.class)
+@Category(DistributedTest.class)
 public abstract class JdbcDistributedTest implements Serializable {
 
   static final String DB_NAME = "test";
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java
index 07cba2e..6707fdc 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java
@@ -45,9 +45,9 @@ import org.apache.geode.internal.util.BlobHelper;
 import org.apache.geode.pdx.PdxInstance;
 import org.apache.geode.pdx.ReflectionBasedAutoSerializer;
 import org.apache.geode.pdx.internal.AutoSerializableManager;
-import org.apache.geode.test.junit.categories.ExternalServiceTest;
+import org.apache.geode.test.junit.categories.IntegrationTest;
 
-@Category(ExternalServiceTest.class)
+@Category(IntegrationTest.class)
 public abstract class JdbcLoaderIntegrationTest {
 
   static final String DB_NAME = "test";
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcWriterIntegrationTest.java
index d4cdf63..d30b93b 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcWriterIntegrationTest.java
@@ -42,9 +42,9 @@ import org.apache.geode.connectors.jdbc.internal.TestConfigService;
 import org.apache.geode.connectors.jdbc.internal.TestableConnectionManager;
 import org.apache.geode.internal.cache.InternalCache;
 import org.apache.geode.pdx.PdxInstance;
-import org.apache.geode.test.junit.categories.ExternalServiceTest;
+import org.apache.geode.test.junit.categories.IntegrationTest;
 
-@Category(ExternalServiceTest.class)
+@Category(IntegrationTest.class)
 public abstract class JdbcWriterIntegrationTest {
 
   static final String DB_NAME = "test";
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java
index 14a9a74..37a057d 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java
@@ -21,11 +21,11 @@ import java.sql.SQLException;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.ExternalServiceTest;
+import org.apache.geode.test.junit.categories.IntegrationTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 
-@Category(ExternalServiceTest.class)
+@Category(IntegrationTest.class)
 public class MySqlJdbcAsyncWriterIntegrationTest extends JdbcAsyncWriterIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
index 607ab6e..56b32fb 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
@@ -26,14 +26,14 @@ import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
 import org.apache.geode.test.dunit.rules.MemberVM;
-import org.apache.geode.test.junit.categories.ExternalServiceTest;
+import org.apache.geode.test.junit.categories.DistributedTest;
 import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 import org.apache.geode.test.junit.rules.SqlDatabaseConnectionRule;
 
 /**
  * End-to-end dunits for jdbc connector
  */
-@Category(ExternalServiceTest.class)
+@Category(DistributedTest.class)
 public class MySqlJdbcDistributedTest extends JdbcDistributedTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
index 7c9aa92..0d75045 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
@@ -22,11 +22,11 @@ import java.sql.Statement;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.ExternalServiceTest;
+import org.apache.geode.test.junit.categories.IntegrationTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 
-@Category(ExternalServiceTest.class)
+@Category(IntegrationTest.class)
 public class MySqlJdbcLoaderIntegrationTest extends JdbcLoaderIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java
index 90011d5..7d64ad0 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java
@@ -21,11 +21,11 @@ import java.sql.SQLException;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.ExternalServiceTest;
+import org.apache.geode.test.junit.categories.IntegrationTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 
-@Category(ExternalServiceTest.class)
+@Category(IntegrationTest.class)
 public class MySqlJdbcWriterIntegrationTest extends JdbcWriterIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java
index ab39878..4dbacea 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java
@@ -21,11 +21,11 @@ import java.sql.SQLException;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.ExternalServiceTest;
+import org.apache.geode.test.junit.categories.IntegrationTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 
-@Category(ExternalServiceTest.class)
+@Category(IntegrationTest.class)
 public class PostgresJdbcAsyncWriterIntegrationTest extends JdbcAsyncWriterIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
index a129fad..6643cbe 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
@@ -24,14 +24,14 @@ import java.sql.Types;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.ExternalServiceTest;
+import org.apache.geode.test.junit.categories.DistributedTest;
 import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 import org.apache.geode.test.junit.rules.SqlDatabaseConnectionRule;
 
 /**
  * End-to-end dunits for jdbc connector
  */
-@Category(ExternalServiceTest.class)
+@Category(DistributedTest.class)
 public class PostgresJdbcDistributedTest extends JdbcDistributedTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
index 80882a4..3b9755f 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
@@ -22,11 +22,11 @@ import java.sql.Statement;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.ExternalServiceTest;
+import org.apache.geode.test.junit.categories.IntegrationTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 
-@Category(ExternalServiceTest.class)
+@Category(IntegrationTest.class)
 public class PostgresJdbcLoaderIntegrationTest extends JdbcLoaderIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java
index 18a8ed7..98d45c0 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java
@@ -21,11 +21,11 @@ import java.sql.SQLException;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.ExternalServiceTest;
+import org.apache.geode.test.junit.categories.IntegrationTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 
-@Category(ExternalServiceTest.class)
+@Category(IntegrationTest.class)
 public class PostgresJdbcWriterIntegrationTest extends JdbcWriterIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java
index b32a382..44d3365 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java
@@ -21,11 +21,11 @@ import java.sql.SQLException;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.ExternalServiceTest;
+import org.apache.geode.test.junit.categories.IntegrationTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 
-@Category(ExternalServiceTest.class)
+@Category(IntegrationTest.class)
 public class MySqlTableMetaDataManagerIntegrationTest extends TableMetaDataManagerIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java
index 6e846e7..c5304ae 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java
@@ -21,11 +21,11 @@ import java.sql.SQLException;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.ExternalServiceTest;
+import org.apache.geode.test.junit.categories.IntegrationTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 
-@Category(ExternalServiceTest.class)
+@Category(IntegrationTest.class)
 public class PostgresTableMetaDataManagerIntegrationTest
     extends TableMetaDataManagerIntegrationTest {
 
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerIntegrationTest.java
index ca34a02..6ec61f4 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerIntegrationTest.java
@@ -28,9 +28,9 @@ import org.junit.Before;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.ExternalServiceTest;
+import org.apache.geode.test.junit.categories.IntegrationTest;
 
-@Category(ExternalServiceTest.class)
+@Category(IntegrationTest.class)
 public abstract class TableMetaDataManagerIntegrationTest {
 
   private static final String REGION_TABLE_NAME = "employees";
diff --git a/geode-junit/src/main/java/org/apache/geode/test/junit/categories/ExternalServiceTest.java b/geode-junit/src/main/java/org/apache/geode/test/junit/categories/ExternalServiceTest.java
deleted file mode 100644
index 88eacf0..0000000
--- a/geode-junit/src/main/java/org/apache/geode/test/junit/categories/ExternalServiceTest.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
- * agreements. See the NOTICE file distributed with this work for additional information regarding
- * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance with the License. You may obtain a
- * copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License
- * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied. See the License for the specific language governing permissions and limitations under
- * the License.
- */
-package org.apache.geode.test.junit.categories;
-
-/**
- * JUnit Test Category that specifies a test involving external services that must be initialized
- * and configured for connection to by Geode
- */
-public interface ExternalServiceTest {
-}
diff --git a/gradle/test.gradle b/gradle/test.gradle
index 21b3068..4c78af1 100644
--- a/gradle/test.gradle
+++ b/gradle/test.gradle
@@ -123,17 +123,6 @@ subprojects {
     }
   }
   
-  task externalServiceTest(type:Test) {
-    useJUnit {
-      includeCategories 'org.apache.geode.test.junit.categories.ExternalServiceTest'
-      excludeCategories 'org.apache.geode.test.junit.categories.FlakyTest'
-    }
-
-    forkEvery 1
-    doFirst {
-      TestPropertiesWriter.writeTestProperties(buildDir, name)
-    }
-  }
   task distributedTest(type:Test) {
     useJUnit {
       includeCategories 'org.apache.geode.test.junit.categories.DistributedTest'

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 01/23: GEODE-4947: Add test using MySQL for JDBC connector

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit a2b6962d1092ff8b4fb582000b08a65ab9601edc
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Tue Mar 27 10:00:02 2018 -0700

    GEODE-4947: Add test using MySQL for JDBC connector
    
      * Add rule for standing up Docker instance of MySQL to enable testing
---
 build.gradle                                       |   1 +
 geode-connectors/build.gradle                      |   9 ++
 .../TableMetaDataManagerMySqlIntegrationTest.java  | 113 +++++++++++++++++++
 .../test/junit/rules/DatabaseConnectionRule.java   | 121 +++++++++++++++++++++
 .../test/junit/rules/MySqlConnectionRule.java      |  44 ++++++++
 .../src/test/resources/docker/mysql.yml            |  12 ++
 6 files changed, 300 insertions(+)

diff --git a/build.gradle b/build.gradle
index cd76ede..c3f1604 100755
--- a/build.gradle
+++ b/build.gradle
@@ -18,6 +18,7 @@
 buildscript {
   repositories {
     maven { url "https://plugins.gradle.org/m2/" }
+    maven { url "https://dl.bintray.com/palantir/releases" }
     jcenter()
   }
 
diff --git a/geode-connectors/build.gradle b/geode-connectors/build.gradle
index c2b55ba..432fbd5 100644
--- a/geode-connectors/build.gradle
+++ b/geode-connectors/build.gradle
@@ -15,15 +15,24 @@
  * limitations under the License.
  */
 
+repositories {
+    maven {
+        url 'https://dl.bintray.com/palantir/releases' // docker-compose-rule is published on bintray
+    }
+}
+
 dependencies {
     compile project(':geode-core')
     compile project(':geode-common')
     compile group: 'com.zaxxer', name: 'HikariCP', version: project.'HikariCP.version'
+    compile group: 'mysql', name: 'mysql-connector-java', version: '5.1.46'
+
 
     testCompile project(':geode-junit')
 
     //Connectors test framework.
     testRuntime 'org.apache.derby:derby:' + project.'derby.version'
+    testCompile 'com.palantir.docker.compose:docker-compose-rule-junit4:0.31.1'
     testCompile 'com.pholser:junit-quickcheck-core:' + project.'junit-quickcheck.version'
     testCompile 'com.pholser:junit-quickcheck-generators:' + project.'junit-quickcheck.version'
     testCompile files(project(':geode-core').sourceSets.test.output)
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerMySqlIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerMySqlIntegrationTest.java
new file mode 100644
index 0000000..25cac1b
--- /dev/null
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerMySqlIntegrationTest.java
@@ -0,0 +1,113 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
+ * agreements. See the NOTICE file distributed with this work for additional information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package org.apache.geode.connectors.jdbc.internal;
+
+import static org.assertj.core.api.Assertions.assertThat;
+
+import java.sql.Connection;
+import java.sql.DatabaseMetaData;
+import java.sql.Statement;
+import java.sql.Types;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.ClassRule;
+import org.junit.Test;
+import org.junit.experimental.categories.Category;
+
+import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
+import org.apache.geode.test.junit.rules.MySqlConnectionRule;
+
+@Category(IntegrationTest.class)
+public class TableMetaDataManagerMySqlIntegrationTest {
+
+  private static final String DB_NAME = "test";
+  private static final String REGION_TABLE_NAME = "employees";
+
+  private TableMetaDataManager manager;
+  private Connection connection;
+  private Statement statement;
+
+  @ClassRule
+  public static DatabaseConnectionRule dbRule =
+      new MySqlConnectionRule.Builder().file("src/test/resources/docker/mysql.yml")
+          .serviceName("db").port(3306).database(DB_NAME).build();
+
+  @Before
+  public void setup() throws Exception {
+    connection = dbRule.getConnection();
+    statement = connection.createStatement();
+    statement.execute("Create Table " + REGION_TABLE_NAME
+        + " (id VARCHAR(10) primary key not null, name VARCHAR(10), age int)");
+    manager = new TableMetaDataManager();
+    DatabaseMetaData data = connection.getMetaData();
+    data.getConnection();
+  }
+
+  @After
+  public void tearDown() throws Exception {
+    closeDB();
+  }
+
+  private void closeDB() throws Exception {
+    if (statement == null) {
+      statement = connection.createStatement();
+    }
+    statement.execute("Drop table " + REGION_TABLE_NAME);
+    statement.close();
+
+    if (connection != null) {
+      connection.close();
+    }
+  }
+
+  @Test
+  public void validateKeyColumnName() {
+    TableMetaDataView metaData = manager.getTableMetaDataView(connection, REGION_TABLE_NAME);
+
+    String keyColumnName = metaData.getKeyColumnName();
+
+    assertThat(keyColumnName).isEqualToIgnoringCase("id");
+  }
+
+  @Test
+  public void validateColumnDataTypeForName() {
+    TableMetaDataView metaData = manager.getTableMetaDataView(connection, REGION_TABLE_NAME);
+
+    int nameDataType = metaData.getColumnDataType("name");
+
+    assertThat(nameDataType).isEqualTo(Types.VARCHAR);
+  }
+
+  @Test
+  public void validateColumnDataTypeForId() {
+    TableMetaDataView metaData = manager.getTableMetaDataView(connection, REGION_TABLE_NAME);
+
+    int nameDataType = metaData.getColumnDataType("id");
+
+    assertThat(nameDataType).isEqualTo(Types.VARCHAR);
+  }
+
+  @Test
+  public void validateColumnDataTypeForAge() {
+    TableMetaDataView metaData = manager.getTableMetaDataView(connection, REGION_TABLE_NAME);
+
+    int nameDataType = metaData.getColumnDataType("age");
+
+    assertThat(nameDataType).isEqualTo(Types.INTEGER);
+  }
+
+}
diff --git a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java
new file mode 100644
index 0000000..1869172
--- /dev/null
+++ b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java
@@ -0,0 +1,121 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
+ * agreements. See the NOTICE file distributed with this work for additional information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package org.apache.geode.test.junit.rules;
+
+import static org.awaitility.Awaitility.matches;
+
+import java.io.IOException;
+import java.sql.Connection;
+import java.sql.DriverManager;
+import java.sql.SQLException;
+import java.util.concurrent.TimeUnit;
+
+import com.palantir.docker.compose.DockerComposeRule;
+import com.palantir.docker.compose.connection.DockerPort;
+import com.palantir.docker.compose.connection.waiting.HealthChecks;
+import org.awaitility.Awaitility;
+import org.junit.rules.ExternalResource;
+
+public abstract class DatabaseConnectionRule extends ExternalResource {
+
+  private final DockerComposeRule dockerRule;
+  private final String serviceName;
+  private final int port;
+  private final String dbName;
+
+  protected DatabaseConnectionRule(DockerComposeRule dockerRule, String serviceName, int port,
+      String dbName) {
+    this.dockerRule = dockerRule;
+    this.serviceName = serviceName;
+    this.port = port;
+    this.dbName = dbName;
+  }
+
+  @Override
+  public void before() throws IOException, InterruptedException {
+    dockerRule.before();
+  }
+
+  @Override
+  public void after() {
+    dockerRule.after();
+  }
+
+  protected DockerPort getDockerPort() {
+    return dockerRule.containers().container(serviceName).port(port);
+  }
+
+  public Connection getConnection() throws SQLException {
+    String connectionUrl = getConnectionString();
+    Awaitility.await().ignoreExceptions().atMost(10, TimeUnit.SECONDS)
+        .until(matches(() -> DriverManager.getConnection(connectionUrl)));
+    Connection connection = DriverManager.getConnection(connectionUrl);
+    if (dbName != null) {
+      connection.createStatement().execute("CREATE DATABASE IF NOT EXISTS " + dbName);
+      connection.setCatalog(dbName);
+    }
+    return connection;
+  }
+
+  protected abstract String getConnectionString();
+
+  public abstract static class Builder {
+    private String filePath;
+    private String serviceName;
+    private int port;
+    private String dbName;
+
+    public abstract DatabaseConnectionRule build();
+
+    public Builder file(String filePath) {
+      this.filePath = filePath;
+      return this;
+    }
+
+    public Builder serviceName(String serviceName) {
+      this.serviceName = serviceName;
+      return this;
+    }
+
+    public Builder port(int port) {
+      this.port = port;
+      return this;
+    }
+
+    public Builder database(String dbName) {
+      this.dbName = dbName;
+      return this;
+    }
+
+    protected String getDbName() {
+      return dbName;
+    }
+
+    protected String getServiceName() {
+      return  serviceName;
+    }
+
+    protected int getPort() {
+      return port;
+    }
+
+    protected DockerComposeRule createDockerRule() {
+      return DockerComposeRule.builder().file(filePath)
+          .waitingForService(serviceName, HealthChecks.toHaveAllPortsOpen()).build();
+    }
+
+  }
+
+}
diff --git a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java
new file mode 100644
index 0000000..4cda016
--- /dev/null
+++ b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
+ * agreements. See the NOTICE file distributed with this work for additional information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package org.apache.geode.test.junit.rules;
+
+import com.palantir.docker.compose.DockerComposeRule;
+
+public class MySqlConnectionRule extends DatabaseConnectionRule {
+  private static final String CONNECTION_STRING =
+      "jdbc:mysql://$HOST:$EXTERNAL_PORT?user=root&useSSL=false";
+
+  protected MySqlConnectionRule(DockerComposeRule dockerRule, String serviceName, int port,
+      String dbName) {
+    super(dockerRule, serviceName, port, dbName);
+  }
+
+  @Override
+  protected String getConnectionString() {
+    return getDockerPort().inFormat(CONNECTION_STRING);
+  }
+
+  public static class Builder extends DatabaseConnectionRule.Builder {
+
+    public Builder() {
+      super();
+    }
+
+    @Override
+    public MySqlConnectionRule build() {
+      return new MySqlConnectionRule(createDockerRule(), getServiceName(), getPort(), getDbName());
+    }
+  }
+}
diff --git a/geode-connectors/src/test/resources/docker/mysql.yml b/geode-connectors/src/test/resources/docker/mysql.yml
new file mode 100644
index 0000000..1bebd2b
--- /dev/null
+++ b/geode-connectors/src/test/resources/docker/mysql.yml
@@ -0,0 +1,12 @@
+version: '3.1'
+
+services:
+
+  db:
+    image: mysql:5.7
+    restart: always
+    ports:
+        - 3306
+    environment:
+      MYSQL_ALLOW_EMPTY_PASSWORD: "true"
+      #MYSQL_ROOT_PASSWORD: "secret"
\ No newline at end of file

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 15/23: GEODE-4947: Cleanup

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit 75bf59a15f816f8b63909bcfa4478f9796c22d63
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Mon Apr 2 14:29:34 2018 -0700

    GEODE-4947: Cleanup
---
 .../jdbc/JdbcAsyncWriterIntegrationTest.java       |  2 --
 .../connectors/jdbc/JdbcLoaderIntegrationTest.java |  2 --
 .../connectors/jdbc/JdbcWriterIntegrationTest.java |  1 -
 .../TableMetaDataManagerIntegrationTest.java       |  4 ++--
 .../jdbc/internal/TestConfigService.java           |  2 --
 .../apache/geode/connectors/jdbc/docker/mysql.yml  | 28 ----------------------
 .../geode/connectors/jdbc/docker/postgres.yml      | 27 ---------------------
 7 files changed, 2 insertions(+), 64 deletions(-)

diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcAsyncWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcAsyncWriterIntegrationTest.java
index 11767eb..0430f71 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcAsyncWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcAsyncWriterIntegrationTest.java
@@ -18,7 +18,6 @@ import static org.apache.geode.cache.RegionShortcut.REPLICATE;
 import static org.assertj.core.api.Assertions.assertThat;
 
 import java.sql.Connection;
-import java.sql.DriverManager;
 import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.sql.Statement;
@@ -64,7 +63,6 @@ public abstract class JdbcAsyncWriterIntegrationTest {
     cache = (InternalCache) new CacheFactory().set("locators", "").set("mcast-port", "0")
         .setPdxReadSerialized(false).create();
     employees = createRegionWithJDBCAsyncWriter(REGION_TABLE_NAME);
-    // connection = DriverManager.getConnection(CONNECTION_URL);
     connection = getConnection();
     statement = connection.createStatement();
     statement.execute("Create Table " + REGION_TABLE_NAME
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java
index 0a48a9a..6707fdc 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java
@@ -19,11 +19,9 @@ import static org.assertj.core.api.Assertions.assertThat;
 
 import java.io.IOException;
 import java.sql.Connection;
-import java.sql.DriverManager;
 import java.sql.PreparedStatement;
 import java.sql.SQLException;
 import java.sql.Statement;
-import java.time.Instant;
 import java.util.Date;
 
 import org.junit.After;
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcWriterIntegrationTest.java
index 5a489a7..d30b93b 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcWriterIntegrationTest.java
@@ -19,7 +19,6 @@ import static com.googlecode.catchexception.CatchException.caughtException;
 import static org.assertj.core.api.Assertions.assertThat;
 
 import java.sql.Connection;
-import java.sql.DriverManager;
 import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.sql.Statement;
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerIntegrationTest.java
index 02a6584..6ec61f4 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerIntegrationTest.java
@@ -33,10 +33,10 @@ import org.apache.geode.test.junit.categories.IntegrationTest;
 @Category(IntegrationTest.class)
 public abstract class TableMetaDataManagerIntegrationTest {
 
-  protected static final String REGION_TABLE_NAME = "employees";
+  private static final String REGION_TABLE_NAME = "employees";
   protected static final String DB_NAME = "test";
 
-  protected TableMetaDataManager manager;
+  private TableMetaDataManager manager;
   protected Connection connection;
   protected Statement statement;
 
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TestConfigService.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TestConfigService.java
index cd19d33..4e2aacf 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TestConfigService.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TestConfigService.java
@@ -26,10 +26,8 @@ import org.apache.geode.internal.cache.extension.ExtensionPoint;
  * Generates fake JdbcConnectorService with Connections and RegionMappings for tests.
  */
 public class TestConfigService {
-  // private static final String DB_NAME = "DerbyDB";
   private static final String REGION_TABLE_NAME = "employees";
   private static final String REGION_NAME = "employees";
-  // private static final String CONNECTION_URL = "jdbc:derby:memory:" + DB_NAME + ";create=true";
   private static final String CONNECTION_CONFIG_NAME = "testConnectionConfig";
 
   public static JdbcConnectorServiceImpl getTestConfigService(String connectionUrl)
diff --git a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/docker/mysql.yml b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/docker/mysql.yml
deleted file mode 100644
index 97e1c32..0000000
--- a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/docker/mysql.yml
+++ /dev/null
@@ -1,28 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements.  See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License.  You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-version: '3.1'
-
-services:
-
-  db:
-    image: mysql:5.7
-    restart: always
-    ports:
-        - 3306
-    environment:
-      MYSQL_ALLOW_EMPTY_PASSWORD: "true"
-      #MYSQL_ROOT_PASSWORD: "secret"
\ No newline at end of file
diff --git a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/docker/postgres.yml b/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/docker/postgres.yml
deleted file mode 100644
index 2380b9e..0000000
--- a/geode-connectors/src/test/resources/org/apache/geode/connectors/jdbc/docker/postgres.yml
+++ /dev/null
@@ -1,27 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements.  See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License.  You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-version: '3.1'
-
-services:
-
-  db:
-    image: postgres
-    restart: always
-    ports:
-      - 5432
-    environment:
-      POSTGRES_DB: test

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 13/23: GEODE-4947: Fix MySQL test truncating timestamps

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit fe91b2586cdebe3c61d7ffbd13ee0820393ab94e
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Fri Mar 30 16:04:56 2018 -0700

    GEODE-4947: Fix MySQL test truncating timestamps
---
 .../geode/connectors/jdbc/JdbcDistributedTest.java  | 21 +++++++++++----------
 .../connectors/jdbc/MySqlJdbcDistributedTest.java   | 12 ++++++++++++
 2 files changed, 23 insertions(+), 10 deletions(-)

diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
index 3c01a40..d3c6f07 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
@@ -25,8 +25,6 @@ import java.sql.PreparedStatement;
 import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.sql.Statement;
-import java.sql.Types;
-import java.time.Instant;
 import java.util.Date;
 import java.util.Properties;
 import java.util.concurrent.TimeUnit;
@@ -52,7 +50,6 @@ import org.apache.geode.test.dunit.rules.ClusterStartupRule;
 import org.apache.geode.test.dunit.rules.DistributedRestoreSystemProperties;
 import org.apache.geode.test.dunit.rules.MemberVM;
 import org.apache.geode.test.junit.categories.DistributedTest;
-import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.GfshCommandRule;
 import org.apache.geode.test.junit.rules.serializable.SerializableTestName;
 
@@ -319,15 +316,10 @@ public abstract class JdbcDistributedTest implements Serializable {
   }
 
   @Test
-  @Ignore("GEODE-4922: MySQL is truncating the milliseconds from the timestamp")
   public void verifyDateToTimestamp() throws Exception {
     server = startupRule.startServerVM(1, x -> x.withConnectionToLocator(locator.getPort()));
-    server.invoke(() -> {
-      Connection connection = DriverManager.getConnection(connectionUrl);
-      Statement statement = connection.createStatement();
-      statement.execute("Create Table " + TABLE_NAME
-          + " (id varchar(10) primary key not null, mytimestamp timestamp)");
-    });
+    createTableWithTimeStamp(server, connectionUrl, TABLE_NAME);
+
     createRegionUsingGfsh(true, false, true);
     createJdbcConnection();
     createMapping(REGION_NAME, CONNECTION_NAME);
@@ -354,6 +346,15 @@ public abstract class JdbcDistributedTest implements Serializable {
     });
   }
 
+  protected void createTableWithTimeStamp(MemberVM vm, String connectionUrl, String tableName) {
+    vm.invoke(() -> {
+      Connection connection = DriverManager.getConnection(connectionUrl);
+      Statement statement = connection.createStatement();
+      statement.execute("Create Table " + tableName
+          + " (id varchar(10) primary key not null, mytimestamp timestamp)");
+    });
+  }
+
   @Test
   public void putWritesToDB() throws Exception {
     createTable();
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
index 2576126..56b32fb 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
@@ -16,6 +16,7 @@ package org.apache.geode.connectors.jdbc;
 
 import java.net.URL;
 import java.sql.Connection;
+import java.sql.DriverManager;
 import java.sql.PreparedStatement;
 import java.sql.SQLException;
 import java.sql.Statement;
@@ -24,6 +25,7 @@ import java.sql.Types;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
+import org.apache.geode.test.dunit.rules.MemberVM;
 import org.apache.geode.test.junit.categories.DistributedTest;
 import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 import org.apache.geode.test.junit.rules.SqlDatabaseConnectionRule;
@@ -85,4 +87,14 @@ public class MySqlJdbcDistributedTest extends JdbcDistributedTest {
     statement.setNull(12, Types.BLOB);
     statement.setNull(13, Types.CHAR);
   }
+
+  @Override
+  protected void createTableWithTimeStamp(MemberVM vm, String connectionUrl, String tableName) {
+    vm.invoke(() -> {
+      Connection connection = DriverManager.getConnection(connectionUrl);
+      Statement statement = connection.createStatement();
+      statement.execute("CREATE TABLE " + tableName
+          + " (id varchar(10) primary key not null, mytimestamp timestamp(3))");
+    });
+  }
 }

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 21/23: GEODE-4947: Remove ignore label from fixed test

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit 40b159c201660c6a8633eee8593f913bdb19abcd
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Wed Apr 4 10:10:53 2018 -0700

    GEODE-4947: Remove ignore label from fixed test
---
 .../test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java | 2 --
 1 file changed, 2 deletions(-)

diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
index c64c89c..69e3fa9 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
@@ -33,7 +33,6 @@ import java.util.function.Consumer;
 import org.awaitility.Awaitility;
 import org.junit.After;
 import org.junit.Before;
-import org.junit.Ignore;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
@@ -502,7 +501,6 @@ public abstract class JdbcDistributedTest implements Serializable {
   }
 
   @Test
-  @Ignore("GEODE-4833: Postgres does not support UTF-8 null character as contents of a string")
   public void clientPutsAndGetsWithNullFieldsWithPdxClassName() throws Exception {
     createTableForAllSupportedFields();
     ClientVM client = getClientVM();

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 20/23: GEODE-4947: Make tests that spin up Docker containers Acceptance Tests

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit ed458ee3179b7e0f538a568b1c5618ba974de002
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Wed Apr 4 08:48:02 2018 -0700

    GEODE-4947: Make tests that spin up Docker containers Acceptance Tests
---
 .../apache/geode/connectors/jdbc/JdbcAsyncWriterIntegrationTest.java  | 4 ++--
 .../java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java    | 4 ++--
 .../org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java   | 4 ++--
 .../org/apache/geode/connectors/jdbc/JdbcWriterIntegrationTest.java   | 4 ++--
 .../geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java    | 4 ++--
 .../org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java    | 4 ++--
 .../apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java  | 4 ++--
 .../apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java  | 4 ++--
 .../geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java | 4 ++--
 .../org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java | 4 ++--
 .../geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java      | 4 ++--
 .../geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java      | 4 ++--
 .../jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java       | 4 ++--
 .../jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java    | 4 ++--
 .../connectors/jdbc/internal/TableMetaDataManagerIntegrationTest.java | 4 ++--
 15 files changed, 30 insertions(+), 30 deletions(-)

diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcAsyncWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcAsyncWriterIntegrationTest.java
index 0430f71..819551b 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcAsyncWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcAsyncWriterIntegrationTest.java
@@ -40,9 +40,9 @@ import org.apache.geode.connectors.jdbc.internal.TestConfigService;
 import org.apache.geode.connectors.jdbc.internal.TestableConnectionManager;
 import org.apache.geode.internal.cache.InternalCache;
 import org.apache.geode.pdx.PdxInstance;
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.AcceptanceTest;
 
-@Category(IntegrationTest.class)
+@Category(AcceptanceTest.class)
 public abstract class JdbcAsyncWriterIntegrationTest {
 
   static final String DB_NAME = "test";
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
index bafe015..c64c89c 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
@@ -49,14 +49,14 @@ import org.apache.geode.test.dunit.rules.ClientVM;
 import org.apache.geode.test.dunit.rules.ClusterStartupRule;
 import org.apache.geode.test.dunit.rules.DistributedRestoreSystemProperties;
 import org.apache.geode.test.dunit.rules.MemberVM;
-import org.apache.geode.test.junit.categories.DistributedTest;
+import org.apache.geode.test.junit.categories.AcceptanceTest;
 import org.apache.geode.test.junit.rules.GfshCommandRule;
 import org.apache.geode.test.junit.rules.serializable.SerializableTestName;
 
 /**
  * End-to-end dunits for jdbc connector
  */
-@Category(DistributedTest.class)
+@Category(AcceptanceTest.class)
 public abstract class JdbcDistributedTest implements Serializable {
 
   static final String DB_NAME = "test";
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java
index 6707fdc..805f8b4 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java
@@ -45,9 +45,9 @@ import org.apache.geode.internal.util.BlobHelper;
 import org.apache.geode.pdx.PdxInstance;
 import org.apache.geode.pdx.ReflectionBasedAutoSerializer;
 import org.apache.geode.pdx.internal.AutoSerializableManager;
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.AcceptanceTest;
 
-@Category(IntegrationTest.class)
+@Category(AcceptanceTest.class)
 public abstract class JdbcLoaderIntegrationTest {
 
   static final String DB_NAME = "test";
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcWriterIntegrationTest.java
index d30b93b..dbdc18a 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcWriterIntegrationTest.java
@@ -42,9 +42,9 @@ import org.apache.geode.connectors.jdbc.internal.TestConfigService;
 import org.apache.geode.connectors.jdbc.internal.TestableConnectionManager;
 import org.apache.geode.internal.cache.InternalCache;
 import org.apache.geode.pdx.PdxInstance;
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.AcceptanceTest;
 
-@Category(IntegrationTest.class)
+@Category(AcceptanceTest.class)
 public abstract class JdbcWriterIntegrationTest {
 
   static final String DB_NAME = "test";
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java
index 37a057d..1391fb9 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java
@@ -21,11 +21,11 @@ import java.sql.SQLException;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.AcceptanceTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 
-@Category(IntegrationTest.class)
+@Category(AcceptanceTest.class)
 public class MySqlJdbcAsyncWriterIntegrationTest extends JdbcAsyncWriterIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
index 56b32fb..48de63c 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
@@ -26,14 +26,14 @@ import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
 import org.apache.geode.test.dunit.rules.MemberVM;
-import org.apache.geode.test.junit.categories.DistributedTest;
+import org.apache.geode.test.junit.categories.AcceptanceTest;
 import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 import org.apache.geode.test.junit.rules.SqlDatabaseConnectionRule;
 
 /**
  * End-to-end dunits for jdbc connector
  */
-@Category(DistributedTest.class)
+@Category(AcceptanceTest.class)
 public class MySqlJdbcDistributedTest extends JdbcDistributedTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
index 0d75045..f74fd0b 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
@@ -22,11 +22,11 @@ import java.sql.Statement;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.AcceptanceTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 
-@Category(IntegrationTest.class)
+@Category(AcceptanceTest.class)
 public class MySqlJdbcLoaderIntegrationTest extends JdbcLoaderIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java
index 7d64ad0..329b8c1 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java
@@ -21,11 +21,11 @@ import java.sql.SQLException;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.AcceptanceTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 
-@Category(IntegrationTest.class)
+@Category(AcceptanceTest.class)
 public class MySqlJdbcWriterIntegrationTest extends JdbcWriterIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java
index 4dbacea..dcaaaf0 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java
@@ -21,11 +21,11 @@ import java.sql.SQLException;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.AcceptanceTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 
-@Category(IntegrationTest.class)
+@Category(AcceptanceTest.class)
 public class PostgresJdbcAsyncWriterIntegrationTest extends JdbcAsyncWriterIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
index 6643cbe..224fd9e 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
@@ -24,14 +24,14 @@ import java.sql.Types;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.DistributedTest;
+import org.apache.geode.test.junit.categories.AcceptanceTest;
 import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 import org.apache.geode.test.junit.rules.SqlDatabaseConnectionRule;
 
 /**
  * End-to-end dunits for jdbc connector
  */
-@Category(DistributedTest.class)
+@Category(AcceptanceTest.class)
 public class PostgresJdbcDistributedTest extends JdbcDistributedTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
index 3b9755f..f90a37c 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
@@ -22,11 +22,11 @@ import java.sql.Statement;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.AcceptanceTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 
-@Category(IntegrationTest.class)
+@Category(AcceptanceTest.class)
 public class PostgresJdbcLoaderIntegrationTest extends JdbcLoaderIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java
index 98d45c0..7b324c3 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java
@@ -21,11 +21,11 @@ import java.sql.SQLException;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.AcceptanceTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 
-@Category(IntegrationTest.class)
+@Category(AcceptanceTest.class)
 public class PostgresJdbcWriterIntegrationTest extends JdbcWriterIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java
index 44d3365..e75472f 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/MySqlTableMetaDataManagerIntegrationTest.java
@@ -21,11 +21,11 @@ import java.sql.SQLException;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.AcceptanceTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 
-@Category(IntegrationTest.class)
+@Category(AcceptanceTest.class)
 public class MySqlTableMetaDataManagerIntegrationTest extends TableMetaDataManagerIntegrationTest {
 
   private static final URL COMPOSE_RESOURCE_PATH =
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java
index c5304ae..0697abd 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/PostgresTableMetaDataManagerIntegrationTest.java
@@ -21,11 +21,11 @@ import java.sql.SQLException;
 import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.AcceptanceTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 
-@Category(IntegrationTest.class)
+@Category(AcceptanceTest.class)
 public class PostgresTableMetaDataManagerIntegrationTest
     extends TableMetaDataManagerIntegrationTest {
 
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerIntegrationTest.java
index 6ec61f4..15c9e93 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TableMetaDataManagerIntegrationTest.java
@@ -28,9 +28,9 @@ import org.junit.Before;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.categories.AcceptanceTest;
 
-@Category(IntegrationTest.class)
+@Category(AcceptanceTest.class)
 public abstract class TableMetaDataManagerIntegrationTest {
 
   private static final String REGION_TABLE_NAME = "employees";

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 04/23: GEODE-4947: Update integration tests to use mysql and postgres

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit 1f234ca6a1c3eba0d5b65632631d50e1c10e0204
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Wed Mar 28 10:16:46 2018 -0700

    GEODE-4947: Update integration tests to use mysql and postgres
---
 .../jdbc/internal/SqlStatementFactory.java         | 14 ++++++------
 .../jdbc/JdbcAsyncWriterIntegrationTest.java       | 14 +++++++-----
 .../connectors/jdbc/JdbcLoaderIntegrationTest.java | 15 ++++++++-----
 .../connectors/jdbc/JdbcWriterIntegrationTest.java | 13 ++++++-----
 ...va => MySqlJdbcAsyncWriterIntegrationTest.java} | 22 +++++++++---------
 ...st.java => MySqlJdbcLoaderIntegrationTest.java} | 21 ++++++++---------
 ...st.java => MySqlJdbcWriterIntegrationTest.java} | 21 ++++++++---------
 ...=> PostgresJdbcAsyncWriterIntegrationTest.java} | 21 ++++++++---------
 ...java => PostgresJdbcLoaderIntegrationTest.java} | 21 ++++++++---------
 ...java => PostgresJdbcWriterIntegrationTest.java} | 21 ++++++++---------
 .../jdbc/internal/TestConfigService.java           | 16 ++++++-------
 .../test/junit/rules/DatabaseConnectionRule.java   |  2 ++
 .../junit/rules/InMemoryDerbyConnectionRule.java   |  8 +++++--
 .../test/junit/rules/MySqlConnectionRule.java      | 26 +++++++++++++++++-----
 .../test/junit/rules/PostgresConnectionRule.java   |  2 +-
 .../junit/rules/SqlDatabaseConnectionRule.java     |  4 ++--
 16 files changed, 140 insertions(+), 101 deletions(-)

diff --git a/geode-connectors/src/main/java/org/apache/geode/connectors/jdbc/internal/SqlStatementFactory.java b/geode-connectors/src/main/java/org/apache/geode/connectors/jdbc/internal/SqlStatementFactory.java
index ac787b8..d5367ef 100644
--- a/geode-connectors/src/main/java/org/apache/geode/connectors/jdbc/internal/SqlStatementFactory.java
+++ b/geode-connectors/src/main/java/org/apache/geode/connectors/jdbc/internal/SqlStatementFactory.java
@@ -22,18 +22,18 @@ class SqlStatementFactory {
     assert columnList.size() == 1;
     ColumnValue keyCV = columnList.get(0);
     assert keyCV.isKey();
-    return "SELECT * FROM \"" + tableName + "\" WHERE \"" + keyCV.getColumnName() + "\" = ?";
+    return "SELECT * FROM " + tableName + " WHERE " + keyCV.getColumnName() + " = ?";
   }
 
   String createDestroySqlString(String tableName, List<ColumnValue> columnList) {
     assert columnList.size() == 1;
     ColumnValue keyCV = columnList.get(0);
     assert keyCV.isKey();
-    return "DELETE FROM \"" + tableName + "\" WHERE \"" + keyCV.getColumnName() + "\" = ?";
+    return "DELETE FROM " + tableName + " WHERE " + keyCV.getColumnName() + " = ?";
   }
 
   String createUpdateSqlString(String tableName, List<ColumnValue> columnList) {
-    StringBuilder query = new StringBuilder("UPDATE \"" + tableName + "\" SET ");
+    StringBuilder query = new StringBuilder("UPDATE " + tableName + " SET ");
     int idx = 0;
     for (ColumnValue column : columnList) {
       if (!column.isKey()) {
@@ -41,14 +41,14 @@ class SqlStatementFactory {
         if (idx > 1) {
           query.append(", ");
         }
-        query.append('"').append(column.getColumnName()).append('"');
+        query.append(column.getColumnName());
         query.append(" = ?");
       }
     }
     for (ColumnValue column : columnList) {
       if (column.isKey()) {
         query.append(" WHERE ");
-        query.append('"').append(column.getColumnName()).append('"');
+        query.append(column.getColumnName());
         query.append(" = ?");
         // currently only support simple primary key with one column
         break;
@@ -58,13 +58,13 @@ class SqlStatementFactory {
   }
 
   String createInsertSqlString(String tableName, List<ColumnValue> columnList) {
-    StringBuilder columnNames = new StringBuilder("INSERT INTO \"" + tableName + "\" (");
+    StringBuilder columnNames = new StringBuilder("INSERT INTO " + tableName + " (");
     StringBuilder columnValues = new StringBuilder(" VALUES (");
     int columnCount = columnList.size();
     int idx = 0;
     for (ColumnValue column : columnList) {
       idx++;
-      columnNames.append('"').append(column.getColumnName()).append('"');
+      columnNames.append(column.getColumnName());
       columnValues.append('?');
       if (idx != columnCount) {
         columnNames.append(", ");
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcAsyncWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcAsyncWriterIntegrationTest.java
index c1adcb9..11767eb 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcAsyncWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcAsyncWriterIntegrationTest.java
@@ -44,11 +44,10 @@ import org.apache.geode.pdx.PdxInstance;
 import org.apache.geode.test.junit.categories.IntegrationTest;
 
 @Category(IntegrationTest.class)
-public class JdbcAsyncWriterIntegrationTest {
+public abstract class JdbcAsyncWriterIntegrationTest {
 
-  private static final String DB_NAME = "DerbyDB";
+  static final String DB_NAME = "test";
   private static final String REGION_TABLE_NAME = "employees";
-  private static final String CONNECTION_URL = "jdbc:derby:memory:" + DB_NAME + ";create=true";
 
   private InternalCache cache;
   private Region<String, PdxInstance> employees;
@@ -65,7 +64,8 @@ public class JdbcAsyncWriterIntegrationTest {
     cache = (InternalCache) new CacheFactory().set("locators", "").set("mcast-port", "0")
         .setPdxReadSerialized(false).create();
     employees = createRegionWithJDBCAsyncWriter(REGION_TABLE_NAME);
-    connection = DriverManager.getConnection(CONNECTION_URL);
+    // connection = DriverManager.getConnection(CONNECTION_URL);
+    connection = getConnection();
     statement = connection.createStatement();
     statement.execute("Create Table " + REGION_TABLE_NAME
         + " (id varchar(10) primary key not null, name varchar(10), age int)");
@@ -95,6 +95,10 @@ public class JdbcAsyncWriterIntegrationTest {
     }
   }
 
+  public abstract Connection getConnection() throws SQLException;
+
+  public abstract String getConnectionUrl();
+
   @Test
   public void validateJDBCAsyncWriterTotalEvents() {
     employees.put("1", pdxEmployee1);
@@ -241,7 +245,7 @@ public class JdbcAsyncWriterIntegrationTest {
   private SqlHandler createSqlHandler()
       throws ConnectionConfigExistsException, RegionMappingExistsException {
     return new SqlHandler(new TestableConnectionManager(), new TableMetaDataManager(),
-        TestConfigService.getTestConfigService());
+        TestConfigService.getTestConfigService(getConnectionUrl()));
   }
 
 }
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java
index a4ec5ab..6a9dfbd 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java
@@ -21,6 +21,7 @@ import java.io.IOException;
 import java.sql.Connection;
 import java.sql.DriverManager;
 import java.sql.PreparedStatement;
+import java.sql.SQLException;
 import java.sql.Statement;
 import java.util.Date;
 
@@ -48,11 +49,11 @@ import org.apache.geode.pdx.internal.AutoSerializableManager;
 import org.apache.geode.test.junit.categories.IntegrationTest;
 
 @Category(IntegrationTest.class)
-public class JdbcLoaderIntegrationTest {
+public abstract class JdbcLoaderIntegrationTest {
+
+  static final String DB_NAME = "test";
 
-  private static final String DB_NAME = "DerbyDB";
   private static final String REGION_TABLE_NAME = "employees";
-  private static final String CONNECTION_URL = "jdbc:derby:memory:" + DB_NAME + ";create=true";
 
   private InternalCache cache;
   private Connection connection;
@@ -69,7 +70,7 @@ public class JdbcLoaderIntegrationTest {
         .setPdxSerializer(
             new ReflectionBasedAutoSerializer(ClassWithSupportedPdxFields.class.getName()))
         .create();
-    connection = DriverManager.getConnection(CONNECTION_URL);
+    connection = getConnection();
     statement = connection.createStatement();
   }
 
@@ -79,6 +80,10 @@ public class JdbcLoaderIntegrationTest {
     closeDB();
   }
 
+  public abstract Connection getConnection() throws SQLException;
+
+  public abstract String getConnectionUrl();
+
   private void createEmployeeTable() throws Exception {
     statement.execute("Create Table " + REGION_TABLE_NAME
         + " (id varchar(10) primary key not null, name varchar(10), age int)");
@@ -182,7 +187,7 @@ public class JdbcLoaderIntegrationTest {
       throws ConnectionConfigExistsException, RegionMappingExistsException {
     return new SqlHandler(new TestableConnectionManager(), new TableMetaDataManager(),
         TestConfigService.getTestConfigService((InternalCache) cache, pdxClassName,
-            primaryKeyInValue));
+            primaryKeyInValue, getConnectionUrl()));
   }
 
   private <K, V> Region<K, V> createRegionWithJDBCLoader(String regionName, String pdxClassName,
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcWriterIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcWriterIntegrationTest.java
index 5e42631..5a489a7 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcWriterIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcWriterIntegrationTest.java
@@ -46,11 +46,10 @@ import org.apache.geode.pdx.PdxInstance;
 import org.apache.geode.test.junit.categories.IntegrationTest;
 
 @Category(IntegrationTest.class)
-public class JdbcWriterIntegrationTest {
+public abstract class JdbcWriterIntegrationTest {
 
-  private static final String DB_NAME = "DerbyDB";
+  static final String DB_NAME = "test";
   private static final String REGION_TABLE_NAME = "employees";
-  private static final String CONNECTION_URL = "jdbc:derby:memory:" + DB_NAME + ";create=true";
 
   private InternalCache cache;
   private Region<String, PdxInstance> employees;
@@ -68,7 +67,7 @@ public class JdbcWriterIntegrationTest {
         .setPdxReadSerialized(false).create();
     employees = createRegionWithJDBCSynchronousWriter(REGION_TABLE_NAME);
 
-    connection = DriverManager.getConnection(CONNECTION_URL);
+    connection = getConnection();
     statement = connection.createStatement();
     statement.execute("Create Table " + REGION_TABLE_NAME
         + " (id varchar(10) primary key not null, name varchar(10), age int)");
@@ -86,6 +85,10 @@ public class JdbcWriterIntegrationTest {
     closeDB();
   }
 
+  public abstract Connection getConnection() throws SQLException;
+
+  public abstract String getConnectionUrl();
+
   private void closeDB() throws Exception {
     if (statement == null) {
       statement = connection.createStatement();
@@ -227,7 +230,7 @@ public class JdbcWriterIntegrationTest {
   private SqlHandler createSqlHandler()
       throws ConnectionConfigExistsException, RegionMappingExistsException {
     return new SqlHandler(new TestableConnectionManager(), new TableMetaDataManager(),
-        TestConfigService.getTestConfigService());
+        TestConfigService.getTestConfigService(getConnectionUrl()));
   }
 
   private void assertRecordMatchesEmployee(ResultSet resultSet, String key, Employee employee)
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/DerbyTableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java
similarity index 64%
copy from geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/DerbyTableMetaDataManagerIntegrationTest.java
copy to geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java
index 8f0ed43..2ca6ff4 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/DerbyTableMetaDataManagerIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcAsyncWriterIntegrationTest.java
@@ -12,32 +12,34 @@
  * or implied. See the License for the specific language governing permissions and limitations under
  * the License.
  */
-package org.apache.geode.connectors.jdbc.internal;
+package org.apache.geode.connectors.jdbc;
 
 import java.sql.Connection;
 import java.sql.SQLException;
 
-import org.junit.Rule;
+import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
 import org.apache.geode.test.junit.categories.IntegrationTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
-import org.apache.geode.test.junit.rules.InMemoryDerbyConnectionRule;
+import org.apache.geode.test.junit.rules.MySqlConnectionRule;
+import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 
 @Category(IntegrationTest.class)
-public class DerbyTableMetaDataManagerIntegrationTest extends TableMetaDataManagerIntegrationTest {
+public class MySqlJdbcAsyncWriterIntegrationTest extends JdbcAsyncWriterIntegrationTest {
 
-  @Rule
-  public DatabaseConnectionRule dbRule = new InMemoryDerbyConnectionRule(DB_NAME);
+  @ClassRule
+  public static DatabaseConnectionRule dbRule =
+      new MySqlConnectionRule.Builder().file("src/test/resources/docker/mysql.yml")
+          .serviceName("db").port(3306).database(DB_NAME).build();
 
   @Override
-  protected Connection getConnection() throws SQLException {
+  public Connection getConnection() throws SQLException {
     return dbRule.getConnection();
   }
 
   @Override
-  protected void createTable() throws SQLException {
-    statement.execute("Create Table " + REGION_TABLE_NAME
-        + " (\"id\" varchar(10) primary key not null, \"name\" varchar(10), \"age\" int)");
+  public String getConnectionUrl() {
+    return dbRule.getConnectionUrl();
   }
 }
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/DerbyTableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
similarity index 65%
copy from geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/DerbyTableMetaDataManagerIntegrationTest.java
copy to geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
index 8f0ed43..9555769 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/DerbyTableMetaDataManagerIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
@@ -12,32 +12,33 @@
  * or implied. See the License for the specific language governing permissions and limitations under
  * the License.
  */
-package org.apache.geode.connectors.jdbc.internal;
+package org.apache.geode.connectors.jdbc;
 
 import java.sql.Connection;
 import java.sql.SQLException;
 
-import org.junit.Rule;
+import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
 import org.apache.geode.test.junit.categories.IntegrationTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
-import org.apache.geode.test.junit.rules.InMemoryDerbyConnectionRule;
+import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 
 @Category(IntegrationTest.class)
-public class DerbyTableMetaDataManagerIntegrationTest extends TableMetaDataManagerIntegrationTest {
+public class MySqlJdbcLoaderIntegrationTest extends JdbcLoaderIntegrationTest {
 
-  @Rule
-  public DatabaseConnectionRule dbRule = new InMemoryDerbyConnectionRule(DB_NAME);
+  @ClassRule
+  public static DatabaseConnectionRule dbRule =
+      new MySqlConnectionRule.Builder().file("src/test/resources/docker/mysql.yml")
+          .serviceName("db").port(3306).database(DB_NAME).build();
 
   @Override
-  protected Connection getConnection() throws SQLException {
+  public Connection getConnection() throws SQLException {
     return dbRule.getConnection();
   }
 
   @Override
-  protected void createTable() throws SQLException {
-    statement.execute("Create Table " + REGION_TABLE_NAME
-        + " (\"id\" varchar(10) primary key not null, \"name\" varchar(10), \"age\" int)");
+  public String getConnectionUrl() {
+    return dbRule.getConnectionUrl();
   }
 }
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/DerbyTableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java
similarity index 65%
copy from geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/DerbyTableMetaDataManagerIntegrationTest.java
copy to geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java
index 8f0ed43..8ca1ca3 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/DerbyTableMetaDataManagerIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcWriterIntegrationTest.java
@@ -12,32 +12,33 @@
  * or implied. See the License for the specific language governing permissions and limitations under
  * the License.
  */
-package org.apache.geode.connectors.jdbc.internal;
+package org.apache.geode.connectors.jdbc;
 
 import java.sql.Connection;
 import java.sql.SQLException;
 
-import org.junit.Rule;
+import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
 import org.apache.geode.test.junit.categories.IntegrationTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
-import org.apache.geode.test.junit.rules.InMemoryDerbyConnectionRule;
+import org.apache.geode.test.junit.rules.MySqlConnectionRule;
 
 @Category(IntegrationTest.class)
-public class DerbyTableMetaDataManagerIntegrationTest extends TableMetaDataManagerIntegrationTest {
+public class MySqlJdbcWriterIntegrationTest extends JdbcWriterIntegrationTest {
 
-  @Rule
-  public DatabaseConnectionRule dbRule = new InMemoryDerbyConnectionRule(DB_NAME);
+  @ClassRule
+  public static DatabaseConnectionRule dbRule =
+      new MySqlConnectionRule.Builder().file("src/test/resources/docker/mysql.yml")
+          .serviceName("db").port(3306).database(DB_NAME).build();
 
   @Override
-  protected Connection getConnection() throws SQLException {
+  public Connection getConnection() throws SQLException {
     return dbRule.getConnection();
   }
 
   @Override
-  protected void createTable() throws SQLException {
-    statement.execute("Create Table " + REGION_TABLE_NAME
-        + " (\"id\" varchar(10) primary key not null, \"name\" varchar(10), \"age\" int)");
+  public String getConnectionUrl() {
+    return dbRule.getConnectionUrl();
   }
 }
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/DerbyTableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java
similarity index 65%
copy from geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/DerbyTableMetaDataManagerIntegrationTest.java
copy to geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java
index 8f0ed43..31baf95 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/DerbyTableMetaDataManagerIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcAsyncWriterIntegrationTest.java
@@ -12,32 +12,33 @@
  * or implied. See the License for the specific language governing permissions and limitations under
  * the License.
  */
-package org.apache.geode.connectors.jdbc.internal;
+package org.apache.geode.connectors.jdbc;
 
 import java.sql.Connection;
 import java.sql.SQLException;
 
-import org.junit.Rule;
+import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
 import org.apache.geode.test.junit.categories.IntegrationTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
-import org.apache.geode.test.junit.rules.InMemoryDerbyConnectionRule;
+import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 
 @Category(IntegrationTest.class)
-public class DerbyTableMetaDataManagerIntegrationTest extends TableMetaDataManagerIntegrationTest {
+public class PostgresJdbcAsyncWriterIntegrationTest extends JdbcAsyncWriterIntegrationTest {
 
-  @Rule
-  public DatabaseConnectionRule dbRule = new InMemoryDerbyConnectionRule(DB_NAME);
+  @ClassRule
+  public static DatabaseConnectionRule dbRule =
+      new PostgresConnectionRule.Builder().file("src/test/resources/docker/postgres.yml")
+          .serviceName("db").port(5432).database(DB_NAME).build();
 
   @Override
-  protected Connection getConnection() throws SQLException {
+  public Connection getConnection() throws SQLException {
     return dbRule.getConnection();
   }
 
   @Override
-  protected void createTable() throws SQLException {
-    statement.execute("Create Table " + REGION_TABLE_NAME
-        + " (\"id\" varchar(10) primary key not null, \"name\" varchar(10), \"age\" int)");
+  public String getConnectionUrl() {
+    return dbRule.getConnectionUrl();
   }
 }
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/DerbyTableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
similarity index 65%
copy from geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/DerbyTableMetaDataManagerIntegrationTest.java
copy to geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
index 8f0ed43..0a96d5f 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/DerbyTableMetaDataManagerIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
@@ -12,32 +12,33 @@
  * or implied. See the License for the specific language governing permissions and limitations under
  * the License.
  */
-package org.apache.geode.connectors.jdbc.internal;
+package org.apache.geode.connectors.jdbc;
 
 import java.sql.Connection;
 import java.sql.SQLException;
 
-import org.junit.Rule;
+import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
 import org.apache.geode.test.junit.categories.IntegrationTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
-import org.apache.geode.test.junit.rules.InMemoryDerbyConnectionRule;
+import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 
 @Category(IntegrationTest.class)
-public class DerbyTableMetaDataManagerIntegrationTest extends TableMetaDataManagerIntegrationTest {
+public class PostgresJdbcLoaderIntegrationTest extends JdbcLoaderIntegrationTest {
 
-  @Rule
-  public DatabaseConnectionRule dbRule = new InMemoryDerbyConnectionRule(DB_NAME);
+  @ClassRule
+  public static DatabaseConnectionRule dbRule =
+      new PostgresConnectionRule.Builder().file("src/test/resources/docker/postgres.yml")
+          .serviceName("db").port(5432).database(DB_NAME).build();
 
   @Override
-  protected Connection getConnection() throws SQLException {
+  public Connection getConnection() throws SQLException {
     return dbRule.getConnection();
   }
 
   @Override
-  protected void createTable() throws SQLException {
-    statement.execute("Create Table " + REGION_TABLE_NAME
-        + " (\"id\" varchar(10) primary key not null, \"name\" varchar(10), \"age\" int)");
+  public String getConnectionUrl() {
+    return dbRule.getConnectionUrl();
   }
 }
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/DerbyTableMetaDataManagerIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java
similarity index 65%
rename from geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/DerbyTableMetaDataManagerIntegrationTest.java
rename to geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java
index 8f0ed43..ab2fe8d 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/DerbyTableMetaDataManagerIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcWriterIntegrationTest.java
@@ -12,32 +12,33 @@
  * or implied. See the License for the specific language governing permissions and limitations under
  * the License.
  */
-package org.apache.geode.connectors.jdbc.internal;
+package org.apache.geode.connectors.jdbc;
 
 import java.sql.Connection;
 import java.sql.SQLException;
 
-import org.junit.Rule;
+import org.junit.ClassRule;
 import org.junit.experimental.categories.Category;
 
 import org.apache.geode.test.junit.categories.IntegrationTest;
 import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
-import org.apache.geode.test.junit.rules.InMemoryDerbyConnectionRule;
+import org.apache.geode.test.junit.rules.PostgresConnectionRule;
 
 @Category(IntegrationTest.class)
-public class DerbyTableMetaDataManagerIntegrationTest extends TableMetaDataManagerIntegrationTest {
+public class PostgresJdbcWriterIntegrationTest extends JdbcWriterIntegrationTest {
 
-  @Rule
-  public DatabaseConnectionRule dbRule = new InMemoryDerbyConnectionRule(DB_NAME);
+  @ClassRule
+  public static DatabaseConnectionRule dbRule =
+      new PostgresConnectionRule.Builder().file("src/test/resources/docker/postgres.yml")
+          .serviceName("db").port(5432).database(DB_NAME).build();
 
   @Override
-  protected Connection getConnection() throws SQLException {
+  public Connection getConnection() throws SQLException {
     return dbRule.getConnection();
   }
 
   @Override
-  protected void createTable() throws SQLException {
-    statement.execute("Create Table " + REGION_TABLE_NAME
-        + " (\"id\" varchar(10) primary key not null, \"name\" varchar(10), \"age\" int)");
+  public String getConnectionUrl() {
+    return dbRule.getConnectionUrl();
   }
 }
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TestConfigService.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TestConfigService.java
index 93c3f27..cd19d33 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TestConfigService.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/TestConfigService.java
@@ -26,24 +26,24 @@ import org.apache.geode.internal.cache.extension.ExtensionPoint;
  * Generates fake JdbcConnectorService with Connections and RegionMappings for tests.
  */
 public class TestConfigService {
-  private static final String DB_NAME = "DerbyDB";
+  // private static final String DB_NAME = "DerbyDB";
   private static final String REGION_TABLE_NAME = "employees";
   private static final String REGION_NAME = "employees";
-  private static final String CONNECTION_URL = "jdbc:derby:memory:" + DB_NAME + ";create=true";
+  // private static final String CONNECTION_URL = "jdbc:derby:memory:" + DB_NAME + ";create=true";
   private static final String CONNECTION_CONFIG_NAME = "testConnectionConfig";
 
-  public static JdbcConnectorServiceImpl getTestConfigService()
+  public static JdbcConnectorServiceImpl getTestConfigService(String connectionUrl)
       throws ConnectionConfigExistsException, RegionMappingExistsException {
-    return getTestConfigService(createMockCache(), null, false);
+    return getTestConfigService(createMockCache(), null, false, connectionUrl);
   }
 
   public static JdbcConnectorServiceImpl getTestConfigService(InternalCache cache,
-      String pdxClassName, boolean primaryKeyInValue)
+      String pdxClassName, boolean primaryKeyInValue, String connectionUrl)
       throws ConnectionConfigExistsException, RegionMappingExistsException {
 
     JdbcConnectorServiceImpl service = new JdbcConnectorServiceImpl();
     service.init(cache);
-    service.createConnectionConfig(createConnectionConfig());
+    service.createConnectionConfig(createConnectionConfig(connectionUrl));
     service.createRegionMapping(createRegionMapping(pdxClassName, primaryKeyInValue));
     return service;
   }
@@ -59,7 +59,7 @@ public class TestConfigService {
         primaryKeyInValue, Collections.emptyMap());
   }
 
-  private static ConnectionConfiguration createConnectionConfig() {
-    return new ConnectionConfiguration(CONNECTION_CONFIG_NAME, CONNECTION_URL, null, null, null);
+  private static ConnectionConfiguration createConnectionConfig(String connectionUrl) {
+    return new ConnectionConfiguration(CONNECTION_CONFIG_NAME, connectionUrl, null, null, null);
   }
 }
diff --git a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java
index bd1c9cf..a2d7d56 100644
--- a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java
+++ b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/DatabaseConnectionRule.java
@@ -21,4 +21,6 @@ import org.junit.rules.TestRule;
 
 public interface DatabaseConnectionRule extends TestRule {
   Connection getConnection() throws SQLException;
+
+  String getConnectionUrl();
 }
diff --git a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/InMemoryDerbyConnectionRule.java b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/InMemoryDerbyConnectionRule.java
index 299a858..86b55e0 100644
--- a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/InMemoryDerbyConnectionRule.java
+++ b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/InMemoryDerbyConnectionRule.java
@@ -32,7 +32,11 @@ public class InMemoryDerbyConnectionRule extends ExternalResource
 
   @Override
   public Connection getConnection() throws SQLException {
-    String url = String.format(CONNECTION_URL, dbName);
-    return DriverManager.getConnection(url);
+    return DriverManager.getConnection(getConnectionUrl());
+  }
+
+  @Override
+  public String getConnectionUrl() {
+    return String.format(CONNECTION_URL, dbName);
   }
 }
diff --git a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java
index 8a3d34f..ca10229 100644
--- a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java
+++ b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/MySqlConnectionRule.java
@@ -14,15 +14,23 @@
  */
 package org.apache.geode.test.junit.rules;
 
+import static org.awaitility.Awaitility.matches;
+
 import java.sql.Connection;
+import java.sql.DriverManager;
 import java.sql.SQLException;
+import java.util.concurrent.TimeUnit;
 
 import com.palantir.docker.compose.DockerComposeRule;
+import org.awaitility.Awaitility;
 
 public class MySqlConnectionRule extends SqlDatabaseConnectionRule {
-  private static final String CONNECTION_STRING =
+  private static final String CREATE_DB_CONNECTION_STRING =
       "jdbc:mysql://$HOST:$EXTERNAL_PORT?user=root&useSSL=false";
 
+  private static final String CONNECTION_STRING =
+      "jdbc:mysql://$HOST:$EXTERNAL_PORT/%s?user=root&useSSL=false";
+
   protected MySqlConnectionRule(DockerComposeRule dockerRule, String serviceName, int port,
       String dbName) {
     super(dockerRule, serviceName, port, dbName);
@@ -30,18 +38,24 @@ public class MySqlConnectionRule extends SqlDatabaseConnectionRule {
 
   @Override
   public Connection getConnection() throws SQLException {
-    Connection connection = super.getConnection();
+    Awaitility.await().ignoreExceptions().atMost(10, TimeUnit.SECONDS)
+        .until(matches(() -> DriverManager.getConnection(getCreateDbConnectionUrl())));
     String dbName = getDbName();
     if (dbName != null) {
+      Connection connection = DriverManager.getConnection(getCreateDbConnectionUrl());
       connection.createStatement().execute("CREATE DATABASE IF NOT EXISTS " + dbName);
-      connection.setCatalog(dbName);
     }
-    return connection;
+    return DriverManager.getConnection(getConnectionUrl());
   }
 
   @Override
-  protected String getConnectionString() {
-    return getDockerPort().inFormat(CONNECTION_STRING);
+  public String getConnectionUrl() {
+    return getDockerPort().inFormat(String.format(CONNECTION_STRING, getDbName()));
+  }
+
+
+  public String getCreateDbConnectionUrl() {
+    return getDockerPort().inFormat(CREATE_DB_CONNECTION_STRING);
   }
 
   public static class Builder extends SqlDatabaseConnectionRule.Builder {
diff --git a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/PostgresConnectionRule.java b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/PostgresConnectionRule.java
index a3d064c..2f11c4b 100644
--- a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/PostgresConnectionRule.java
+++ b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/PostgresConnectionRule.java
@@ -26,7 +26,7 @@ public class PostgresConnectionRule extends SqlDatabaseConnectionRule {
   }
 
   @Override
-  protected String getConnectionString() {
+  public String getConnectionUrl() {
     return getDockerPort().inFormat(String.format(CONNECTION_STRING, getDbName()));
   }
 
diff --git a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/SqlDatabaseConnectionRule.java b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/SqlDatabaseConnectionRule.java
index 2897873..96fae8a 100644
--- a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/SqlDatabaseConnectionRule.java
+++ b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/SqlDatabaseConnectionRule.java
@@ -64,14 +64,14 @@ public abstract class SqlDatabaseConnectionRule extends ExternalResource
 
   @Override
   public Connection getConnection() throws SQLException {
-    String connectionUrl = getConnectionString();
+    String connectionUrl = getConnectionUrl();
     Awaitility.await().ignoreExceptions().atMost(10, TimeUnit.SECONDS)
         .until(matches(() -> DriverManager.getConnection(connectionUrl)));
     Connection connection = DriverManager.getConnection(connectionUrl);
     return connection;
   }
 
-  protected abstract String getConnectionString();
+  public abstract String getConnectionUrl();
 
   public abstract static class Builder {
     private String filePath;

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 06/23: GEODE-4947: Convert distributed tests to use mysql and postgres

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit c3ac6b30ca81126394160f22c9f68da3896f0c21
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Wed Mar 28 14:57:26 2018 -0700

    GEODE-4947: Convert distributed tests to use mysql and postgres
---
 ...JdbcDUnitTest.java => JdbcDistributedTest.java} | 87 ++++++++++------------
 .../connectors/jdbc/MySqlJdbcDistributedTest.java  | 85 +++++++++++++++++++++
 .../jdbc/PostgresJdbcDistributedTest.java          | 85 +++++++++++++++++++++
 .../jdbc/internal/SqlStatementFactoryTest.java     |  8 +-
 .../junit/rules/SqlDatabaseConnectionRule.java     |  2 +-
 5 files changed, 213 insertions(+), 54 deletions(-)

diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDUnitTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
similarity index 91%
rename from geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDUnitTest.java
rename to geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
index 90cfd17..ed748f7 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDUnitTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
@@ -17,6 +17,7 @@ package org.apache.geode.connectors.jdbc;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
+import java.io.IOException;
 import java.io.Serializable;
 import java.sql.Connection;
 import java.sql.DriverManager;
@@ -50,6 +51,7 @@ import org.apache.geode.test.dunit.rules.ClusterStartupRule;
 import org.apache.geode.test.dunit.rules.DistributedRestoreSystemProperties;
 import org.apache.geode.test.dunit.rules.MemberVM;
 import org.apache.geode.test.junit.categories.DistributedTest;
+import org.apache.geode.test.junit.rules.DatabaseConnectionRule;
 import org.apache.geode.test.junit.rules.GfshCommandRule;
 import org.apache.geode.test.junit.rules.serializable.SerializableTestName;
 
@@ -57,15 +59,13 @@ import org.apache.geode.test.junit.rules.serializable.SerializableTestName;
  * End-to-end dunits for jdbc connector
  */
 @Category(DistributedTest.class)
-public class JdbcDUnitTest implements Serializable {
+public abstract class JdbcDistributedTest implements Serializable {
 
-  private static final String DB_NAME = "DerbyDB";
+  static final String DB_NAME = "test";
   private static final String TABLE_NAME = "employees";
   private static final String REGION_NAME = "employees";
-  private static final String CONNECTION_URL = "jdbc:derby:memory:" + DB_NAME + ";create=true";
   private static final String CONNECTION_NAME = "TestConnection";
 
-
   @Rule
   public transient GfshCommandRule gfsh = new GfshCommandRule();
 
@@ -81,70 +81,59 @@ public class JdbcDUnitTest implements Serializable {
 
   private MemberVM server;
   private MemberVM locator;
+  private String connectionUrl;
 
   @Before
   public void setup() throws Exception {
     locator = startupRule.startLocatorVM(0);
     gfsh.connectAndVerify(locator);
+    connectionUrl = getConnectionUrl();
   }
 
+  public abstract Connection getConnection() throws SQLException;
+
+  public abstract String getConnectionUrl() throws IOException, InterruptedException;
+
   private void createTable() throws SQLException {
     server = startupRule.startServerVM(1, x -> x.withConnectionToLocator(locator.getPort()));
-    server.invoke(() -> {
-      Connection connection = DriverManager.getConnection(CONNECTION_URL);
+      Connection connection = getConnection();
       Statement statement = connection.createStatement();
       statement.execute("Create Table " + TABLE_NAME
           + " (id varchar(10) primary key not null, name varchar(10), age int)");
-    });
   }
 
   private void createTableForAllSupportedFields() throws SQLException {
     server = startupRule.startServerVM(1,
         x -> x.withConnectionToLocator(locator.getPort()).withPDXReadSerialized());
-    server.invoke(() -> {
-      Connection connection = DriverManager.getConnection(CONNECTION_URL);
+      Connection connection = getConnection();
       Statement statement = connection.createStatement();
-      statement
-          .execute("Create Table \"" + TABLE_NAME + "\" (\"id\" varchar(10) primary key not null, "
-              + "aboolean smallint, " + "abyte smallint, " + "ashort smallint, " + "anint int, "
-              + "\"along\" bigint, " + "\"aFloat\" float, " + "\"ADOUBLE\" double, "
-              + "astring varchar(10), " + "adate timestamp, " + "anobject varchar(20), "
-              + "abytearray blob(100), " + "achar char(1))");
-    });
+      createSupportedFieldsTable(statement, TABLE_NAME);
   }
 
-  private void insertNullDataForAllSupportedFieldsTable(String key) {
-    server.invoke(() -> {
-      Connection connection = DriverManager.getConnection(CONNECTION_URL);
+  protected abstract void createSupportedFieldsTable(Statement statement, String tableName)
+      throws SQLException;
+
+  private void insertNullDataForAllSupportedFieldsTable(String key) throws SQLException {
+      Connection connection = DriverManager.getConnection(connectionUrl);
 
       String insertQuery =
-          "Insert into \"" + TABLE_NAME + "\" values (" + "?,?,?,?,?,?,?,?,?,?,?,?,?)";
+          "Insert into " + TABLE_NAME + " values (" + "?,?,?,?,?,?,?,?,?,?,?,?,?)";
       System.out.println("### Query is :" + insertQuery);
       PreparedStatement statement = connection.prepareStatement(insertQuery);
-      statement.setObject(1, key);
-      statement.setNull(2, Types.SMALLINT);
-      statement.setNull(3, Types.SMALLINT);
-      statement.setNull(4, Types.SMALLINT);
-      statement.setNull(5, Types.INTEGER);
-      statement.setNull(6, Types.BIGINT);
-      statement.setNull(7, Types.FLOAT);
-      statement.setNull(8, Types.DOUBLE);
-      statement.setNull(9, Types.VARCHAR);
-      statement.setNull(10, Types.TIMESTAMP);
-      statement.setNull(11, Types.VARCHAR);
-      statement.setNull(12, Types.BLOB);
-      statement.setNull(13, Types.CHAR);
+    createNullStatement(key, statement);
 
       statement.execute();
-    });
   }
 
-  private void insertDataForAllSupportedFieldsTable(String key, ClassWithSupportedPdxFields data) {
-    server.invoke(() -> {
-      Connection connection = DriverManager.getConnection(CONNECTION_URL);
+  protected abstract void createNullStatement(String key, PreparedStatement statement)
+      throws SQLException;
+
+  private void insertDataForAllSupportedFieldsTable(String key, ClassWithSupportedPdxFields data)
+      throws SQLException {
+      Connection connection = DriverManager.getConnection(connectionUrl);
 
       String insertQuery =
-          "Insert into \"" + TABLE_NAME + "\" values (" + "?,?,?,?,?,?,?,?,?,?,?,?,?)";
+          "Insert into " + TABLE_NAME + " values (" + "?,?,?,?,?,?,?,?,?,?,?,?,?)";
       System.out.println("### Query is :" + insertQuery);
       PreparedStatement statement = connection.prepareStatement(insertQuery);
       statement.setObject(1, key);
@@ -156,24 +145,24 @@ public class JdbcDUnitTest implements Serializable {
       statement.setObject(7, data.getAfloat());
       statement.setObject(8, data.getAdouble());
       statement.setObject(9, data.getAstring());
-      statement.setObject(10, data.getAdate());
+      statement.setObject(10, new java.sql.Timestamp(data.getAdate().getTime()));
       statement.setObject(11, data.getAnobject());
       statement.setObject(12, data.getAbytearray());
       statement.setObject(13, new Character(data.getAchar()).toString());
 
       statement.execute();
-    });
   }
 
   @After
   public void tearDown() throws Exception {
-    server.invoke(() -> {
+    closeDB();
+    /*server.invoke(() -> {
       closeDB();
-    });
+    });*/
   }
 
   private void closeDB() throws SQLException {
-    try (Connection connection = DriverManager.getConnection(CONNECTION_URL)) {
+    try (Connection connection = DriverManager.getConnection(connectionUrl)) {
       try (Statement statement = connection.createStatement()) {
         try {
           statement.execute("Drop table " + TABLE_NAME);
@@ -181,7 +170,7 @@ public class JdbcDUnitTest implements Serializable {
         }
 
         try {
-          statement.execute("Drop table \"" + TABLE_NAME + "\"");
+          statement.execute("Drop table " + TABLE_NAME + "");
         } catch (SQLException ignore) {
         }
       }
@@ -267,7 +256,7 @@ public class JdbcDUnitTest implements Serializable {
   public void verifyDateToDate() throws Exception {
     server = startupRule.startServerVM(1, x -> x.withConnectionToLocator(locator.getPort()));
     server.invoke(() -> {
-      Connection connection = DriverManager.getConnection(CONNECTION_URL);
+      Connection connection = DriverManager.getConnection(connectionUrl);
       Statement statement = connection.createStatement();
       statement.execute(
           "Create Table " + TABLE_NAME + " (id varchar(10) primary key not null, mydate date)");
@@ -302,7 +291,7 @@ public class JdbcDUnitTest implements Serializable {
   public void verifyDateToTime() throws Exception {
     server = startupRule.startServerVM(1, x -> x.withConnectionToLocator(locator.getPort()));
     server.invoke(() -> {
-      Connection connection = DriverManager.getConnection(CONNECTION_URL);
+      Connection connection = DriverManager.getConnection(connectionUrl);
       Statement statement = connection.createStatement();
       statement.execute(
           "Create Table " + TABLE_NAME + " (id varchar(10) primary key not null, mytime time)");
@@ -337,7 +326,7 @@ public class JdbcDUnitTest implements Serializable {
   public void verifyDateToTimestamp() throws Exception {
     server = startupRule.startServerVM(1, x -> x.withConnectionToLocator(locator.getPort()));
     server.invoke(() -> {
-      Connection connection = DriverManager.getConnection(CONNECTION_URL);
+      Connection connection = DriverManager.getConnection(connectionUrl);
       Statement statement = connection.createStatement();
       statement.execute("Create Table " + TABLE_NAME
           + " (id varchar(10) primary key not null, mytimestamp timestamp)");
@@ -614,7 +603,7 @@ public class JdbcDUnitTest implements Serializable {
 
   private void createJdbcConnection() {
     final String commandStr =
-        "create jdbc-connection --name=" + CONNECTION_NAME + " --url=" + CONNECTION_URL;
+        "create jdbc-connection --name=" + CONNECTION_NAME + " --url=" + connectionUrl;
     gfsh.executeAndAssertThat(commandStr).statusIsSuccess();
   }
 
@@ -661,7 +650,7 @@ public class JdbcDUnitTest implements Serializable {
 
   private void assertTableHasEmployeeData(int size, PdxInstance employee, String key)
       throws SQLException {
-    Connection connection = DriverManager.getConnection(CONNECTION_URL);
+    Connection connection = DriverManager.getConnection(connectionUrl);
     Statement statement = connection.createStatement();
     Awaitility.await().atMost(30, TimeUnit.SECONDS).until(() -> {
       assertThat(getRowCount(statement, TABLE_NAME)).isEqualTo(size);
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
new file mode 100644
index 0000000..c86748d
--- /dev/null
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
@@ -0,0 +1,85 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
+ * agreements. See the NOTICE file distributed with this work for additional information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package org.apache.geode.connectors.jdbc;
+
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+import java.sql.SQLException;
+import java.sql.Statement;
+import java.sql.Types;
+
+import org.junit.ClassRule;
+import org.junit.experimental.categories.Category;
+
+import org.apache.geode.test.junit.categories.DistributedTest;
+import org.apache.geode.test.junit.rules.MySqlConnectionRule;
+import org.apache.geode.test.junit.rules.SqlDatabaseConnectionRule;
+
+/**
+ * End-to-end dunits for jdbc connector
+ */
+@Category(DistributedTest.class)
+public class MySqlJdbcDistributedTest extends JdbcDistributedTest {
+
+  @ClassRule
+  public static transient SqlDatabaseConnectionRule dbRule = createConnectionRule();// = new MySqlConnectionRule.Builder().file("src/test/resources/docker/mysql.yml").serviceName("db").port(3306).database(DB_NAME).build();
+
+  private static SqlDatabaseConnectionRule createConnectionRule() {
+    try {
+      return new MySqlConnectionRule.Builder().file("src/test/resources/docker/mysql.yml")
+          .serviceName("db").port(3306).database(DB_NAME).build();
+    } catch (IllegalStateException e) {
+      return null;
+    }
+  }
+
+  @Override
+  public Connection getConnection() throws SQLException {
+    return dbRule.getConnection();
+  }
+
+  @Override
+  public String getConnectionUrl() {
+    return dbRule.getConnectionUrl();
+  }
+
+  @Override
+  protected void createSupportedFieldsTable(Statement statement, String tableName)
+      throws SQLException {
+    statement
+        .execute("CREATE TABLE " + tableName + " (id varchar(10) primary key not null, "
+            + "aboolean smallint, " + "abyte smallint, " + "ashort smallint, " + "anint int, "
+            + "along bigint, " + "aFloat float, " + "ADOUBLE double, "
+            + "astring varchar(10), " + "adate datetime, " + "anobject varchar(20), "
+            + "abytearray blob(100), " + "achar char(1))");
+  }
+
+  @Override
+  protected void createNullStatement(String key, PreparedStatement statement) throws SQLException {
+    statement.setObject(1, key);
+    statement.setNull(2, Types.BOOLEAN);
+    statement.setNull(3, Types.SMALLINT);
+    statement.setNull(4, Types.SMALLINT);
+    statement.setNull(5, Types.INTEGER);
+    statement.setNull(6, Types.BIGINT);
+    statement.setNull(7, Types.FLOAT);
+    statement.setNull(8, Types.DOUBLE);
+    statement.setNull(9, Types.VARCHAR);
+    statement.setNull(10, Types.TIMESTAMP);
+    statement.setNull(11, Types.VARCHAR);
+    statement.setNull(12, Types.BLOB);
+    statement.setNull(13, Types.CHAR);
+  }
+}
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
new file mode 100644
index 0000000..8a91407
--- /dev/null
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
@@ -0,0 +1,85 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
+ * agreements. See the NOTICE file distributed with this work for additional information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package org.apache.geode.connectors.jdbc;
+
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+import java.sql.SQLException;
+import java.sql.Statement;
+import java.sql.Types;
+
+import org.junit.ClassRule;
+import org.junit.experimental.categories.Category;
+
+import org.apache.geode.test.junit.categories.DistributedTest;
+import org.apache.geode.test.junit.rules.PostgresConnectionRule;
+import org.apache.geode.test.junit.rules.SqlDatabaseConnectionRule;
+
+/**
+ * End-to-end dunits for jdbc connector
+ */
+@Category(DistributedTest.class)
+public class PostgresJdbcDistributedTest extends JdbcDistributedTest {
+
+  @ClassRule
+  public static transient SqlDatabaseConnectionRule dbRule = createConnectionRule();// = new MySqlConnectionRule.Builder().file("src/test/resources/docker/mysql.yml").serviceName("db").port(3306).database(DB_NAME).build();
+
+  private static SqlDatabaseConnectionRule createConnectionRule() {
+    try {
+      return new PostgresConnectionRule.Builder().file("src/test/resources/docker/postgres.yml")
+          .serviceName("db").port(5432).database(DB_NAME).build();
+    } catch (IllegalStateException e) {
+      return null;
+    }
+  }
+
+  @Override
+  public Connection getConnection() throws SQLException {
+    return dbRule.getConnection();
+  }
+
+  @Override
+  public String getConnectionUrl() {
+    return dbRule.getConnectionUrl();
+  }
+
+  @Override
+  protected void createSupportedFieldsTable(Statement statement, String tableName)
+      throws SQLException {
+    statement
+        .execute("CREATE TABLE " + tableName + " (id varchar(10) primary key not null, "
+            + "aboolean boolean, " + "abyte smallint, " + "ashort smallint, " + "anint int, "
+            + "along bigint, " + "aFloat float, " + "ADOUBLE double precision, "
+            + "astring varchar(10), " + "adate timestamp, " + "anobject varchar(20), "
+            + "abytearray bytea, " + "achar char(1))");
+  }
+
+  @Override
+  protected void createNullStatement(String key, PreparedStatement statement) throws SQLException {
+    statement.setObject(1, key);
+    statement.setNull(2, Types.BOOLEAN);
+    statement.setNull(3, Types.SMALLINT);
+    statement.setNull(4, Types.SMALLINT);
+    statement.setNull(5, Types.INTEGER);
+    statement.setNull(6, Types.BIGINT);
+    statement.setNull(7, Types.FLOAT);
+    statement.setNull(8, Types.DOUBLE);
+    statement.setNull(9, Types.VARCHAR);
+    statement.setNull(10, Types.TIMESTAMP);
+    statement.setNull(11, Types.VARCHAR);
+    statement.setNull(12, Types.ARRAY);
+    statement.setNull(13, Types.CHAR);
+  }
+}
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/SqlStatementFactoryTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/SqlStatementFactoryTest.java
index 3bc3ae9..59636f9 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/SqlStatementFactoryTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/SqlStatementFactoryTest.java
@@ -44,7 +44,7 @@ public class SqlStatementFactoryTest {
   @Test
   public void getSelectQueryString() throws Exception {
     String expectedStatement =
-        String.format("SELECT * FROM \"%s\" WHERE \"%s\" = ?", TABLE_NAME, KEY_COLUMN_NAME);
+        String.format("SELECT * FROM %s WHERE %s = ?", TABLE_NAME, KEY_COLUMN_NAME);
     List<ColumnValue> keyColumn = new ArrayList<>();
     keyColumn.add(new ColumnValue(true, KEY_COLUMN_NAME, null, 0));
 
@@ -56,7 +56,7 @@ public class SqlStatementFactoryTest {
   @Test
   public void getDestroySqlString() throws Exception {
     String expectedStatement =
-        String.format("DELETE FROM \"%s\" WHERE \"%s\" = ?", TABLE_NAME, KEY_COLUMN_NAME);
+        String.format("DELETE FROM %s WHERE %s = ?", TABLE_NAME, KEY_COLUMN_NAME);
     List<ColumnValue> keyColumn = new ArrayList<>();
     keyColumn.add(new ColumnValue(true, KEY_COLUMN_NAME, null, 0));
 
@@ -68,7 +68,7 @@ public class SqlStatementFactoryTest {
   @Test
   public void getUpdateSqlString() throws Exception {
     String expectedStatement = String.format(
-        "UPDATE \"%s\" SET \"%s\" = ?, \"%s\" = ? WHERE \"%s\" = ?", TABLE_NAME,
+        "UPDATE %s SET %s = ?, %s = ? WHERE %s = ?", TABLE_NAME,
         columnValues.get(0).getColumnName(), columnValues.get(2).getColumnName(), KEY_COLUMN_NAME);
 
     String statement = factory.createUpdateSqlString(TABLE_NAME, columnValues);
@@ -79,7 +79,7 @@ public class SqlStatementFactoryTest {
   @Test
   public void getInsertSqlString() throws Exception {
     String expectedStatement =
-        String.format("INSERT INTO \"%s\" (\"%s\", \"%s\", \"%s\") VALUES (?,?,?)", TABLE_NAME,
+        String.format("INSERT INTO %s (%s, %s, %s) VALUES (?,?,?)", TABLE_NAME,
             columnValues.get(0).getColumnName(), columnValues.get(1).getColumnName(),
             columnValues.get(2).getColumnName());
 
diff --git a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/SqlDatabaseConnectionRule.java b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/SqlDatabaseConnectionRule.java
index 96fae8a..628dfb3 100644
--- a/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/SqlDatabaseConnectionRule.java
+++ b/geode-connectors/src/test/java/org/apache/geode/test/junit/rules/SqlDatabaseConnectionRule.java
@@ -79,7 +79,7 @@ public abstract class SqlDatabaseConnectionRule extends ExternalResource
     private int port;
     private String dbName;
 
-    public abstract DatabaseConnectionRule build();
+    public abstract SqlDatabaseConnectionRule build();
 
     public Builder file(String filePath) {
       this.filePath = filePath;

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 07/23: GEODE-4947: Mark failing tests as ignored

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit 720724ccc052c8490d2d23d2fe93515bb76c6041
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Wed Mar 28 15:20:44 2018 -0700

    GEODE-4947: Mark failing tests as ignored
---
 .../java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java     | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
index ed748f7..3688f5d 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
@@ -35,6 +35,7 @@ import java.util.function.Consumer;
 import org.awaitility.Awaitility;
 import org.junit.After;
 import org.junit.Before;
+import org.junit.Ignore;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
@@ -323,6 +324,7 @@ public abstract class JdbcDistributedTest implements Serializable {
   }
 
   @Test
+  @Ignore("GEODE-4922: MySQL is truncating the milliseconds from the timestamp")
   public void verifyDateToTimestamp() throws Exception {
     server = startupRule.startServerVM(1, x -> x.withConnectionToLocator(locator.getPort()));
     server.invoke(() -> {
@@ -509,6 +511,7 @@ public abstract class JdbcDistributedTest implements Serializable {
   }
 
   @Test
+  @Ignore("GEODE-4833: Postgres does not support UTF-8 null character as contents of a string")
   public void clientPutsAndGetsWithNullFieldsWithPdxClassName() throws Exception {
     createTableForAllSupportedFields();
     ClientVM client = getClientVM();

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.

[geode] 08/23: GEODE-4947: Fix spotless formatting

Posted by ag...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

agingade pushed a commit to branch feature/GEODE-4947
in repository https://gitbox.apache.org/repos/asf/geode.git

commit eeb10b351308ecdcfadba38486a998b2303b22fd
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Wed Mar 28 15:40:30 2018 -0700

    GEODE-4947: Fix spotless formatting
---
 .../geode/connectors/jdbc/JdbcDistributedTest.java | 72 +++++++++++-----------
 .../connectors/jdbc/JdbcLoaderIntegrationTest.java |  4 +-
 .../connectors/jdbc/MySqlJdbcDistributedTest.java  | 14 ++---
 .../jdbc/MySqlJdbcLoaderIntegrationTest.java       | 13 ++--
 .../jdbc/PostgresJdbcDistributedTest.java          | 14 ++---
 .../jdbc/PostgresJdbcLoaderIntegrationTest.java    |  9 ++-
 .../jdbc/internal/SqlStatementFactoryTest.java     | 13 ++--
 7 files changed, 69 insertions(+), 70 deletions(-)

diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
index 3688f5d..cfd6562 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java
@@ -97,33 +97,32 @@ public abstract class JdbcDistributedTest implements Serializable {
 
   private void createTable() throws SQLException {
     server = startupRule.startServerVM(1, x -> x.withConnectionToLocator(locator.getPort()));
-      Connection connection = getConnection();
-      Statement statement = connection.createStatement();
-      statement.execute("Create Table " + TABLE_NAME
-          + " (id varchar(10) primary key not null, name varchar(10), age int)");
+    Connection connection = getConnection();
+    Statement statement = connection.createStatement();
+    statement.execute("Create Table " + TABLE_NAME
+        + " (id varchar(10) primary key not null, name varchar(10), age int)");
   }
 
   private void createTableForAllSupportedFields() throws SQLException {
     server = startupRule.startServerVM(1,
         x -> x.withConnectionToLocator(locator.getPort()).withPDXReadSerialized());
-      Connection connection = getConnection();
-      Statement statement = connection.createStatement();
-      createSupportedFieldsTable(statement, TABLE_NAME);
+    Connection connection = getConnection();
+    Statement statement = connection.createStatement();
+    createSupportedFieldsTable(statement, TABLE_NAME);
   }
 
   protected abstract void createSupportedFieldsTable(Statement statement, String tableName)
       throws SQLException;
 
   private void insertNullDataForAllSupportedFieldsTable(String key) throws SQLException {
-      Connection connection = DriverManager.getConnection(connectionUrl);
+    Connection connection = DriverManager.getConnection(connectionUrl);
 
-      String insertQuery =
-          "Insert into " + TABLE_NAME + " values (" + "?,?,?,?,?,?,?,?,?,?,?,?,?)";
-      System.out.println("### Query is :" + insertQuery);
-      PreparedStatement statement = connection.prepareStatement(insertQuery);
+    String insertQuery = "Insert into " + TABLE_NAME + " values (" + "?,?,?,?,?,?,?,?,?,?,?,?,?)";
+    System.out.println("### Query is :" + insertQuery);
+    PreparedStatement statement = connection.prepareStatement(insertQuery);
     createNullStatement(key, statement);
 
-      statement.execute();
+    statement.execute();
   }
 
   protected abstract void createNullStatement(String key, PreparedStatement statement)
@@ -131,35 +130,36 @@ public abstract class JdbcDistributedTest implements Serializable {
 
   private void insertDataForAllSupportedFieldsTable(String key, ClassWithSupportedPdxFields data)
       throws SQLException {
-      Connection connection = DriverManager.getConnection(connectionUrl);
+    Connection connection = DriverManager.getConnection(connectionUrl);
 
-      String insertQuery =
-          "Insert into " + TABLE_NAME + " values (" + "?,?,?,?,?,?,?,?,?,?,?,?,?)";
-      System.out.println("### Query is :" + insertQuery);
-      PreparedStatement statement = connection.prepareStatement(insertQuery);
-      statement.setObject(1, key);
-      statement.setObject(2, data.isAboolean());
-      statement.setObject(3, data.getAbyte());
-      statement.setObject(4, data.getAshort());
-      statement.setObject(5, data.getAnint());
-      statement.setObject(6, data.getAlong());
-      statement.setObject(7, data.getAfloat());
-      statement.setObject(8, data.getAdouble());
-      statement.setObject(9, data.getAstring());
-      statement.setObject(10, new java.sql.Timestamp(data.getAdate().getTime()));
-      statement.setObject(11, data.getAnobject());
-      statement.setObject(12, data.getAbytearray());
-      statement.setObject(13, new Character(data.getAchar()).toString());
-
-      statement.execute();
+    String insertQuery = "Insert into " + TABLE_NAME + " values (" + "?,?,?,?,?,?,?,?,?,?,?,?,?)";
+    System.out.println("### Query is :" + insertQuery);
+    PreparedStatement statement = connection.prepareStatement(insertQuery);
+    statement.setObject(1, key);
+    statement.setObject(2, data.isAboolean());
+    statement.setObject(3, data.getAbyte());
+    statement.setObject(4, data.getAshort());
+    statement.setObject(5, data.getAnint());
+    statement.setObject(6, data.getAlong());
+    statement.setObject(7, data.getAfloat());
+    statement.setObject(8, data.getAdouble());
+    statement.setObject(9, data.getAstring());
+    statement.setObject(10, new java.sql.Timestamp(data.getAdate().getTime()));
+    statement.setObject(11, data.getAnobject());
+    statement.setObject(12, data.getAbytearray());
+    statement.setObject(13, new Character(data.getAchar()).toString());
+
+    statement.execute();
   }
 
   @After
   public void tearDown() throws Exception {
     closeDB();
-    /*server.invoke(() -> {
-      closeDB();
-    });*/
+    /*
+     * server.invoke(() -> {
+     * closeDB();
+     * });
+     */
   }
 
   private void closeDB() throws SQLException {
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java
index 1e14c6d..0a48a9a 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcLoaderIntegrationTest.java
@@ -85,8 +85,8 @@ public abstract class JdbcLoaderIntegrationTest {
 
   public abstract String getConnectionUrl();
 
-  protected abstract void createClassWithSupportedPdxFieldsTable(Statement statement, String tableName)
-      throws SQLException;
+  protected abstract void createClassWithSupportedPdxFieldsTable(Statement statement,
+      String tableName) throws SQLException;
 
   private void createEmployeeTable() throws Exception {
     statement.execute("Create Table " + REGION_TABLE_NAME
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
index c86748d..fc1f655 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java
@@ -34,7 +34,8 @@ import org.apache.geode.test.junit.rules.SqlDatabaseConnectionRule;
 public class MySqlJdbcDistributedTest extends JdbcDistributedTest {
 
   @ClassRule
-  public static transient SqlDatabaseConnectionRule dbRule = createConnectionRule();// = new MySqlConnectionRule.Builder().file("src/test/resources/docker/mysql.yml").serviceName("db").port(3306).database(DB_NAME).build();
+  public static transient SqlDatabaseConnectionRule dbRule = createConnectionRule();// = new
+                                                                                    // MySqlConnectionRule.Builder().file("src/test/resources/docker/mysql.yml").serviceName("db").port(3306).database(DB_NAME).build();
 
   private static SqlDatabaseConnectionRule createConnectionRule() {
     try {
@@ -58,12 +59,11 @@ public class MySqlJdbcDistributedTest extends JdbcDistributedTest {
   @Override
   protected void createSupportedFieldsTable(Statement statement, String tableName)
       throws SQLException {
-    statement
-        .execute("CREATE TABLE " + tableName + " (id varchar(10) primary key not null, "
-            + "aboolean smallint, " + "abyte smallint, " + "ashort smallint, " + "anint int, "
-            + "along bigint, " + "aFloat float, " + "ADOUBLE double, "
-            + "astring varchar(10), " + "adate datetime, " + "anobject varchar(20), "
-            + "abytearray blob(100), " + "achar char(1))");
+    statement.execute("CREATE TABLE " + tableName + " (id varchar(10) primary key not null, "
+        + "aboolean smallint, " + "abyte smallint, " + "ashort smallint, " + "anint int, "
+        + "along bigint, " + "aFloat float, " + "ADOUBLE double, " + "astring varchar(10), "
+        + "adate datetime, " + "anobject varchar(20), " + "abytearray blob(100), "
+        + "achar char(1))");
   }
 
   @Override
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
index 1eb8e07..c59cc41 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcLoaderIntegrationTest.java
@@ -46,9 +46,10 @@ public class MySqlJdbcLoaderIntegrationTest extends JdbcLoaderIntegrationTest {
   @Override
   protected void createClassWithSupportedPdxFieldsTable(Statement statement, String tableName)
       throws SQLException {
-    statement.execute("CREATE TABLE " + tableName
-        + " (id varchar(10) primary key not null, " + "aboolean smallint, " + "abyte smallint, "
-        + "ashort smallint, " + "anint int, " + "along bigint, " + "afloat float, "
-        + "adouble float, " + "astring varchar(10), " + "adate datetime, "
-        + "anobject varchar(20), " + "abytearray blob(100), " + "achar char(1))");
-  }}
+    statement.execute("CREATE TABLE " + tableName + " (id varchar(10) primary key not null, "
+        + "aboolean smallint, " + "abyte smallint, " + "ashort smallint, " + "anint int, "
+        + "along bigint, " + "afloat float, " + "adouble float, " + "astring varchar(10), "
+        + "adate datetime, " + "anobject varchar(20), " + "abytearray blob(100), "
+        + "achar char(1))");
+  }
+}
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
index 8a91407..04c1a4f 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcDistributedTest.java
@@ -34,7 +34,8 @@ import org.apache.geode.test.junit.rules.SqlDatabaseConnectionRule;
 public class PostgresJdbcDistributedTest extends JdbcDistributedTest {
 
   @ClassRule
-  public static transient SqlDatabaseConnectionRule dbRule = createConnectionRule();// = new MySqlConnectionRule.Builder().file("src/test/resources/docker/mysql.yml").serviceName("db").port(3306).database(DB_NAME).build();
+  public static transient SqlDatabaseConnectionRule dbRule = createConnectionRule();// = new
+                                                                                    // MySqlConnectionRule.Builder().file("src/test/resources/docker/mysql.yml").serviceName("db").port(3306).database(DB_NAME).build();
 
   private static SqlDatabaseConnectionRule createConnectionRule() {
     try {
@@ -58,12 +59,11 @@ public class PostgresJdbcDistributedTest extends JdbcDistributedTest {
   @Override
   protected void createSupportedFieldsTable(Statement statement, String tableName)
       throws SQLException {
-    statement
-        .execute("CREATE TABLE " + tableName + " (id varchar(10) primary key not null, "
-            + "aboolean boolean, " + "abyte smallint, " + "ashort smallint, " + "anint int, "
-            + "along bigint, " + "aFloat float, " + "ADOUBLE double precision, "
-            + "astring varchar(10), " + "adate timestamp, " + "anobject varchar(20), "
-            + "abytearray bytea, " + "achar char(1))");
+    statement.execute("CREATE TABLE " + tableName + " (id varchar(10) primary key not null, "
+        + "aboolean boolean, " + "abyte smallint, " + "ashort smallint, " + "anint int, "
+        + "along bigint, " + "aFloat float, " + "ADOUBLE double precision, "
+        + "astring varchar(10), " + "adate timestamp, " + "anobject varchar(20), "
+        + "abytearray bytea, " + "achar char(1))");
   }
 
   @Override
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
index 62a1b14..e9e4115 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/PostgresJdbcLoaderIntegrationTest.java
@@ -46,10 +46,9 @@ public class PostgresJdbcLoaderIntegrationTest extends JdbcLoaderIntegrationTest
   @Override
   protected void createClassWithSupportedPdxFieldsTable(Statement statement, String tableName)
       throws SQLException {
-    statement.execute("CREATE TABLE " + tableName
-        + " (id varchar(10) primary key not null, " + "aboolean boolean, " + "abyte smallint, "
-        + "ashort smallint, " + "anint int, " + "along bigint, " + "afloat float, "
-        + "adouble float, " + "astring varchar(10), " + "adate timestamp, "
-        + "anobject varchar(20), " + "abytearray bytea, " + "achar char(1))");
+    statement.execute("CREATE TABLE " + tableName + " (id varchar(10) primary key not null, "
+        + "aboolean boolean, " + "abyte smallint, " + "ashort smallint, " + "anint int, "
+        + "along bigint, " + "afloat float, " + "adouble float, " + "astring varchar(10), "
+        + "adate timestamp, " + "anobject varchar(20), " + "abytearray bytea, " + "achar char(1))");
   }
 }
diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/SqlStatementFactoryTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/SqlStatementFactoryTest.java
index 59636f9..b8bdbc2 100644
--- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/SqlStatementFactoryTest.java
+++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/internal/SqlStatementFactoryTest.java
@@ -67,9 +67,9 @@ public class SqlStatementFactoryTest {
 
   @Test
   public void getUpdateSqlString() throws Exception {
-    String expectedStatement = String.format(
-        "UPDATE %s SET %s = ?, %s = ? WHERE %s = ?", TABLE_NAME,
-        columnValues.get(0).getColumnName(), columnValues.get(2).getColumnName(), KEY_COLUMN_NAME);
+    String expectedStatement = String.format("UPDATE %s SET %s = ?, %s = ? WHERE %s = ?",
+        TABLE_NAME, columnValues.get(0).getColumnName(), columnValues.get(2).getColumnName(),
+        KEY_COLUMN_NAME);
 
     String statement = factory.createUpdateSqlString(TABLE_NAME, columnValues);
 
@@ -78,10 +78,9 @@ public class SqlStatementFactoryTest {
 
   @Test
   public void getInsertSqlString() throws Exception {
-    String expectedStatement =
-        String.format("INSERT INTO %s (%s, %s, %s) VALUES (?,?,?)", TABLE_NAME,
-            columnValues.get(0).getColumnName(), columnValues.get(1).getColumnName(),
-            columnValues.get(2).getColumnName());
+    String expectedStatement = String.format("INSERT INTO %s (%s, %s, %s) VALUES (?,?,?)",
+        TABLE_NAME, columnValues.get(0).getColumnName(), columnValues.get(1).getColumnName(),
+        columnValues.get(2).getColumnName());
 
     String statement = factory.createInsertSqlString(TABLE_NAME, columnValues);
 

-- 
To stop receiving notification emails like this one, please contact
agingade@apache.org.