Sha256: a3f11a6728e6078a1db8e5c11ec80ca45c708e4de418aaf4b576b423911a7e85

Contents?: true

Size: 742 Bytes

Versions: 10

Compression:

Stored size: 742 Bytes

Contents

module PactBroker
  module MigrationHelper

    extend self

    def large_text_type
      if postgres?
        :text
      else
        # Assume mysql
        :mediumtext
      end
    end

    def with_mysql
      if mysql?
        yield
      end
    end

    def mysql?
      adapter =~ /mysql/
    end

    def postgres?
      adapter =~ /postgres/
    end

    def adapter
      Sequel::Model.db.adapter_scheme.to_s
    end

    def with_type_hash_if_postgres(options)
      if postgres?
        options.merge(type: "hash")
      else
        options
      end
    end

    def sqlite_safe string
      if adapter == "sqlite"
        string.gsub(/(?:\b|")order(?:"|\b)/, "`order`")
      else
        string
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
pact_broker-2.101.0 db/migrations/migration_helper.rb
pact_broker-2.100.0 db/migrations/migration_helper.rb
pact_broker-2.99.0 db/migrations/migration_helper.rb
pact_broker-2.98.0 db/migrations/migration_helper.rb
pact_broker-2.97.0 db/migrations/migration_helper.rb
pact_broker-2.96.0 db/migrations/migration_helper.rb
pact_broker-2.95.1 db/migrations/migration_helper.rb
pact_broker-2.95.0 db/migrations/migration_helper.rb
pact_broker-2.94.0 db/migrations/migration_helper.rb
pact_broker-2.93.4 db/migrations/migration_helper.rb