rustdoc: Refactor tests
This commit is contained in:
parent
496205c85f
commit
fee9037765
8 changed files with 246 additions and 530 deletions
|
@ -60,10 +60,7 @@ fn get_fn_sig(srv: astsrv::srv, fn_id: doc::ast_id) -> option<str> {
|
|||
|
||||
#[test]
|
||||
fn should_add_fn_sig() {
|
||||
let source = "fn a() -> int { }";
|
||||
let srv = astsrv::mk_srv_from_str(source);
|
||||
let doc = extract::from_srv(srv, "");
|
||||
let doc = run(srv, doc);
|
||||
let doc = test::mk_doc("fn a() -> int { }");
|
||||
assert doc.topmod.fns()[0].sig == some("fn a() -> int");
|
||||
}
|
||||
|
||||
|
@ -107,19 +104,13 @@ fn ret_ty_to_str(decl: ast::fn_decl) -> option<str> {
|
|||
|
||||
#[test]
|
||||
fn should_add_fn_ret_types() {
|
||||
let source = "fn a() -> int { }";
|
||||
let srv = astsrv::mk_srv_from_str(source);
|
||||
let doc = extract::from_srv(srv, "");
|
||||
let doc = run(srv, doc);
|
||||
let doc = test::mk_doc("fn a() -> int { }");
|
||||
assert doc.topmod.fns()[0].return.ty == some("int");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn should_not_add_nil_ret_type() {
|
||||
let source = "fn a() { }";
|
||||
let srv = astsrv::mk_srv_from_str(source);
|
||||
let doc = extract::from_srv(srv, "");
|
||||
let doc = run(srv, doc);
|
||||
let doc = test::mk_doc("fn a() { }");
|
||||
assert doc.topmod.fns()[0].return.ty == none;
|
||||
}
|
||||
|
||||
|
@ -165,10 +156,7 @@ fn decl_arg_tys(decl: ast::fn_decl) -> [(str, str)] {
|
|||
|
||||
#[test]
|
||||
fn should_add_arg_types() {
|
||||
let source = "fn a(b: int, c: bool) { }";
|
||||
let srv = astsrv::mk_srv_from_str(source);
|
||||
let doc = extract::from_srv(srv, "");
|
||||
let doc = run(srv, doc);
|
||||
let doc = test::mk_doc("fn a(b: int, c: bool) { }");
|
||||
let fn_ = doc.topmod.fns()[0];
|
||||
assert fn_.args[0].ty == some("int");
|
||||
assert fn_.args[1].ty == some("bool");
|
||||
|
@ -199,10 +187,7 @@ fn fold_const(
|
|||
|
||||
#[test]
|
||||
fn should_add_const_types() {
|
||||
let source = "const a: bool = true;";
|
||||
let srv = astsrv::mk_srv_from_str(source);
|
||||
let doc = extract::from_srv(srv, "");
|
||||
let doc = run(srv, doc);
|
||||
let doc = test::mk_doc("const a: bool = true;");
|
||||
assert doc.topmod.consts()[0].ty == some("bool");
|
||||
}
|
||||
|
||||
|
@ -241,10 +226,7 @@ fn fold_enum(
|
|||
|
||||
#[test]
|
||||
fn should_add_variant_sigs() {
|
||||
let source = "enum a { b(int) }";
|
||||
let srv = astsrv::mk_srv_from_str(source);
|
||||
let doc = extract::from_srv(srv, "");
|
||||
let doc = run(srv, doc);
|
||||
let doc = test::mk_doc("enum a { b(int) }");
|
||||
assert doc.topmod.enums()[0].variants[0].sig == some("b(int)");
|
||||
}
|
||||
|
||||
|
@ -272,19 +254,13 @@ fn fold_res(
|
|||
|
||||
#[test]
|
||||
fn should_add_resource_sigs() {
|
||||
let source = "resource r(b: bool) { }";
|
||||
let srv = astsrv::mk_srv_from_str(source);
|
||||
let doc = extract::from_srv(srv, "");
|
||||
let doc = run(srv, doc);
|
||||
let doc = test::mk_doc("resource r(b: bool) { }");
|
||||
assert doc.topmod.resources()[0].sig == some("resource r(b: bool)");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn should_add_resource_arg_tys() {
|
||||
let source = "resource r(a: bool) { }";
|
||||
let srv = astsrv::mk_srv_from_str(source);
|
||||
let doc = extract::from_srv(srv, "");
|
||||
let doc = run(srv, doc);
|
||||
let doc = test::mk_doc("resource r(a: bool) { }");
|
||||
assert doc.topmod.resources()[0].args[0].ty == some("bool");
|
||||
}
|
||||
|
||||
|
@ -464,37 +440,25 @@ fn get_method_arg_tys(
|
|||
|
||||
#[test]
|
||||
fn should_add_iface_method_sigs() {
|
||||
let source = "iface i { fn a() -> int; }";
|
||||
let srv = astsrv::mk_srv_from_str(source);
|
||||
let doc = extract::from_srv(srv, "");
|
||||
let doc = run(srv, doc);
|
||||
let doc = test::mk_doc("iface i { fn a() -> int; }");
|
||||
assert doc.topmod.ifaces()[0].methods[0].sig == some("fn a() -> int");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn should_add_iface_method_ret_types() {
|
||||
let source = "iface i { fn a() -> int; }";
|
||||
let srv = astsrv::mk_srv_from_str(source);
|
||||
let doc = extract::from_srv(srv, "");
|
||||
let doc = run(srv, doc);
|
||||
let doc = test::mk_doc("iface i { fn a() -> int; }");
|
||||
assert doc.topmod.ifaces()[0].methods[0].return.ty == some("int");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn should_not_add_iface_method_nil_ret_type() {
|
||||
let source = "iface i { fn a(); }";
|
||||
let srv = astsrv::mk_srv_from_str(source);
|
||||
let doc = extract::from_srv(srv, "");
|
||||
let doc = run(srv, doc);
|
||||
let doc = test::mk_doc("iface i { fn a(); }");
|
||||
assert doc.topmod.ifaces()[0].methods[0].return.ty == none;
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn should_add_iface_method_arg_types() {
|
||||
let source = "iface i { fn a(b: int, c: bool); }";
|
||||
let srv = astsrv::mk_srv_from_str(source);
|
||||
let doc = extract::from_srv(srv, "");
|
||||
let doc = run(srv, doc);
|
||||
let doc = test::mk_doc("iface i { fn a(b: int, c: bool); }");
|
||||
let fn_ = doc.topmod.ifaces()[0].methods[0];
|
||||
assert fn_.args[0].ty == some("int");
|
||||
assert fn_.args[1].ty == some("bool");
|
||||
|
@ -531,65 +495,53 @@ fn fold_impl(
|
|||
|
||||
#[test]
|
||||
fn should_add_impl_iface_ty() {
|
||||
let source = "impl i of j for int { fn a() { } }";
|
||||
let srv = astsrv::mk_srv_from_str(source);
|
||||
let doc = extract::from_srv(srv, "");
|
||||
let doc = run(srv, doc);
|
||||
let doc = test::mk_doc("impl i of j for int { fn a() { } }");
|
||||
assert doc.topmod.impls()[0].iface_ty == some("j");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn should_not_add_impl_iface_ty_if_none() {
|
||||
let source = "impl i for int { fn a() { } }";
|
||||
let srv = astsrv::mk_srv_from_str(source);
|
||||
let doc = extract::from_srv(srv, "");
|
||||
let doc = run(srv, doc);
|
||||
let doc = test::mk_doc("impl i for int { fn a() { } }");
|
||||
assert doc.topmod.impls()[0].iface_ty == none;
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn should_add_impl_self_ty() {
|
||||
let source = "impl i for int { fn a() { } }";
|
||||
let srv = astsrv::mk_srv_from_str(source);
|
||||
let doc = extract::from_srv(srv, "");
|
||||
let doc = run(srv, doc);
|
||||
let doc = test::mk_doc("impl i for int { fn a() { } }");
|
||||
assert doc.topmod.impls()[0].self_ty == some("int");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn should_add_impl_method_sigs() {
|
||||
let source = "impl i for int { fn a() -> int { fail } }";
|
||||
let srv = astsrv::mk_srv_from_str(source);
|
||||
let doc = extract::from_srv(srv, "");
|
||||
let doc = run(srv, doc);
|
||||
let doc = test::mk_doc("impl i for int { fn a() -> int { fail } }");
|
||||
assert doc.topmod.impls()[0].methods[0].sig == some("fn a() -> int");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn should_add_impl_method_ret_types() {
|
||||
let source = "impl i for int { fn a() -> int { fail } }";
|
||||
let srv = astsrv::mk_srv_from_str(source);
|
||||
let doc = extract::from_srv(srv, "");
|
||||
let doc = run(srv, doc);
|
||||
let doc = test::mk_doc("impl i for int { fn a() -> int { fail } }");
|
||||
assert doc.topmod.impls()[0].methods[0].return.ty == some("int");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn should_not_add_impl_method_nil_ret_type() {
|
||||
let source = "impl i for int { fn a() { } }";
|
||||
let srv = astsrv::mk_srv_from_str(source);
|
||||
let doc = extract::from_srv(srv, "");
|
||||
let doc = run(srv, doc);
|
||||
let doc = test::mk_doc("impl i for int { fn a() { } }");
|
||||
assert doc.topmod.impls()[0].methods[0].return.ty == none;
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn should_add_impl_method_arg_types() {
|
||||
let source = "impl i for int { fn a(b: int, c: bool) { } }";
|
||||
let srv = astsrv::mk_srv_from_str(source);
|
||||
let doc = extract::from_srv(srv, "");
|
||||
let doc = run(srv, doc);
|
||||
let doc = test::mk_doc("impl i for int { fn a(b: int, c: bool) { } }");
|
||||
let fn_ = doc.topmod.impls()[0].methods[0];
|
||||
assert fn_.args[0].ty == some("int");
|
||||
assert fn_.args[1].ty == some("bool");
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod test {
|
||||
fn mk_doc(source: str) -> doc::cratedoc {
|
||||
let srv = astsrv::mk_srv_from_str(source);
|
||||
let doc = extract::from_srv(srv, "");
|
||||
run(srv, doc)
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue