forked from nexoraorg/chenaikit
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtest-validation.js
More file actions
53 lines (41 loc) · 2.14 KB
/
Copy pathtest-validation.js
File metadata and controls
53 lines (41 loc) · 2.14 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
// Simple test script to demonstrate the form validation system
const { ValidationRules, validateField, validateFields } = require('./packages/core/dist/index.js');
async function testValidation() {
console.log('🧪 Testing ChenAIKit Form Validation System\n');
// Test 1: Email validation
console.log('1. Testing Email Validation:');
const emailError = await validateField('invalid-email', ValidationRules.email());
console.log(` Invalid email: "${emailError}"`);
const validEmail = await validateField('test@example.com', ValidationRules.email());
console.log(` Valid email: "${validEmail || 'No error'}"`);
// Test 2: Stellar address validation
console.log('\n2. Testing Stellar Address Validation:');
const invalidStellar = await validateField('invalid-address', ValidationRules.stellarAddress());
console.log(` Invalid Stellar address: "${invalidStellar}"`);
const validStellar = await validateField('GABCDEFGHIJKLMNOPQRSTUVWXYZ123456789012345678901234567890', ValidationRules.stellarAddress());
console.log(` Valid Stellar address: "${validStellar || 'No error'}"`);
// Test 3: Number validation
console.log('\n3. Testing Number Validation:');
const negativeNumber = await validateField('-10', ValidationRules.positiveNumber());
console.log(` Negative number: "${negativeNumber}"`);
const validNumber = await validateField('100', ValidationRules.positiveNumber());
console.log(` Valid number: "${validNumber || 'No error'}"`);
// Test 4: Multiple field validation
console.log('\n4. Testing Multiple Field Validation:');
const formData = {
email: 'invalid-email',
stellarAddress: 'invalid-address',
amount: '-50'
};
const validationRules = {
email: ValidationRules.email(),
stellarAddress: ValidationRules.stellarAddress(),
amount: ValidationRules.positiveNumber()
};
const errors = await validateFields(formData, validationRules);
console.log(' Form errors:', errors);
console.log('\n✅ All validation tests completed!');
console.log('\n🌐 To test the full React application, visit: http://localhost:3001');
}
// Run the test
testValidation().catch(console.error);