开发运维 (DevOps)

1
需求输入
2
代码与测试生成
3
自动化测试执行
AI 生成结果

开发代理

我已经根据您的 "登录功能" 需求,生成了用户控制器的代码框架和对应的单元测试(Jest)。

测试用例涵盖了 5 种边界情况,您可以查看右侧代码。

const AuthService = require('../services/auth.service');

class AuthController {
    // 处理用户登录请求
    async login(req, res) {
        try {
            const { username, password } = req.body;
            
            if (!username || !password) {
                return res.status(400).json({ error: "缺少必要的参数" });
            }

            const token = await AuthService.authenticate(username, password);
            return res.status(200).json({ token });

        } catch (error) {
            if (error.message === 'AccountLocked') {
                return res.status(403).json({ error: "账号已被锁定,请稍后再试" });
            }
            return res.status(401).json({ error: "认证失败" });
        }
    }
}

module.exports = new AuthController();