mirror of
https://gitee.com/mirrors/AllinSSL.git
synced 2026-03-13 18:10:53 +08:00
【调整】申请证书配置CA选项增加liteSSL证书
This commit is contained in:
@@ -1,106 +0,0 @@
|
||||
import { describe, it, expect } from 'vitest'
|
||||
import * as randomUtils from '../src/random'
|
||||
|
||||
describe('随机数生成工具函数测试', () => {
|
||||
describe('randomInt', () => {
|
||||
it('应当生成指定范围内的随机整数', () => {
|
||||
const min = 1
|
||||
const max = 10
|
||||
for (let i = 0; i < 100; i++) {
|
||||
const result = randomUtils.randomInt(min, max)
|
||||
expect(result).toBeGreaterThanOrEqual(min)
|
||||
expect(result).toBeLessThanOrEqual(max)
|
||||
expect(Number.isInteger(result)).toBe(true)
|
||||
}
|
||||
})
|
||||
|
||||
it('应当正确处理最小值等于最大值的情况', () => {
|
||||
const value = 5
|
||||
expect(randomUtils.randomInt(value, value)).toBe(value)
|
||||
})
|
||||
})
|
||||
|
||||
describe('randomChart', () => {
|
||||
it('应当生成指定长度的随机字符串', () => {
|
||||
const length = 32
|
||||
const result = randomUtils.randomChart(length)
|
||||
expect(result.length).toBe(length)
|
||||
})
|
||||
|
||||
it('应当正确处理不同选项', () => {
|
||||
// 只包含特殊字符
|
||||
const specialOnly = randomUtils.randomChart(10, {
|
||||
isSpecial: true,
|
||||
isLower: false,
|
||||
isUpper: false,
|
||||
isNumber: false,
|
||||
})
|
||||
expect(specialOnly).toMatch(/^[!@#$%^&*?]+$/)
|
||||
|
||||
// 只包含小写字母
|
||||
const lowerOnly = randomUtils.randomChart(10, {
|
||||
isSpecial: false,
|
||||
isLower: true,
|
||||
isUpper: false,
|
||||
isNumber: false,
|
||||
})
|
||||
expect(lowerOnly).toMatch(/^[a-z]+$/)
|
||||
|
||||
// 只包含大写字母
|
||||
const upperOnly = randomUtils.randomChart(10, {
|
||||
isSpecial: false,
|
||||
isLower: false,
|
||||
isUpper: true,
|
||||
isNumber: false,
|
||||
})
|
||||
expect(upperOnly).toMatch(/^[A-Z]+$/)
|
||||
|
||||
// 只包含数字
|
||||
const numberOnly = randomUtils.randomChart(10, {
|
||||
isSpecial: false,
|
||||
isLower: false,
|
||||
isUpper: false,
|
||||
isNumber: true,
|
||||
})
|
||||
expect(numberOnly).toMatch(/^[0-9]+$/)
|
||||
})
|
||||
})
|
||||
|
||||
describe('randomChartWithMinLength', () => {
|
||||
it('应当生成包含最小长度要求的随机字符串', () => {
|
||||
const length = 32
|
||||
const options = {
|
||||
minUpper: 5,
|
||||
minLower: 5,
|
||||
minNumber: 5,
|
||||
minSpecial: 2,
|
||||
}
|
||||
const result = randomUtils.randomChartWithMinLength(length, options)
|
||||
|
||||
expect(result.length).toBe(length)
|
||||
expect(result.match(/[A-Z]/g)?.length).toBeGreaterThanOrEqual(options.minUpper)
|
||||
expect(result.match(/[a-z]/g)?.length).toBeGreaterThanOrEqual(options.minLower)
|
||||
expect(result.match(/[0-9]/g)?.length).toBeGreaterThanOrEqual(options.minNumber)
|
||||
expect(result.match(/[!@#$%^&*?]/g)?.length).toBeGreaterThanOrEqual(options.minSpecial)
|
||||
})
|
||||
|
||||
it('当最小长度要求总和超过指定长度时应当抛出错误', () => {
|
||||
const length = 10
|
||||
const options = {
|
||||
minUpper: 4,
|
||||
minLower: 4,
|
||||
minNumber: 4,
|
||||
minSpecial: 4,
|
||||
}
|
||||
expect(() => randomUtils.randomChartWithMinLength(length, options)).toThrow()
|
||||
})
|
||||
|
||||
it('应当生成不同的随机字符串', () => {
|
||||
const length = 32
|
||||
const options = { minUpper: 1, minLower: 1, minNumber: 1, minSpecial: 0 }
|
||||
const result1 = randomUtils.randomChartWithMinLength(length, options)
|
||||
const result2 = randomUtils.randomChartWithMinLength(length, options)
|
||||
expect(result1).not.toBe(result2)
|
||||
})
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user