akkounts/spec/jobs/create_ldap_user_job_spec.rb
Sebastian Kippe 8ad85636d9
All checks were successful
continuous-integration/drone/push Build is passing
Create LDAP users asynchronously
2021-02-02 21:16:24 +01:00

35 lines
947 B
Ruby

require 'rails_helper'
RSpec.describe CreateLdapUserJob, type: :job do
let(:ldap_client_mock) { instance_double(Net::LDAP) }
subject(:job) {
described_class.any_instance.stub(:ldap_client).and_return(ldap_client_mock)
described_class.perform_later(
'halfinney', 'kosmos.org', 'halfinney@example.com',
'remember-remember-the-5th-of-november'
)
}
it "creates a new document with the correct attributes" do
ldap_client_mock.should_receive(:add).with(
dn: "cn=halfinney,ou=kosmos.org,cn=users,dc=kosmos,dc=org",
attributes: {
objectclass: ["top", "account", "person", "extensibleObject"],
cn: "halfinney",
sn: "halfinney",
uid: "halfinney",
mail: "halfinney@example.com",
userPassword: "remember-remember-the-5th-of-november"
}
)
perform_enqueued_jobs { job }
end
after do
clear_enqueued_jobs
clear_performed_jobs
end
end