• Vincent Wong's avatar
    Record and show last used date of SSH Keys · b6df93a5
    Vincent Wong authored
    Addresses: Issue #13810
    
    1. Adds a last_used_at attribute to the Key table/model
    2. Update a key's last_used_at whenever it gets used
    3. Display how long ago an ssh key was last used
    b6df93a5
use_key_worker_spec.rb 648 Bytes
require 'spec_helper'

describe UseKeyWorker do
  describe "#perform" do
    it "updates the key's last_used_at attribute to the current time when it exists" do
      worker = described_class.new
      key = create(:key)
      current_time = Time.zone.now

      Timecop.freeze(current_time) do
        expect { worker.perform(key.id) }
          .to change { key.reload.last_used_at }.from(nil).to be_like_time(current_time)
      end
    end

    it "returns false and skips the job when the key doesn't exist" do
      worker = described_class.new
      key = create(:key)

      expect(worker.perform(key.id + 1)).to eq false
    end
  end
end