3 Provides unit tests and examples for the <Rabbitmq> lens.
7 (* Test: Rabbitmq.listeners *)
8 test Rabbitmq.listeners get "{ssl_listeners, [5671, {\"127.0.0.1\", 5672}]}" =
12 { "value" = "127.0.0.1" }
13 { "value" = "5672" } } }
15 (* Test: Rabbitmq.ssl_options *)
16 test Rabbitmq.ssl_options get "{ssl_options, [
17 {cacertfile,\"/path/to/testca/cacert.pem\"},
18 {certfile,\"/path/to/server/cert.pem\"},
19 {keyfile,\"/path/to/server/key.pem\"},
21 {versions, ['tlsv1.2', 'tlsv1.1', 'tlsv1']},
22 {fail_if_no_peer_cert,false}]}" =
24 { "cacertfile" = "/path/to/testca/cacert.pem" }
25 { "certfile" = "/path/to/server/cert.pem" }
26 { "keyfile" = "/path/to/server/key.pem" }
27 { "verify" = "verify_peer" }
29 { "value" = "tlsv1.2" }
30 { "value" = "tlsv1.1" }
31 { "value" = "tlsv1" } }
32 { "fail_if_no_peer_cert" = "false" } }
34 (* Test: Rabbitmq.disk_free_limit *)
35 test Rabbitmq.disk_free_limit get "{disk_free_limit, 1000000000}" =
36 { "disk_free_limit" = "1000000000" }
38 (* Test: Rabbitmq.disk_free_limit *)
39 test Rabbitmq.disk_free_limit get "{disk_free_limit, {mem_relative, 1.0}}" =
42 { "value" = "mem_relative" }
43 { "value" = "1.0" } } }
45 (* Test: Rabbitmq.log_levels *)
46 test Rabbitmq.log_levels get "{log_levels, [{connection, info}]}" =
49 { "value" = "connection" }
50 { "value" = "info" } } }
52 (* Test: Rabbitmq.cluster_nodes *)
53 test Rabbitmq.cluster_nodes get "{cluster_nodes, {['rabbit@rabbit1', 'rabbit@rabbit2', 'rabbit@rabbit3'], disc}}" =
57 { "value" = "rabbit@rabbit1" }
58 { "value" = "rabbit@rabbit2" }
59 { "value" = "rabbit@rabbit3" } }
60 { "value" = "disc" } } }
62 (* Test: Rabbitmq.cluster_nodes
63 Apparently, tuples are not mandatory *)
64 test Rabbitmq.cluster_nodes get "{cluster_nodes, ['rabbit@rabbit1', 'rabbit@rabbit2', 'rabbit@rabbit3']}" =
66 { "value" = "rabbit@rabbit1" }
67 { "value" = "rabbit@rabbit2" }
68 { "value" = "rabbit@rabbit3" } }
70 (* Test: Rabbitmq.cluster_partition_handling, single value *)
71 test Rabbitmq.cluster_partition_handling get "{cluster_partition_handling, ignore}" =
72 { "cluster_partition_handling" = "ignore" }
74 (* Test: Rabbitmq.cluster_partition_handling, tuple *)
75 test Rabbitmq.cluster_partition_handling get "{cluster_partition_handling, {pause_if_all_down, ['rabbit@rabbit1', 'rabbit@rabbit2', 'rabbit@rabbit3'], autoheal}}" =
76 { "cluster_partition_handling"
78 { "value" = "pause_if_all_down" }
80 { "value" = "rabbit@rabbit1" }
81 { "value" = "rabbit@rabbit2" }
82 { "value" = "rabbit@rabbit3" } }
83 { "value" = "autoheal" } } }
87 test Rabbitmq.lns get "
88 % A standard configuration
91 {ssl_listeners, [5671]},
92 {ssl_options, [{cacertfile,\"/path/to/testca/cacert.pem\"},
93 {certfile,\"/path/to/server/cert.pem\"},
94 {keyfile,\"/path/to/server/key.pem\"},
96 {fail_if_no_peer_cert,false}]}
101 { "#comment" = "A standard configuration" }
104 { "value" = "5671" } }
106 { "cacertfile" = "/path/to/testca/cacert.pem" }
107 { "certfile" = "/path/to/server/cert.pem" }
108 { "keyfile" = "/path/to/server/key.pem" }
109 { "verify" = "verify_peer" }
110 { "fail_if_no_peer_cert" = "false" } } }
111 { "#comment" = "EOF" }