文档章节

erlang判定闰年,并用eunit测试

leeyi
 leeyi
发布于 2016/11/11 16:45
字数 177
阅读 26
收藏 0

按照如下步骤进行

41> c(leap).
{ok,leap}
42> leap_tests:test().
  All 4 tests passed.
ok
43> c(leap).
{ok,leap}
44> c(leap_tests).
{ok,leap_tests}
45> leap_tests:test().
leap_tests: century2_test...*failed*
in function leap_tests:'-century2_test/0-fun-0-'/0 (leap_tests.erl, line 23)
**error:{assert,[{module,leap_tests},
         {line,23},
         {expression,"leap : leap_year ( 2000 )"},
         {expected,false},
         {value,true}]}
  output:<<"2000 is leap year
">>

=======================================================
  Failed: 1.  Skipped: 0.  Passed: 4.
error
46> c(leap_tests).
{ok,leap_tests}
47> leap_tests:test().
  All 5 tests passed.
ok
48>

leap.erl

-module (leap).

-export ([leap_year/1]).

leap_year(Year) ->
    if
        (0=:=(Year rem 400)) orelse ( (0=:=(Year rem 4)) and (0 =/= (Year rem 100))) ->
            io:format("~p is leap year~n", [Year]),
            true;
        true ->
            io:format("~p not is leap year~n", [Year]),
            false
    end.

leap_tests.erl

-module(leap_tests).

-include_lib("eunit/include/eunit.hrl").

leap_year_test() ->
  ?assert(leap:leap_year(1996)).

non_leap_year_test() ->
  ?assertNot(leap:leap_year(1997)).

century_test() ->
  ?assertNot(leap:leap_year(1900)).

fourth_century_test() ->
  ?assert(leap:leap_year(2400)).

century2_test() ->
  ?assert(leap:leap_year(2000)).

© 著作权归作者所有

上一篇: Python 安装 pip
下一篇: erlang运算符
leeyi

leeyi

粉丝 6
博文 46
码字总数 52736
作品 0
深圳
架构师
私信 提问
用 rebar 来构建、编译、测试、发布 Erlang 应用程序

rebar 是一个遵循 Erlang/OTP 原则的 Erlang 项目构建工具,使用它可以减少构建标准 Erlang/OTP 项目架构配置的工作量,并且可以很容易的编译、测试、发布 Erlang 应用程序。更强大的是,reb...

千山万水
2015/10/15
2.4K
1
从 UNIX 开发人员的角度了解 Erlang

转自:IBM developerWorks 简介 如果您是 UNIX 开发人员或系统管理员,很可能会有自己喜欢的一套工具。您可能喜欢 Perl、Python、sed 和 awk 或 Ruby。也可能喜欢 Java™ 或 C++。当您熟悉了...

小卒过河
2011/08/01
1K
3
OTP 21.0.9 发布,Erlang 编写的应用服务器

OTP 21.0.9 已发布,OTP (Open Telecom Platform) 是一个用 Erlang 编写的应用服务器,它是一套 Erlang 库,由 Erlang 运行时系统、主要使用 Erlang 编写的许多随时可用的组件以及 Erlang 程...

王练
2018/09/13
269
0
OTP 17.5.6.10 发布,Erlang 编写的应用服务器

OTP 17.5.6.10 已发布,OTP (Open Telecom Platform) 是一个用 Erlang 编写的应用服务器,它是一套 Erlang 库,由 Erlang 运行时系统、主要使用 Erlang 编写的许多随时可用的组件以及 Erlang...

王练
2018/10/12
495
1
OTP 18.3.1 发布,应用服务器

OTP 18.3.1 发布了。OTP (Open Telecom Platform) 是一个开源的 Erlang 分发和一个用 Erlang 编写的应用服务器,由爱立信开发。 OTP 包含: 一个 Erlang 解释器 一个 Erlang 编译器 服务器之...

淡漠悠然
2016/04/05
1K
6

没有更多内容

加载失败,请刷新页面

加载更多

java通过ServerSocket与Socket实现通信

首先说一下ServerSocket与Socket. 1.ServerSocket ServerSocket是用来监听客户端Socket连接的类,如果没有连接会一直处于等待状态. ServetSocket有三个构造方法: (1) ServerSocket(int port);...

Blueeeeeee
今天
6
0
用 Sphinx 搭建博客时,如何自定义插件?

之前有不少同学看过我的个人博客(http://python-online.cn),也根据我写的教程完成了自己个人站点的搭建。 点此:使用 Python 30分钟 教你快速搭建一个博客 为防有的同学不清楚 Sphinx ,这...

王炳明
昨天
5
0
黑客之道-40本书籍助你快速入门黑客技术免费下载

场景 黑客是一个中文词语,皆源自英文hacker,随着灰鸽子的出现,灰鸽子成为了很多假借黑客名义控制他人电脑的黑客技术,于是出现了“骇客”与"黑客"分家。2012年电影频道节目中心出品的电影...

badaoliumang
昨天
15
0
很遗憾,没有一篇文章能讲清楚线程的生命周期!

(手机横屏看源码更方便) 注:java源码分析部分如无特殊说明均基于 java8 版本。 简介 大家都知道线程是有生命周期,但是彤哥可以认真负责地告诉你网上几乎没有一篇文章讲得是完全正确的。 ...

彤哥读源码
昨天
15
0
jquery--DOM操作基础

本文转载于:专业的前端网站➭jquery--DOM操作基础 元素的访问 元素属性操作 获取:attr(name);$("#my").attr("src"); 设置:attr(name,value);$("#myImg").attr("src","images/1.jpg"); ......

前端老手
昨天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部