From c123abf1677cb17b24637f5a6a32dbad2bb083ec Mon Sep 17 00:00:00 2001 From: baarkerlounger Date: Wed, 18 May 2022 18:43:19 +0100 Subject: [PATCH] Download all users --- app/controllers/users_controller.rb | 2 +- app/models/user.rb | 6 ++---- spec/requests/users_controller_spec.rb | 2 +- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index 653502f2b..b4854da47 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -15,7 +15,7 @@ class UsersController < ApplicationController format.html format.csv do if current_user.support? - send_data @users.to_csv, filename: "users-#{Time.zone.now}.csv" + send_data User.all.where(active: true).to_csv, filename: "users-#{Time.zone.now}.csv" else head :unauthorized end diff --git a/app/models/user.rb b/app/models/user.rb index 24d1c5cb0..c458f80cd 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -97,9 +97,7 @@ class User < ApplicationRecord end end - def organisation_name - organisation.name - end + delegate :name, to: :organisation, prefix: true def self.download_attributes %w[id email name organisation_name role old_user_id is_dpo is_key_contact active sign_in_count last_sign_in_at] @@ -110,7 +108,7 @@ class User < ApplicationRecord csv << download_attributes all.find_each do |record| - csv << self.download_attributes.map { |attr| record.public_send(attr) } + csv << download_attributes.map { |attr| record.public_send(attr) } end end end diff --git a/spec/requests/users_controller_spec.rb b/spec/requests/users_controller_spec.rb index 32362ba29..18627df52 100644 --- a/spec/requests/users_controller_spec.rb +++ b/spec/requests/users_controller_spec.rb @@ -782,7 +782,7 @@ RSpec.describe UsersController, type: :request do it "downloads organisation names rather than ids" do csv = CSV.parse(response.body) - expect(csv.second[3]).to eq("#{user.organisation.name}") + expect(csv.second[3]).to eq(user.organisation.name.to_s) end end