mirror of
https://gitlab.cern.ch/wotsubo/PSBoardDataBase.git
synced 2025-06-08 05:55:42 +09:00
add CSV download functions and set them as default and use in test
- replaced old ones from runtests - need to remove CSVs in git repo
This commit is contained in:
parent
16d23ec4bb
commit
d58a13793f
5 changed files with 107 additions and 14 deletions
|
@ -9,6 +9,7 @@ DBInterface = "a10d1c49-ce27-4219-8d33-6db1a4562965"
|
||||||
DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0"
|
DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0"
|
||||||
Dates = "ade2ca70-3891-5945-98fb-dc099432e06a"
|
Dates = "ade2ca70-3891-5945-98fb-dc099432e06a"
|
||||||
Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4"
|
Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4"
|
||||||
|
Downloads = "f43a241f-c20a-4ad4-852c-f6b1247861c6"
|
||||||
SQLite = "0aa819cd-b072-5ff4-a722-6bc24af294d9"
|
SQLite = "0aa819cd-b072-5ff4-a722-6bc24af294d9"
|
||||||
Tables = "bd369af6-aec1-5ad0-b16a-f7cc5008161c"
|
Tables = "bd369af6-aec1-5ad0-b16a-f7cc5008161c"
|
||||||
|
|
||||||
|
|
|
@ -48,3 +48,9 @@ Modules = [PSBoardDataBase]
|
||||||
```@autodocs
|
```@autodocs
|
||||||
Modules = [QaqcMasterLog]
|
Modules = [QaqcMasterLog]
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## `DownloadCSVs`
|
||||||
|
|
||||||
|
```@autodocs
|
||||||
|
Modules = [DownloadCSVs]
|
||||||
|
```
|
||||||
|
|
|
@ -10,7 +10,7 @@ using Dates
|
||||||
include("parse_qaqc_master_log.jl")
|
include("parse_qaqc_master_log.jl")
|
||||||
|
|
||||||
include("create_table.jl")
|
include("create_table.jl")
|
||||||
|
include("download_csv.jl")
|
||||||
include("import_data.jl")
|
include("import_data.jl")
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
@ -37,11 +37,11 @@ Create database at `dbpath` and import data from CSV and master log files.
|
||||||
"""
|
"""
|
||||||
function create_database_from_exported_csvs(
|
function create_database_from_exported_csvs(
|
||||||
dbpath::AbstractString;
|
dbpath::AbstractString;
|
||||||
single_run_csv::AbstractString,
|
single_run_csv::AbstractString = DownloadCSVs.download_single_run_csv(),
|
||||||
runlist_csv::AbstractString,
|
runlist_csv::AbstractString = DownloadCSVs.download_runlist_csv(),
|
||||||
dispatch_csv::AbstractString,
|
dispatch_csv::AbstractString = DownloadCSVs.download_dispatch_csv(),
|
||||||
hundred_csv::AbstractString,
|
hundred_csv::AbstractString = DownloadCSVs.download_hundred_run_csv(),
|
||||||
jathubs_csv::AbstractString,
|
jathubs_csv::AbstractString = DownloadCSVs.download_jathub_csv(),
|
||||||
masterlog_dir::AbstractString,
|
masterlog_dir::AbstractString,
|
||||||
)
|
)
|
||||||
db = create_database(dbpath)
|
db = create_database(dbpath)
|
||||||
|
|
61
src/download_csv.jl
Normal file
61
src/download_csv.jl
Normal file
|
@ -0,0 +1,61 @@
|
||||||
|
"""
|
||||||
|
Functions to download result CSVs from Google Sheets.
|
||||||
|
All functions return the filename in `String`.
|
||||||
|
"""
|
||||||
|
module DownloadCSVs
|
||||||
|
|
||||||
|
using Downloads
|
||||||
|
|
||||||
|
"""
|
||||||
|
download_single_run_csv(outfile::AbstractString = tempname()) -> filename
|
||||||
|
|
||||||
|
# Example
|
||||||
|
```jldoctest
|
||||||
|
julia> file = PSBoardDataBase.DownloadCSVs.download_single_run_csv();
|
||||||
|
|
||||||
|
julia> using CSV
|
||||||
|
|
||||||
|
julia> using DataFrames
|
||||||
|
|
||||||
|
julia> CSV.read(file, DataFrame) isa DataFrame
|
||||||
|
true
|
||||||
|
```
|
||||||
|
"""
|
||||||
|
function download_single_run_csv(outfile::AbstractString = tempname())
|
||||||
|
URL_SINGLE_RUN_CSV::String = "https://docs.google.com/spreadsheets/u/1/d/128qOseOy4QDotehYe4Wf2jj88tnwiXGVdR3NHrjcDYU/export?format=csv&id=128qOseOy4QDotehYe4Wf2jj88tnwiXGVdR3NHrjcDYU&gid=408695746"
|
||||||
|
Downloads.download(URL_SINGLE_RUN_CSV, outfile)
|
||||||
|
end
|
||||||
|
|
||||||
|
"""
|
||||||
|
download_runlist_csv(outfile::AbstractString = tempname()) -> filename
|
||||||
|
"""
|
||||||
|
function download_runlist_csv(outfile::AbstractString = tempname())
|
||||||
|
URL_RUNLIST_CSV::String = "https://docs.google.com/spreadsheets/u/1/d/128qOseOy4QDotehYe4Wf2jj88tnwiXGVdR3NHrjcDYU/export?format=csv&id=128qOseOy4QDotehYe4Wf2jj88tnwiXGVdR3NHrjcDYU&gid=252134084"
|
||||||
|
Downloads.download(URL_RUNLIST_CSV, outfile)
|
||||||
|
end
|
||||||
|
|
||||||
|
"""
|
||||||
|
download_dispatch_csv(outfile::AbstractString = tempname()) -> filename
|
||||||
|
"""
|
||||||
|
function download_dispatch_csv(outfile::AbstractString = tempname())
|
||||||
|
URL_DISPATCH_CSV::String = "https://docs.google.com/spreadsheets/u/1/d/128qOseOy4QDotehYe4Wf2jj88tnwiXGVdR3NHrjcDYU/export?format=csv&id=128qOseOy4QDotehYe4Wf2jj88tnwiXGVdR3NHrjcDYU&gid=707598141"
|
||||||
|
Downloads.download(URL_DISPATCH_CSV, outfile)
|
||||||
|
end
|
||||||
|
|
||||||
|
"""
|
||||||
|
download_hundred_run_csv(outfile::AbstractString = tempname()) -> filename
|
||||||
|
"""
|
||||||
|
function download_hundred_run_csv(outfile::AbstractString = tempname())
|
||||||
|
URL_HUNDRED_RUN_CSV::String = "https://docs.google.com/spreadsheets/u/1/d/128qOseOy4QDotehYe4Wf2jj88tnwiXGVdR3NHrjcDYU/export?format=csv&id=128qOseOy4QDotehYe4Wf2jj88tnwiXGVdR3NHrjcDYU&gid=615256061"
|
||||||
|
Downloads.download(URL_HUNDRED_RUN_CSV, outfile)
|
||||||
|
end
|
||||||
|
|
||||||
|
"""
|
||||||
|
download_jathub_csv(outfile::AbstractString = tempname()) -> filename
|
||||||
|
"""
|
||||||
|
function download_jathub_csv(outfile::AbstractString = tempname())
|
||||||
|
URL_JATHUB_CSV::String = "https://docs.google.com/spreadsheets/u/1/d/128qOseOy4QDotehYe4Wf2jj88tnwiXGVdR3NHrjcDYU/export?format=csv&id=128qOseOy4QDotehYe4Wf2jj88tnwiXGVdR3NHrjcDYU&gid=303843601"
|
||||||
|
Downloads.download(URL_JATHUB_CSV, outfile)
|
||||||
|
end
|
||||||
|
|
||||||
|
end # module DownloadCSVs
|
|
@ -16,17 +16,39 @@ true || include("../src/PSBoardDataBase.jl")
|
||||||
@test masterlog_metadata.shiftscript_version == v"1.0.2"
|
@test masterlog_metadata.shiftscript_version == v"1.0.2"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@testset "Download data csv" begin
|
||||||
|
out = tempname()
|
||||||
|
@test CSV.read(
|
||||||
|
PSBoardDataBase.DownloadCSVs.download_single_run_csv(out),
|
||||||
|
DataFrame,
|
||||||
|
) isa DataFrame
|
||||||
|
@test CSV.read(
|
||||||
|
PSBoardDataBase.DownloadCSVs.download_runlist_csv(out),
|
||||||
|
DataFrame,
|
||||||
|
) isa DataFrame
|
||||||
|
@test CSV.read(
|
||||||
|
PSBoardDataBase.DownloadCSVs.download_dispatch_csv(out),
|
||||||
|
DataFrame,
|
||||||
|
) isa DataFrame
|
||||||
|
@test CSV.read(
|
||||||
|
PSBoardDataBase.DownloadCSVs.download_hundred_run_csv(out),
|
||||||
|
DataFrame,
|
||||||
|
) isa DataFrame
|
||||||
|
@test CSV.read(PSBoardDataBase.DownloadCSVs.download_jathub_csv(out), DataFrame) isa
|
||||||
|
DataFrame
|
||||||
|
end
|
||||||
|
|
||||||
@testset "prepare dataframe" begin
|
@testset "prepare dataframe" begin
|
||||||
single_result_df =
|
single_result_df =
|
||||||
CSV.read("input/PS board QAQC Data Base - 本番1回試験・追加検証試験.csv", DataFrame)
|
CSV.read(PSBoardDataBase.DownloadCSVs.download_single_run_csv(), DataFrame)
|
||||||
@test PSBoardDataBase.prepare_single_result_df(single_result_df) isa DataFrame
|
@test PSBoardDataBase.prepare_single_result_df(single_result_df) isa DataFrame
|
||||||
|
|
||||||
@test PSBoardDataBase.prepare_dispatch_table(
|
@test PSBoardDataBase.prepare_dispatch_table(
|
||||||
CSV.read("input/PS board QAQC Data Base - 出荷.csv", DataFrame),
|
CSV.read(PSBoardDataBase.DownloadCSVs.download_dispatch_csv(), DataFrame),
|
||||||
) isa DataFrame
|
) isa DataFrame
|
||||||
|
|
||||||
@test PSBoardDataBase.prepare_100test_table(
|
@test PSBoardDataBase.prepare_100test_table(
|
||||||
CSV.read("input/PS board QAQC Data Base - 100回試験結果.csv", DataFrame),
|
CSV.read(PSBoardDataBase.DownloadCSVs.download_hundred_run_csv(), DataFrame),
|
||||||
) isa DataFrame
|
) isa DataFrame
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -48,12 +70,14 @@ true || include("../src/PSBoardDataBase.jl")
|
||||||
end
|
end
|
||||||
|
|
||||||
@test PSBoardDataBase.insert_qaqc_campaign_id(db) |> isnothing
|
@test PSBoardDataBase.insert_qaqc_campaign_id(db) |> isnothing
|
||||||
jathub_list_df = CSV.read("input/PS board QAQC Data Base - JATHub db.csv", DataFrame)
|
jathub_list_df =
|
||||||
|
CSV.read(PSBoardDataBase.DownloadCSVs.download_jathub_csv(), DataFrame)
|
||||||
@test PSBoardDataBase.insert_qaqc_positions(db, jathub_list_df) |> isnothing
|
@test PSBoardDataBase.insert_qaqc_positions(db, jathub_list_df) |> isnothing
|
||||||
|
|
||||||
single_result_df =
|
single_result_df =
|
||||||
CSV.read("input/PS board QAQC Data Base - 本番1回試験・追加検証試験.csv", DataFrame)
|
CSV.read(PSBoardDataBase.DownloadCSVs.download_single_run_csv(), DataFrame)
|
||||||
runlist_table = CSV.read("input/PS board QAQC Data Base - RUNLIST.csv", DataFrame)
|
runlist_table =
|
||||||
|
CSV.read(PSBoardDataBase.DownloadCSVs.download_runlist_csv(), DataFrame)
|
||||||
|
|
||||||
@test PSBoardDataBase.add_psboard_ids(db, single_result_df) |> isnothing
|
@test PSBoardDataBase.add_psboard_ids(db, single_result_df) |> isnothing
|
||||||
@test PSBoardDataBase.add_qaqc_runlist_from_runlist(db, runlist_table) |> isnothing
|
@test PSBoardDataBase.add_qaqc_runlist_from_runlist(db, runlist_table) |> isnothing
|
||||||
|
@ -61,7 +85,8 @@ true || include("../src/PSBoardDataBase.jl")
|
||||||
@test PSBoardDataBase.add_qaqc_single_result(db, single_result_df, runlist_table) |>
|
@test PSBoardDataBase.add_qaqc_single_result(db, single_result_df, runlist_table) |>
|
||||||
isnothing
|
isnothing
|
||||||
|
|
||||||
dispatch_table = CSV.read("input/PS board QAQC Data Base - 出荷.csv", DataFrame)
|
dispatch_table =
|
||||||
|
CSV.read(PSBoardDataBase.DownloadCSVs.download_dispatch_csv(), DataFrame)
|
||||||
|
|
||||||
@test PSBoardDataBase.add_qaqc_dispatch(db, dispatch_table) |> isnothing
|
@test PSBoardDataBase.add_qaqc_dispatch(db, dispatch_table) |> isnothing
|
||||||
|
|
||||||
|
@ -70,7 +95,7 @@ true || include("../src/PSBoardDataBase.jl")
|
||||||
isnothing
|
isnothing
|
||||||
|
|
||||||
extra_100test_result_df =
|
extra_100test_result_df =
|
||||||
CSV.read("input/PS board QAQC Data Base - 100回試験結果.csv", DataFrame)
|
CSV.read(PSBoardDataBase.DownloadCSVs.download_hundred_run_csv(), DataFrame)
|
||||||
|
|
||||||
@test PSBoardDataBase.add_qaqc_100test_result(db, extra_100test_result_df) |>
|
@test PSBoardDataBase.add_qaqc_100test_result(db, extra_100test_result_df) |>
|
||||||
isnothing
|
isnothing
|
||||||
|
|
Loading…
Add table
Reference in a new issue