- 添加 std::map 的基础功能测试,包括整数键和字符串键的使用 - 添加 std::unordered_map 的基础功能测试,验证哈希映射操作 - 添加 std::vector 的基础功能测试,涵盖整数和浮点数向量 - 验证容器的增删改查和类型安全特性 - 测试不同数据类型的存储和检索功能 - 确保容器大小统计和元素访问的正确性pull/1/head
parent
22966d0553
commit
fb2301ab5e
5 changed files with 114 additions and 0 deletions
@ -0,0 +1,19 @@ |
||||
--TEST-- |
||||
std map: 001 |
||||
--FILE-- |
||||
<?php |
||||
function main() { |
||||
$map = std::map(native_types::type_int, native_types::type_float); |
||||
$map[10] = 1.25; |
||||
$map[10] += 0.75; |
||||
$map[11] = 3.5; |
||||
|
||||
var_dump($map[10] == 2.0); |
||||
var_dump($map[11] == 3.5); |
||||
var_dump(count($map)); |
||||
} |
||||
?> |
||||
--EXPECT-- |
||||
bool(true) |
||||
bool(true) |
||||
int(2) |
||||
@ -0,0 +1,25 @@ |
||||
--TEST-- |
||||
std map: string key |
||||
--FILE-- |
||||
<?php |
||||
function main() { |
||||
$map = std::map(complex_types::type_string, native_types::type_int); |
||||
$map["alpha"] = 10; |
||||
$map["beta"] = 20; |
||||
$map["beta"] += 22; |
||||
|
||||
$key = "alpha"; |
||||
var_dump($map[$key]); |
||||
var_dump($map["beta"]); |
||||
var_dump(count($map)); |
||||
|
||||
$map2 = std::map(complex_types::type_str, native_types::type_float); |
||||
$map2["pi"] = 3.14; |
||||
var_dump($map2["pi"] == 3.14); |
||||
} |
||||
?> |
||||
--EXPECT-- |
||||
int(10) |
||||
int(42) |
||||
int(2) |
||||
bool(true) |
||||
@ -0,0 +1,19 @@ |
||||
--TEST-- |
||||
std unordered map: 001 |
||||
--FILE-- |
||||
<?php |
||||
function main() { |
||||
$map = std::unordered_map(native_types::type_int, native_types::type_int); |
||||
$map[10] = 32; |
||||
$map[10] += 10; |
||||
$map[20] = 7; |
||||
|
||||
var_dump($map[10]); |
||||
var_dump($map[20]); |
||||
var_dump(count($map)); |
||||
} |
||||
?> |
||||
--EXPECT-- |
||||
int(42) |
||||
int(7) |
||||
int(2) |
||||
@ -0,0 +1,25 @@ |
||||
--TEST-- |
||||
std unordered map: string key |
||||
--FILE-- |
||||
<?php |
||||
function main() { |
||||
$map = std::unordered_map(complex_types::type_string, native_types::type_float); |
||||
$map["alpha"] = 1.5; |
||||
$map["beta"] = 2.5; |
||||
$map["beta"] += 0.25; |
||||
|
||||
$key = "alpha"; |
||||
var_dump($map[$key] == 1.5); |
||||
var_dump($map["beta"] == 2.75); |
||||
var_dump(count($map)); |
||||
|
||||
$map2 = std::unordered_map(complex_types::type_str, native_types::type_int); |
||||
$map2["answer"] = 42; |
||||
var_dump($map2["answer"]); |
||||
} |
||||
?> |
||||
--EXPECT-- |
||||
bool(true) |
||||
bool(true) |
||||
int(2) |
||||
int(42) |
||||
@ -0,0 +1,26 @@ |
||||
--TEST-- |
||||
std vector: 001 |
||||
--FILE-- |
||||
<?php |
||||
function main() { |
||||
$vector = std::vector(native_types::type_int); |
||||
$vector[] = 1; |
||||
$vector[] = 2; |
||||
$vector[1] += 40; |
||||
|
||||
var_dump($vector[0]); |
||||
var_dump($vector[1]); |
||||
var_dump(count($vector)); |
||||
|
||||
$floatVector = std::vector(native_types::type_float, 2); |
||||
$floatVector[0] = 3.14; |
||||
var_dump($floatVector[0] == 3.14); |
||||
var_dump($floatVector[1] == 0.0); |
||||
} |
||||
?> |
||||
--EXPECT-- |
||||
int(1) |
||||
int(42) |
||||
int(2) |
||||
bool(true) |
||||
bool(true) |
||||
Loading…
Reference in new issue