testing - 检查模式模式匹配是否成功或失败

标签 testing pattern-matching conditional-statements elixir

在 Elixir 中,是否有一种惯用的方法可以在不使用像 try/rescue 这样的错误机制的情况下检查匹配是成功还是失败?

最佳答案

虽然@PatNowak 的回答是绝对正确的,但我个人更喜欢有一个带有不同子句的私有(private)函数处理程序,以使代码更加结构化:

插入:

changeset
|> Repo.insert()
|> handle_insert()

处理程序:

defp handle_insert({:ok, user}), do: happy_path
defp handle_insert({:error, changeset}), do: sad_path
defp handle_insert(whatever), do: Logger.debug()

关于testing - 检查模式模式匹配是否成功或失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46903030/

相关文章:

javascript - Protractor/WebDriverJS 中的 by.js 定位器是什么?

algorithm - 给定一个可以包含 '*' 通配符的文本和模式。有没有可以在 O(n) 时间内匹配的算法?

f# - OCaml 函数少传入一个参数

python - 根据数值有条件创建数据框列

Python 在字符串中执行操作

r - 在 Shiny 中使用基于绘图点击的条件面板

java - 试图用 Postman 引发内存不足异常

node.js - 使用 Sequelize 构建、播种和销毁 PostgreSQL 以进行测试

asp.net - 需要测试ajax超时条件

java - 捕捉一行中相似的单词