main
 1RSpec.describe Scim::Shady::User do
 2  subject { described_class.new }
 3
 4  before do
 5    subject.user_name = 'bjensen'
 6    subject.name.formatted = "Ms. Barbara J Jensen, III"
 7    subject.name.family_name = "Jensen"
 8    subject.name.given_name = "Barbara"
 9    subject.name.middle_name = "Jane"
10    subject.name.honorific_prefix = "Ms."
11    subject.name.honorific_suffix = "III"
12    subject.display_name = "Barbara Jensen"
13    subject.nick_name = "Barb"
14    subject.preferred_language = "en_US"
15    subject.locale = "en"
16    subject.timezone = "America/Los_Angeles"
17    subject.active = true
18    subject.password = "password"
19    subject.emails << { value: 'bjensen@example.com', display: 'bjensen@example.com', type: 'work', primary: true }
20    subject.phone_numbers << { value: '1-555-5555', display: '1-555-5555', type: 'work', primary: true }
21    subject.ims << { value: 'bjensen', display: 'bjensen', type: 'xmpp', primary: true }
22    subject.photos << { value: 'https://gph.is/Zeq0fl', display: 'on the beach', type: 'photo', primary: true }
23    subject.addresses << { formatted: '123 street NE, Seattle, WA', street_address: '123 street NE', locality: 'Seattle', region: 'WA', postal_code: '12345', country: 'USA', type: 'work' }
24    subject.groups << { value: SecureRandom.uuid, '$ref' => FFaker::Internet.uri('https'), display: '', type: 'direct' }
25    subject.entitlements << { value: SecureRandom.uuid, display: 'thing', type: 'thing', primary: true }
26    subject.x509_certificates << { value: '', display: '', type: '', primary: true }
27  end
28
29  specify { expect(subject.to_h[:userName]).to eql('bjensen') }
30  specify { expect(subject).to be_valid }
31end