class TestSiteMember

Public Instance Methods

store(content) click to toggle source
# File vendor/qwik/lib/qwik/site-member.rb, line 226
def store(content)  # quickml_member
  (@dir+'_GroupMembers.txt').put(content)
end
test_all() click to toggle source
# File vendor/qwik/lib/qwik/site-member.rb, line 154
def test_all
  user = 'user@e.com'
  member = @site.member

  # test_exist?
  page = @site.create('_SiteMember')
  ok_eq(false, member.exist?(user))
  page.store(user)
  ok_eq(false, member.exist?(user))
  page.store(',user@e.com')
  ok_eq(true,  member.exist?(user))
  page.store(',user@e.com,')
  ok_eq(true,  member.exist?(user))
  page.store(',user@e.com,a')
  ok_eq(true,  member.exist?(user))
  page.store(',user@e.com,a,')
  ok_eq(true,  member.exist?(user))

  # test_remove
  member.remove(user)
  ok_eq(false, member.exist?(user))
  ok_eq('', page.load)

  # test_add
  member.add(user)
  ok_eq(true,  member.exist?(user))

  # test_invite
  guest = 'guest@example.com'
  member.add(guest, user)
  ok_eq(true,  member.exist?(guest))

  ok_eq(",user@e.com,\n,guest@example.com,user@e.com\n", page.load)
  assert(member.list.include?(user))
  assert(member.list.include?(guest))
  member.remove(guest)
  ok_eq(true, !member.exist?(guest))

  @site.delete('_SiteMember')
  ok_eq(true, !member.exist?(user))
  ok_eq([], member.list)

  # test_quickml_member
  ok_eq(true, !member.exist?(user))
  store(user)
  ok_eq(true, member.exist?(user))

  ok_eq([user], member.list)
  store('# user@e.com')
  ok_eq(true, !member.exist?(user))

  store('; user@e.com')
  ok_eq(true, !member.exist?(user))

  store('')
  ok_eq(true, !member.exist?(user))
  ok_eq([], member.list)

  # test_obfuscate
  page = @site['_SiteConfig']
  assert_match(/:open:false/, page.load)
  ok_eq(false, @site.is_open?)
  page.store(':open:true')
  ok_eq(':open:true', page.load)
  ok_eq(true, @site.is_open?)

  member.add(user)
  member.add(guest)
  assert(member.list.include?('user@e...'))
  assert(member.list.include?('guest@e...'))
end