Merge branch 'develop' into gun
[akkoma] / test / otp_version_test.exs
1 defmodule Pleroma.OTPVersionTest do
2 use ExUnit.Case, async: true
3
4 alias Pleroma.OTPVersion
5
6 describe "get_and_check_version/2" do
7 test "22.4" do
8 assert OTPVersion.get_and_check_version(Tesla.Adapter.Gun, [
9 "test/fixtures/warnings/otp_version/22.4"
10 ]) == :ok
11 end
12
13 test "22.1" do
14 assert OTPVersion.get_and_check_version(Tesla.Adapter.Gun, [
15 "test/fixtures/warnings/otp_version/22.1"
16 ]) == {:error, "22.1"}
17 end
18
19 test "21.1" do
20 assert OTPVersion.get_and_check_version(Tesla.Adapter.Gun, [
21 "test/fixtures/warnings/otp_version/21.1"
22 ]) == {:error, "21.1"}
23 end
24
25 test "23.0" do
26 assert OTPVersion.get_and_check_version(Tesla.Adapter.Gun, [
27 "test/fixtures/warnings/otp_version/23.0"
28 ]) == :ok
29 end
30
31 test "undefined" do
32 assert OTPVersion.get_and_check_version(Tesla.Adapter.Gun, [
33 "test/fixtures/warnings/otp_version/undefined"
34 ]) == :undefined
35 end
36
37 test "not parsable" do
38 assert OTPVersion.get_and_check_version(Tesla.Adapter.Gun, [
39 "test/fixtures/warnings/otp_version/error"
40 ]) == :undefined
41 end
42
43 test "with non existance file" do
44 assert OTPVersion.get_and_check_version(Tesla.Adapter.Gun, [
45 "test/fixtures/warnings/otp_version/non-exising",
46 "test/fixtures/warnings/otp_version/22.4"
47 ]) == :ok
48 end
49
50 test "empty paths" do
51 assert OTPVersion.get_and_check_version(Tesla.Adapter.Gun, []) == :undefined
52 end
53
54 test "another adapter" do
55 assert OTPVersion.get_and_check_version(Tesla.Adapter.Hackney, []) == :ok
56 end
57 end
58 end