Sha256: 101688fe9584dcedc40533232226c674fff28cc03ca8b1a64a8a9d0d60756af1

Contents?: true

Size: 1.64 KB

Versions: 3

Compression:

Stored size: 1.64 KB

Contents

# frozen_string_literal: true

require "spec_helper"
RSpec.describe Decidim::FileAuthorizationHandler::Admin::CensusesController, type: :controller do
  include Warden::Test::Helpers

  routes { Decidim::FileAuthorizationHandler::AdminEngine.routes }

  let(:organization) do
    create :organization,
           available_authorizations: ["file_authorization_handler"]
  end

  let(:user) do
    create :user, :admin, :confirmed, organization:, admin: true
  end

  before do
    controller.request.env["decidim.current_organization"] = organization
  end

  describe "GET #show" do
    it "returns http success" do
      sign_in user, scope: :user
      get :show

      expect(response).to have_http_status(:success)
    end
  end

  describe "POST #create" do
    it "imports the csv data" do
      sign_in user

      # Don't know why don't prepend with `spec/fixtures` automatically
      file = fixture_file_upload("spec/fixtures/files/data1.csv")
      post :create, params: { file: }
      expect(response).to have_http_status(:redirect)

      expect(Decidim::FileAuthorizationHandler::CensusDatum.count).to be 3
      expect(Decidim::FileAuthorizationHandler::CensusDatum.first.id_document).to eq encode_id_document("1111A")
      expect(Decidim::FileAuthorizationHandler::CensusDatum.last.id_document).to eq encode_id_document("3333C")
    end
  end

  describe "POST #delete_all" do
    it "clear all census data" do
      sign_in user

      create_list :census_datum, 5, organization: organization
      delete :destroy
      expect(response).to have_http_status(:redirect)

      expect(Decidim::FileAuthorizationHandler::CensusDatum.count).to be 0
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
decidim-file_authorization_handler-0.27.1.7 spec/controllers/decidim/file_authorization_handler/admin/censuses_controller_spec.rb
decidim-file_authorization_handler-0.27.1.6 spec/controllers/decidim/file_authorization_handler/admin/censuses_controller_spec.rb
decidim-file_authorization_handler-0.27.1.5 spec/controllers/decidim/file_authorization_handler/admin/censuses_controller_spec.rb