Skip to content

Commit 1f9bc5d

Browse files
eksperimentaljosevalim
authored andcommitted
Improve Version.compile_requirement/1 (#11427)
1 parent 0974e90 commit 1f9bc5d

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

lib/elixir/lib/version.ex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -440,7 +440,7 @@ defmodule Version do
440440
The internal representation is opaque.
441441
"""
442442
@spec compile_requirement(Requirement.t()) :: Requirement.t()
443-
def compile_requirement(requirement) do
443+
def compile_requirement(%Requirement{} = requirement) do
444444
requirement
445445
end
446446

lib/elixir/test/elixir/version_test.exs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -308,6 +308,15 @@ defmodule VersionTest do
308308
assert Version.match?("0.7.0", req)
309309
end
310310

311+
test "compile_requirement/1" do
312+
{:ok, req} = Version.parse_requirement("1.2.3")
313+
assert req == Version.compile_requirement(req)
314+
315+
assert_raise(FunctionClauseError, fn ->
316+
Version.compile_requirement("~> 1.2.3")
317+
end)
318+
end
319+
311320
test "compile requirement" do
312321
{:ok, req} = Version.parse_requirement("1.2.3")
313322
req = Version.compile_requirement(req)

0 commit comments

Comments
 (0)