PkgTemplates.jl/test/plugins/appveyor.jl

59 lines
2.3 KiB
Julia
Raw Normal View History

2017-10-02 01:43:03 +00:00
t = Template(; user=me)
temp_dir = mktempdir()
pkg_dir = joinpath(temp_dir, test_pkg)
@testset "AppVeyor" begin
@testset "Plugin creation" begin
p = AppVeyor()
@test isempty(p.gitignore)
@test p.src == joinpath(PkgTemplates.DEFAULTS_DIR, "appveyor.yml")
2017-10-02 01:43:03 +00:00
@test p.dest == ".appveyor.yml"
@test p.badges == [
Badge(
"Build Status",
"https://ci.appveyor.com/api/projects/status/github/{{USER}}/{{PKGNAME}}.jl?svg=true",
"https://ci.appveyor.com/project/{{USER}}/{{PKGNAME}}-jl",
),
]
@test isempty(p.view)
p = AppVeyor(; config_file=nothing)
@test p.src === nothing
2017-10-02 01:43:03 +00:00
p = AppVeyor(; config_file=test_file)
@test p.src == test_file
2017-10-02 01:43:03 +00:00
@test_throws ArgumentError AppVeyor(; config_file=fake_path)
end
@testset "Badge generation" begin
p = AppVeyor()
@test badges(p, me, test_pkg) == ["[![Build Status](https://ci.appveyor.com/api/projects/status/github/$me/$test_pkg.jl?svg=true)](https://ci.appveyor.com/project/$me/$test_pkg-jl)"]
2017-10-02 01:43:03 +00:00
end
@testset "File generation" begin
2018-09-24 18:25:40 +00:00
# Without a coverage plugin in the template, there should be no post-test step.
2017-10-02 01:43:03 +00:00
p = AppVeyor()
@test gen_plugin(p, t, temp_dir, test_pkg) == [".appveyor.yml"]
@test isfile(joinpath(pkg_dir, ".appveyor.yml"))
2018-09-19 19:25:09 +00:00
appveyor = read(joinpath(pkg_dir, ".appveyor.yml"), String)
2018-09-26 20:49:10 +00:00
@test !occursin("on_success", appveyor)
@test !occursin("%JL_CODECOV_SCRIPT%", appveyor)
2017-10-02 01:43:03 +00:00
rm(joinpath(pkg_dir, ".appveyor.yml"))
2018-09-24 18:25:40 +00:00
# Generating the plugin with CodeCov in the template should create a post-test step.
2017-10-02 01:43:03 +00:00
t.plugins[CodeCov] = CodeCov()
gen_plugin(p, t, temp_dir, test_pkg)
delete!(t.plugins, CodeCov)
2018-09-19 19:25:09 +00:00
appveyor = read(joinpath(pkg_dir, ".appveyor.yml"), String)
2018-09-26 20:49:10 +00:00
@test occursin("on_success", appveyor)
@test occursin("%JL_CODECOV_SCRIPT%", appveyor)
2017-10-02 01:43:03 +00:00
rm(joinpath(pkg_dir, ".appveyor.yml"))
2018-09-24 18:25:40 +00:00
2018-09-26 20:49:10 +00:00
# TODO: Add Coveralls tests when AppVeyor.jl supports it.
2018-09-24 18:25:40 +00:00
2017-10-02 01:43:03 +00:00
p = AppVeyor(; config_file=nothing)
@test isempty(gen_plugin(p, t, temp_dir, test_pkg))
@test !isfile(joinpath(pkg_dir, ".appveyor.yml"))
end
end
rm(temp_dir; recursive=true)