mirror of
https://github.com/maybe-finance/maybe.git
synced 2025-08-02 03:55:20 +02:00
Allow custom column separator for CSV parsing in uploads controller (#1470)
* Allow custom column separator for CSV parsing in uploads controller * Add column separator parameter for CSV uploads in tests
This commit is contained in:
parent
8b672c4062
commit
9cc9f42bdc
2 changed files with 7 additions and 4 deletions
|
@ -32,7 +32,7 @@ class Import::UploadsController < ApplicationController
|
||||||
require "csv"
|
require "csv"
|
||||||
|
|
||||||
begin
|
begin
|
||||||
csv = CSV.parse(str || "", headers: true)
|
csv = CSV.parse(str || "", headers: true, col_sep: upload_params[:col_sep])
|
||||||
return false if csv.headers.empty?
|
return false if csv.headers.empty?
|
||||||
return false if csv.count == 0
|
return false if csv.count == 0
|
||||||
true
|
true
|
||||||
|
|
|
@ -14,7 +14,8 @@ class Import::UploadsControllerTest < ActionDispatch::IntegrationTest
|
||||||
test "uploads valid csv by copy and pasting" do
|
test "uploads valid csv by copy and pasting" do
|
||||||
patch import_upload_url(@import), params: {
|
patch import_upload_url(@import), params: {
|
||||||
import: {
|
import: {
|
||||||
raw_file_str: file_fixture("imports/valid.csv").read
|
raw_file_str: file_fixture("imports/valid.csv").read,
|
||||||
|
col_sep: ","
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -25,7 +26,8 @@ class Import::UploadsControllerTest < ActionDispatch::IntegrationTest
|
||||||
test "uploads valid csv by file" do
|
test "uploads valid csv by file" do
|
||||||
patch import_upload_url(@import), params: {
|
patch import_upload_url(@import), params: {
|
||||||
import: {
|
import: {
|
||||||
csv_file: file_fixture_upload("imports/valid.csv")
|
csv_file: file_fixture_upload("imports/valid.csv"),
|
||||||
|
col_sep: ","
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -36,7 +38,8 @@ class Import::UploadsControllerTest < ActionDispatch::IntegrationTest
|
||||||
test "invalid csv cannot be uploaded" do
|
test "invalid csv cannot be uploaded" do
|
||||||
patch import_upload_url(@import), params: {
|
patch import_upload_url(@import), params: {
|
||||||
import: {
|
import: {
|
||||||
csv_file: file_fixture_upload("imports/invalid.csv")
|
csv_file: file_fixture_upload("imports/invalid.csv"),
|
||||||
|
col_sep: ","
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue