• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

pulibrary / tigerdata-app / 3bf07487-67f1-4fd8-bacc-68ffb5fff46e

10 Nov 2025 10:24PM UTC coverage: 91.371% (+17.4%) from 73.998%
3bf07487-67f1-4fd8-bacc-68ffb5fff46e

push

circleci

web-flow
Handles access error gracefully (#2177)

This error only happened if a user got a deep link to a project that
they didn't have access to so it is not high visibility, but now we
handle the issue gracefully rather than showing the "something went
wrong" page.

Closes #2155

1 of 2 new or added lines in 1 file covered. (50.0%)

745 existing lines in 34 files now uncovered.

2859 of 3129 relevant lines covered (91.37%)

1103.43 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

85.71
/app/controllers/users/omniauth_callbacks_controller.rb
1
# frozen_string_literal: true
UNCOV
2
class Users::OmniauthCallbacksController < Devise::OmniauthCallbacksController
3✔
UNCOV
3
  def cas
3✔
UNCOV
4
    access_token = request.env["omniauth.auth"]
6✔
UNCOV
5
    @user = User.from_cas(access_token)
6✔
6

UNCOV
7
    set_cas_session
6✔
8

UNCOV
9
    if @user.nil? && access_token&.provider == "cas"
6✔
UNCOV
10
      Rails.logger.warn "User from CAS with netid #{access_token&.uid} was not found. Provider: cas"
2✔
UNCOV
11
      redirect_to help_path
2✔
UNCOV
12
      flash.notice = "You can not be signed in at this time."
2✔
UNCOV
13
    elsif @user.nil?
4✔
UNCOV
14
      Rails.logger.warn "User from CAS with netid #{access_token&.uid} was not found. Provider: #{access_token&.provider}"
2✔
UNCOV
15
      redirect_to root_path
2✔
UNCOV
16
      flash.alert = "You are not a recognized CAS user."
2✔
UNCOV
17
    else
UNCOV
18
      sign_in_and_redirect @user, event: :authentication # this will throw if @user is not activated
2✔
UNCOV
19
    end
UNCOV
20
  end
21

UNCOV
22
  private
3✔
23

UNCOV
24
    def set_cas_session
3✔
UNCOV
25
      strategy = request.env["omniauth.strategy"]
6✔
UNCOV
26
      if strategy.present?
6✔
27
        service_url = strategy.append_params(mediaflux_extra_url, { url: request.referer })
×
28
        session[:cas_login_url] = strategy.login_url(service_url)
×
29
        session[:cas_validation_url] = strategy.service_validate_url(service_url, "")
×
UNCOV
30
      end
UNCOV
31
    end
UNCOV
32
end
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc