Elixir Language
Doctests
खोज…
परिचय
जब आप @doc
कोड के साथ अपने कोड का दस्तावेज @doc
, तो आप कोड उदाहरणों की आपूर्ति कर सकते हैं:
# myproject/lib/my_module.exs
defmodule MyModule do
@doc """
Given a number, returns `true` if the number is even, otherwise `false`.
## Example
iex> MyModule.even?(2)
true
iex> MyModule.even?(3)
false
"""
def even?(number) do
rem(number, 2) == 0
end
end
आप अपने एक परीक्षण सूट में परीक्षण मामलों के रूप में कोड उदाहरण जोड़ सकते हैं:
# myproject/test/doc_test.exs
defmodule DocTest do
use ExUnit.Case
doctest MyModule
end
फिर, आप तब mix test
साथ अपने टेस्ट चला सकते हैं।
Doctest के आधार पर HTML प्रलेखन उत्पन्न करना
क्योंकि दस्तावेज़ बनाना मार्कडाउन पर आधारित है, आपको 2 काम करने होंगे:
1 / अपने सिद्धांत लिखें और पठनीयता में सुधार करने के लिए अपने सिद्धांत को स्पष्ट करें (यह "उदाहरण" या "परीक्षण" की तरह एक शीर्षक देना बेहतर है)। जब आप अपने परीक्षण लिखते हैं, तो अपने परीक्षण कोड को 4 स्थान देना न भूलें ताकि यह HTML प्रलेखन में कोड के रूप में प्रारूपित हो जाए।
2 / फिर, अपने अमृत परियोजना की जड़ में स्थित डॉक्टर निर्देशिका में HTML प्रलेखन उत्पन्न करने के लिए अपनी अमृत परियोजना की जड़ में कंसोल में "मिक्स डॉक्स" दर्ज करें।
$> mix docs
बहुविध सिद्धांत
आप पहले का अनुसरण करते हुए लाइनों के लिए '...>' का उपयोग करके एक बहुस्तरीय सिद्धांत कर सकते हैं
iex> Foo.Bar.somethingConditional("baz")
...> |> case do
...> {:ok, _} -> true
...> {:error, _} -> false
...> end
true