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

curationexperts / laevigata / 0e27954f-c7b4-4133-bdbd-e7a63d3dc045

15 May 2025 01:35AM UTC coverage: 97.411%. Remained the same
0e27954f-c7b4-4133-bdbd-e7a63d3dc045

push

circleci

mark-dce
[FIX] Use correct name for School of Nursing in GraduationService

**ISSUE**
Graduate Nursing students who graduated in April were not being recognized
by the Graduation Service. Although their ETDs were approved by the school,
the system was not processing them for publication.

**DIAGNOSIS**
The string used in the Graduation Service mapping did not match the
complete school name used throughout the rest of the application, so
the service was not generating the proper lookup key - e.g.
* Current(incorrect) lookup key: `P4658562-unrecognized school-DNP`
* Expected key in registrar file: `P4658562-GNUR-DNP`

**RESOLUTION**
Correct the name used in the GraduationService lookup.

2822 of 2897 relevant lines covered (97.41%)

52.25 hits per line

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

97.37
/app/controllers/in_progress_etds_controller.rb
1
class InProgressEtdsController < ApplicationController
4✔
2
  def new
4✔
3
    authorize! :create, InProgressEtd
10✔
4

5
    @in_progress_etd = if params[:etd_id]
9✔
6
                         InProgressEtd.find_or_create_by(etd_id: params[:etd_id])
5✔
7
                       else
8
                         InProgressEtd.find_or_create_by(user_ppid: current_user.ppid)
4✔
9
                       end
10

11
    # Now that the record has been created, render the form so student can edit it:
12
    redirect_to action: :edit, id: @in_progress_etd.id
9✔
13
  end
14

15
  # Note: There is no 'create' action because the 'new' action does 'find or create'.
16

17
  def edit
4✔
18
    if current_user.nil?
13✔
19
      redirect_to new_user_session_path
2✔
20
    else
21
      @in_progress_etd = InProgressEtd.find(params[:id])
11✔
22
      authorize! :update, @in_progress_etd
10✔
23
      @in_progress_etd.refresh_from_etd!
8✔
24
      @data = @in_progress_etd.data
8✔
25
    end
26
  rescue ActiveRecord::RecordNotFound
27
    redirect_to root_url
1✔
28
  end
29

30
  # The Vue.js form uses this action to update the record.
31
  def update
4✔
32
    @in_progress_etd = InProgressEtd.find(params[:id])
11✔
33
    authorize! :update, @in_progress_etd
11✔
34
    @in_progress_etd.data = prepare_etd_data.to_json
9✔
35

36
    if @in_progress_etd.save
9✔
37
      @data = @in_progress_etd.data
9✔
38
      render json: { in_progress_etd: @data, lastCompletedStep: current_step(@data), tab_name: tab_name }, status: 200
9✔
39
    else
40
      render json: { errors: @in_progress_etd.errors.messages }, status: 422
×
41
    end
42
  end
43

44
  def destroy
4✔
45
    @in_progress_etd = InProgressEtd.find(params[:id])
2✔
46
    authorize! :update, @in_progress_etd
2✔
47
    @in_progress_etd.destroy
1✔
48

49
    redirect_to root_url
1✔
50
  end
51

52
  private
4✔
53

54
    def current_step(data)
4✔
55
      saved_data = JSON.parse(data)
9✔
56
      saved_data['currentStep']
9✔
57
    end
58

59
    def tab_name
4✔
60
      etd = request.parameters.fetch(:etd)
9✔
61
      etd.fetch(:currentTab, "About Me")
9✔
62
    end
63

64
    def prepare_etd_data
4✔
65
      # TODO: strong params
66
      new_data = request.parameters.fetch(:etd, {})
9✔
67

68
      # Add the new data to the existing persisted data
69
      @in_progress_etd.add_data(new_data)
9✔
70
    end
71
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