Sha256: c0448f04567c13c88dc70d62d5a744696d32d75ca8905af35ad124116a1e9a56

Contents?: true

Size: 1.04 KB

Versions: 1

Compression:

Stored size: 1.04 KB

Contents

require 'spec_helper'

describe 'Client-Side Encryption' do
  describe 'Prose tests: Data key and double encryption' do
    require_libmongocrypt
    require_enterprise
    min_server_fcv '4.2'

    include_context 'define shared FLE helpers'

    let(:client) do
      new_local_client(
        SpecConfig.instance.addresses,
        SpecConfig.instance.test_options
      )
    end

    let(:client_encrypted) do
      new_local_client(
        SpecConfig.instance.addresses,
        SpecConfig.instance.test_options.merge(
          auto_encryption_options: {
            kms_providers: local_kms_providers,
            key_vault_namespace: 'admin.datakeys',
          },
          database: :db,
        )
      )
    end

    before do
      client.use(:db)[:view].drop
      client.use(:db).database.command(create: "view", viewOn: "coll")
    end

    it 'does not perform encryption on views' do
      expect do
        client_encrypted[:view].insert_one({})
      end.to raise_error(Mongo::Error::CryptError, /cannot auto encrypt a view/)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
mongo-2.12.0.rc0 spec/integration/client_side_encryption/views_spec.rb