uncomment more passing tests

This commit is contained in:
Andrew Kelley 2019-06-14 13:32:04 -04:00
parent 7c074b8516
commit acf16b5fb3
No known key found for this signature in database
GPG Key ID: 7C5F548F728501A9
9 changed files with 95 additions and 94 deletions

View File

@ -2,6 +2,7 @@ Scratch pad for stuff to do before merging master
=================================================
uncomment all the behavior tests
diff master branch to make sure
restore test_runner.zig to master branch
- also the default panic function and unexpected_error_tracing. see the commit

View File

@ -40,20 +40,20 @@ comptime {
//_ = @import("behavior/bugs/920.zig");
_ = @import("behavior/byval_arg_var.zig");
//_ = @import("behavior/cancel.zig");
//_ = @import("behavior/cast.zig");
_ = @import("behavior/cast.zig"); // TODO
_ = @import("behavior/const_slice_child.zig");
//_ = @import("behavior/coroutine_await_struct.zig");
//_ = @import("behavior/coroutines.zig");
_ = @import("behavior/defer.zig");
//_ = @import("behavior/enum.zig");
//_ = @import("behavior/enum_with_members.zig");
_ = @import("behavior/enum.zig");
_ = @import("behavior/enum_with_members.zig");
//_ = @import("behavior/error.zig");
//_ = @import("behavior/eval.zig");
_ = @import("behavior/eval.zig"); // TODO
_ = @import("behavior/field_parent_ptr.zig");
_ = @import("behavior/fn.zig");
_ = @import("behavior/fn_in_struct_in_comptime.zig");
_ = @import("behavior/for.zig");
//_ = @import("behavior/generics.zig");
_ = @import("behavior/generics.zig"); // TODO
_ = @import("behavior/hasdecl.zig");
_ = @import("behavior/if.zig");
//_ = @import("behavior/import.zig");
@ -61,15 +61,15 @@ comptime {
_ = @import("behavior/inttoptr.zig");
_ = @import("behavior/ir_block_deps.zig");
//_ = @import("behavior/math.zig");
//_ = @import("behavior/merge_error_sets.zig");
//_ = @import("behavior/misc.zig");
_ = @import("behavior/merge_error_sets.zig");
_ = @import("behavior/misc.zig"); // TODO
_ = @import("behavior/namespace_depends_on_compile_var.zig");
_ = @import("behavior/new_stack_call.zig");
_ = @import("behavior/null.zig");
//_ = @import("behavior/optional.zig");
_ = @import("behavior/optional.zig"); // TODO
//_ = @import("behavior/pointers.zig");
_ = @import("behavior/popcount.zig");
//_ = @import("behavior/ptrcast.zig");
_ = @import("behavior/ptrcast.zig"); // TODO
_ = @import("behavior/pub_enum.zig");
_ = @import("behavior/ref_var_in_if_after_if_2nd_switch_prong.zig");
_ = @import("behavior/reflection.zig");
@ -94,6 +94,6 @@ comptime {
_ = @import("behavior/var_args.zig");
_ = @import("behavior/vector.zig");
_ = @import("behavior/void.zig");
//_ = @import("behavior/while.zig");
_ = @import("behavior/while.zig"); // TODO
_ = @import("behavior/widening.zig");
}

View File

@ -124,14 +124,14 @@ fn returnNullLitFromOptionalTypeErrorRef() anyerror!?*A {
return null;
}
test "peer type resolution: ?T and T" {
expect(peerTypeTAndOptionalT(true, false).? == 0);
expect(peerTypeTAndOptionalT(false, false).? == 3);
comptime {
expect(peerTypeTAndOptionalT(true, false).? == 0);
expect(peerTypeTAndOptionalT(false, false).? == 3);
}
}
//test "peer type resolution: ?T and T" {
// expect(peerTypeTAndOptionalT(true, false).? == 0);
// expect(peerTypeTAndOptionalT(false, false).? == 3);
// comptime {
// expect(peerTypeTAndOptionalT(true, false).? == 0);
// expect(peerTypeTAndOptionalT(false, false).? == 3);
// }
//}
fn peerTypeTAndOptionalT(c: bool, b: bool) ?usize {
if (c) {
return if (b) null else usize(0);

View File

@ -176,9 +176,9 @@ test "const slice" {
}
}
test "try to trick eval with runtime if" {
expect(testTryToTrickEvalWithRuntimeIf(true) == 10);
}
//test "try to trick eval with runtime if" {
// expect(testTryToTrickEvalWithRuntimeIf(true) == 10);
//}
fn testTryToTrickEvalWithRuntimeIf(b: bool) usize {
comptime var i: usize = 0;
@ -572,14 +572,14 @@ pub const Info = struct {
pub const diamond_info = Info{ .version = 0 };
test "comptime modification of const struct field" {
comptime {
var res = diamond_info;
res.version = 1;
expect(diamond_info.version == 0);
expect(res.version == 1);
}
}
//test "comptime modification of const struct field" {
// comptime {
// var res = diamond_info;
// res.version = 1;
// expect(diamond_info.version == 0);
// expect(res.version == 1);
// }
//}
test "pointer to type" {
comptime {
@ -657,9 +657,9 @@ fn loopNTimes(comptime n: usize) void {
inline while (i < n) : (i += 1) {}
}
test "variable inside inline loop that has different types on different iterations" {
testVarInsideInlineLoop(true, u32(42));
}
//test "variable inside inline loop that has different types on different iterations" {
// testVarInsideInlineLoop(true, u32(42));
//}
fn testVarInsideInlineLoop(args: ...) void {
comptime var i = 0;
@ -670,14 +670,14 @@ fn testVarInsideInlineLoop(args: ...) void {
}
}
test "inline for with same type but different values" {
var res: usize = 0;
inline for ([_]type{ [2]u8, [1]u8, [2]u8 }) |T| {
var a: T = undefined;
res += a.len;
}
expect(res == 5);
}
//test "inline for with same type but different values" {
// var res: usize = 0;
// inline for ([_]type{ [2]u8, [1]u8, [2]u8 }) |T| {
// var a: T = undefined;
// res += a.len;
// }
// expect(res == 5);
//}
test "refer to the type of a generic function" {
const Func = fn (type) void;

View File

@ -80,19 +80,19 @@ test "function with return type type" {
expect(list2.prealloc_items.len == 8);
}
test "generic struct" {
var a1 = GenNode(i32){
.value = 13,
.next = null,
};
var b1 = GenNode(bool){
.value = true,
.next = null,
};
expect(a1.value == 13);
expect(a1.value == a1.getVal());
expect(b1.getVal());
}
//test "generic struct" {
// var a1 = GenNode(i32){
// .value = 13,
// .next = null,
// };
// var b1 = GenNode(bool){
// .value = true,
// .next = null,
// };
// expect(a1.value == 13);
// expect(a1.value == a1.getVal());
// expect(b1.getVal());
//}
fn GenNode(comptime T: type) type {
return struct {
value: T,

View File

@ -686,13 +686,13 @@ fn getNull() ?*i32 {
return null;
}
test "thread local variable" {
const S = struct {
threadlocal var t: i32 = 1234;
};
S.t += 1;
expect(S.t == 1235);
}
//test "thread local variable" {
// const S = struct {
// threadlocal var t: i32 = 1234;
// };
// S.t += 1;
// expect(S.t == 1235);
//}
test "unicode escape in character literal" {
var a: u24 = '\U01f4a9';

View File

@ -2,11 +2,11 @@ const expect = @import("std").testing.expect;
pub const EmptyStruct = struct {};
test "optional pointer to size zero struct" {
var e = EmptyStruct{};
var o: ?*EmptyStruct = &e;
expect(o != null);
}
//test "optional pointer to size zero struct" {
// var e = EmptyStruct{};
// var o: ?*EmptyStruct = &e;
// expect(o != null);
//}
test "equality compare nullable pointers" {
testNullPtrsEql();

View File

@ -59,10 +59,10 @@ test "comptime ptrcast keeps larger alignment" {
}
}
test "implicit optional pointer to optional c_void pointer" {
var buf: [4]u8 = "aoeu";
var x: ?[*]u8 = &buf;
var y: ?*c_void = x;
var z = @ptrCast(*[4]u8, y);
expect(std.mem.eql(u8, z, "aoeu"));
}
//test "implicit optional pointer to optional c_void pointer" {
// var buf: [4]u8 = "aoeu";
// var x: ?[*]u8 = &buf;
// var y: ?*c_void = x;
// var z = @ptrCast(*[4]u8, y);
// expect(std.mem.eql(u8, z, "aoeu"));
//}

View File

@ -82,28 +82,28 @@ test "while with else" {
expect(got_else == 1);
}
test "while with optional as condition" {
numbers_left = 10;
var sum: i32 = 0;
while (getNumberOrNull()) |value| {
sum += value;
}
expect(sum == 45);
}
test "while with optional as condition with else" {
numbers_left = 10;
var sum: i32 = 0;
var got_else: i32 = 0;
while (getNumberOrNull()) |value| {
sum += value;
expect(got_else == 0);
} else {
got_else += 1;
}
expect(sum == 45);
expect(got_else == 1);
}
//test "while with optional as condition" {
// numbers_left = 10;
// var sum: i32 = 0;
// while (getNumberOrNull()) |value| {
// sum += value;
// }
// expect(sum == 45);
//}
//
//test "while with optional as condition with else" {
// numbers_left = 10;
// var sum: i32 = 0;
// var got_else: i32 = 0;
// while (getNumberOrNull()) |value| {
// sum += value;
// expect(got_else == 0);
// } else {
// got_else += 1;
// }
// expect(sum == 45);
// expect(got_else == 1);
//}
test "while with error union condition" {
numbers_left = 10;