Sha256: d624649ad6edbc68450b96299f24adcf22db2b647cc4bd91269716ba86c8bd0e

Contents?: true

Size: 1000 Bytes

Versions: 1

Compression:

Stored size: 1000 Bytes

Contents

require_relative '../spec_helper'
require_relative '../../lib/rapid-vaults/cli'

describe RapidVaults::CLI do
  context '.parse' do
    it 'correctly parses the user arguments for encrypt' do
      RapidVaults::CLI.parse(%w[-e -k key.txt -n nonce.txt -p secret file.txt])
      expect(RapidVaults.instance_variable_get(:@settings)).to eq(ui: :cli, action: :encrypt, key: 'key.txt', nonce: 'nonce.txt', pw: 'secret')
    end
    it 'correctly parses the arguments for decrypt' do
      RapidVaults::CLI.parse(%w[-d -k key.txt -n nonce.txt -t tag.txt -p secret file.txt])
      expect(RapidVaults.instance_variable_get(:@settings)).to eq(ui: :cli, action: :decrypt, key: 'key.txt', nonce: 'nonce.txt', tag: 'tag.txt', pw: 'secret')
    end
    it 'correctly parses the arguments for generate' do
      RapidVaults.instance_variable_set(:@settings, {})
      RapidVaults::CLI.parse(%w[-g])
      expect(RapidVaults.instance_variable_get(:@settings)).to eq(ui: :cli, action: :generate)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rapid-vaults-1.0.0 spec/rapid-vaults/cli_spec.rb