@@ -0,0 +1,3449 @@
+package org.fluentjdbc.sqlserver;%0A%0Aimport org.junit.Assume;%0Aimport org.junit.Ignore;%0A%0Aimport java.sql.Connection;%0Aimport java.sql.DriverManager;%0Aimport java.sql.SQLException;%0Aimport java.sql.Statement;%0Aimport java.util.HashMap;%0Aimport java.util.Map;%0A%0Apublic class SqlServerTests %7B%0A%0A    private static final Map%3CString, String%3E REPLACEMENTS = new HashMap%3C%3E();%0A    static %7B%0A        REPLACEMENTS.put(%22UUID%22, %22uniqueidentifier%22);%0A        REPLACEMENTS.put(%22INTEGER_PK%22, %22integer identity primary key%22);%0A        REPLACEMENTS.put(%22DATETIME%22, %22datetime%22);%0A    %7D%0A%0A    public static class DatabaseSaveBuilderTest extends org.fluentjdbc.DatabaseSaveBuilderTest %7B%0A        public DatabaseSaveBuilderTest() throws SQLException %7B%0A            super(getConnection(), REPLACEMENTS);%0A        %7D%0A    %7D%0A%0A    public static class RichDomainModelTest extends org.fluentjdbc.RichDomainModelTest %7B%0A        public RichDomainModelTest() throws SQLException %7B%0A            super(getConnection(), REPLACEMENTS);%0A        %7D%0A%0A        @Override%0A        @Ignore%0A        public void shouldGroupEntriesByTagTypes() %7B%0A            // Ignore - relies on ResultTypeMetadata.getTableName, which is not supported%0A        %7D%0A    %7D%0A%0A    public static class FluentJdbcDemonstrationTest extends org.fluentjdbc.FluentJdbcDemonstrationTest %7B%0A        public FluentJdbcDemonstrationTest() throws SQLException %7B%0A            super(getConnection(), REPLACEMENTS);%0A        %7D%0A%0A        @Override%0A        public void shouldInsertRowWithNonexistantKey() throws SQLException %7B%0A            try(Statement stmt = connection.createStatement()) %7B%0A                stmt.executeUpdate(%22set identity_insert demo_table on%22);%0A            %7D%0A%0A            super.shouldInsertRowWithNonexistantKey();%0A%0A            try(Statement stmt = connection.createStatement()) %7B%0A                stmt.executeUpdate(%22set identity_insert demo_table off%22);%0A            %7D%0A        %7D%0A    %7D%0A%0A    public static class DatabaseTableTest extends org.fluentjdbc.DatabaseTableTest %7B%0A        public DatabaseTableTest() throws SQLException %7B%0A            super(getConnection(), REPLACEMENTS);%0A        %7D%0A%0A        @Override%0A        public void shouldInsertWithExplicitKey() throws SQLException %7B%0A            try(Statement stmt = connection.createStatement()) %7B%0A                stmt.executeUpdate(%22set identity_insert database_table_test_table on%22);%0A            %7D%0A%0A            super.shouldInsertWithExplicitKey();%0A%0A            try(Statement stmt = connection.createStatement()) %7B%0A                stmt.executeUpdate(%22set identity_insert database_table_test_table off%22);%0A            %7D%0A        %7D%0A    %7D%0A%0A    public static class BulkInsertTest extends org.fluentjdbc.BulkInsertTest %7B%0A        public BulkInsertTest() throws SQLException %7B%0A            super(getConnection(), REPLACEMENTS);%0A        %7D%0A    %7D%0A%0A    static Connection getConnection() throws SQLException %7B%0A        String username = System.getProperty(%22test.db.sqlserver.username%22, %22fluentjdbc_test%22);%0A        String password = System.getProperty(%22test.db.sqlserver.password%22, username);%0A        String url = System.getProperty(%22test.db.sqlserver.url%22,%0A                %22jdbc:jtds:sqlserver://localhost:1433;databaseName=%22 + username);%0A%0A        try %7B%0A            return DriverManager.getConnection(url, username, password);%0A        %7D catch (SQLException e) %7B%0A            if (e.getSQLState().equals(%2208S03%22)) %7B%0A                Assume.assumeNoException(e);%0A            %7D%0A            throw e;%0A        %7D%0A    %7D%0A%7D%0A

Support SQL server (with jTDS)