Sha256: 1a8a18420c6ca0321be4642c0676d68732dcf87639a67bfd69f6d5747efb8e29

Contents?: true

Size: 898 Bytes

Versions: 7

Compression:

Stored size: 898 Bytes

Contents

require 'spec_helper'

describe Invitation, organization_workspace: :test do
  let(:course) { create :course, slug: 'test/bar' }

  describe '.import_from_resource_h!' do
    let(:invitation) { Invitation.import_from_resource_h! code: 'eZNvuQ', course: course.slug, expiration_date: 2.days.since }

    it { expect(invitation).to_not be nil }
    it { expect(invitation.code).to eq 'eZNvuQ' }
    it { expect(invitation.course_slug).to eq 'test/bar' }
  end

  describe '#unexpired' do
    let(:invitation) { create(:invitation, expiration_date: 5.minutes.since, course: course) }
    context 'when expired' do
      it do
        invitation.update! expiration_date: 5.minutes.ago
        expect { invitation.reload.unexpired }.to raise_error Mumuki::Domain::GoneError
      end
    end
    context 'when not expired' do
      it { expect(invitation.unexpired).to eq invitation }
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
mumuki-laboratory-7.11.1 vendor/bundle/ruby/2.6.0/bundler/gems/mumuki-domain-c92f2a7212e2/spec/models/invitation_spec.rb
mumuki-laboratory-7.11.0 vendor/bundle/ruby/2.6.0/bundler/gems/mumuki-domain-2e15c3330133/spec/models/invitation_spec.rb
mumuki-laboratory-7.9.2 vendor/bundle/ruby/2.6.0/bundler/gems/mumuki-domain-7082a83493eb/spec/models/invitation_spec.rb
mumuki-laboratory-7.9.1 vendor/bundle/ruby/2.6.0/bundler/gems/mumuki-domain-b162dc91aa77/spec/models/invitation_spec.rb
mumuki-laboratory-7.9.0 vendor/bundle/ruby/2.6.0/bundler/gems/mumuki-domain-520f859ca8af/spec/models/invitation_spec.rb
mumuki-laboratory-7.7.1 vendor/bundle/ruby/2.6.0/bundler/gems/mumuki-domain-cb7a9018bb94/spec/models/invitation_spec.rb
mumuki-laboratory-7.7.0 vendor/bundle/ruby/2.6.0/bundler/gems/mumuki-domain-cb7a9018bb94/spec/models/invitation_spec.rb