Files
leetcode/tests/test_222.cpp
Jeffrey Hsu 7d45cb5978
Some checks failed
Gitea CTest Workflow / test (push) Failing after 3m20s
119 219 222
2026-03-09 19:58:49 +08:00

59 lines
1.1 KiB
C++

// This file is generated by mkfile.py
// Date: 2026-03-09
#include <gtest/gtest.h>
#include <solution/222.h>
class CountNodesTest : public ::testing::Test
{
protected:
TreeNode *createNode(int val)
{
TreeNode *node = new TreeNode;
node->val = val;
node->left = nullptr;
node->right = nullptr;
return node;
}
void freeTree(TreeNode *root)
{
if (!root)
return;
freeTree(root->left);
freeTree(root->right);
delete root;
}
};
// 示例 1
TEST_F(CountNodesTest, Example1)
{
// 构建树: [1,2,3,4,5,6]
TreeNode *root = createNode(1);
root->left = createNode(2);
root->right = createNode(3);
root->left->left = createNode(4);
root->left->right = createNode(5);
root->right->left = createNode(6);
EXPECT_EQ(countNodes(root), 6);
freeTree(root);
}
// 示例 2
TEST_F(CountNodesTest, Example2)
{
TreeNode *root = nullptr;
EXPECT_EQ(countNodes(root), 0);
}
// 示例 3
TEST_F(CountNodesTest, Example3)
{
TreeNode *root = createNode(1);
EXPECT_EQ(countNodes(root), 1);
freeTree(root);
}