Skip to content

Commit 8da527b

Browse files
committed
add tests
1 parent 7f79538 commit 8da527b

File tree

4 files changed

+39
-0
lines changed

4 files changed

+39
-0
lines changed

test/obs.jl

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
using Test
2+
using LearnAPI
3+
4+
@testset "`obs` fallback" begin
5+
@test obs("some learner", 42) == 42
6+
end
7+
8+
true

test/predict_transform.jl

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
using Test
2+
using LearnAPI
3+
4+
struct Cherry end
5+
6+
LearnAPI.fit(learner::Cherry, data; verbosity=1) = Ref(learner)
7+
LearnAPI.learner(model::Base.RefValue{Cherry}) = model[]
8+
LearnAPI.predict(model::Base.RefValue{Cherry}, ::Point, x) = 2x
9+
@trait Cherry kinds_of_proxy=(Point(),)
10+
11+
struct Ripe end
12+
13+
LearnAPI.fit(learner::Ripe, data; verbosity=1) = Ref(learner)
14+
LearnAPI.learner(model::Base.RefValue{Ripe}) = model[]
15+
LearnAPI.predict(model::Base.RefValue{Ripe}, ::Distribution) = "a distribution"
16+
LearnAPI.features(::Ripe, data) = nothing
17+
@trait Ripe kinds_of_proxy=(Distribution(),)
18+
19+
@testset "`predict` with no kind of proxy specified" begin
20+
model = fit(Cherry(), "junk")
21+
@test predict(model, 42) == 84
22+
23+
model = fit(Ripe(), "junk")
24+
@test predict(model) == "a distribution"
25+
end
26+
27+
true

test/runtests.jl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ test_files = [
44
"tools.jl",
55
"traits.jl",
66
"clone.jl",
7+
"predict_transform.jl",
8+
"obs.jl",
79
"accessor_functions.jl",
810
"target_features.jl",
911
# "patterns/regression.jl",

test/traits.jl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,3 +71,5 @@ import .FruitSalad
7171
@testset "name" begin
7272
@test LearnAPI.name(FruitSalad.RedApple(1)) == "RedApple"
7373
end
74+
75+
true

0 commit comments

Comments
 (0)