mirror of
https://github.com/n8n-io/n8n.git
synced 2026-05-26 22:35:18 +02:00
85 lines
2.3 KiB
TypeScript
85 lines
2.3 KiB
TypeScript
import * as os from 'os';
|
|
|
|
import { Facility, Severity, SyslogClient, Transport } from '../src';
|
|
import { TLS_CERTIFICATE } from './setup';
|
|
|
|
describe('SyslogClient - Core', () => {
|
|
describe('Constructor and defaults', () => {
|
|
it('should set default options correctly', () => {
|
|
const client = new SyslogClient();
|
|
expect(client.target).toBe('127.0.0.1');
|
|
expect(client.port).toBe(514);
|
|
expect(client.syslogHostname).toBe(os.hostname());
|
|
expect(client.tcpTimeout).toBe(10000);
|
|
expect(client.transport).toBe(Transport.Udp);
|
|
client.close();
|
|
});
|
|
|
|
it('should accept target parameter', () => {
|
|
const client = new SyslogClient('127.0.0.2');
|
|
expect(client.target).toBe('127.0.0.2');
|
|
expect(client.port).toBe(514);
|
|
expect(client.syslogHostname).toBe(os.hostname());
|
|
client.close();
|
|
});
|
|
|
|
it('should accept custom hostname', () => {
|
|
const client = new SyslogClient('127.0.0.2', {
|
|
syslogHostname: 'test',
|
|
});
|
|
expect(client.target).toBe('127.0.0.2');
|
|
expect(client.syslogHostname).toBe('test');
|
|
client.close();
|
|
});
|
|
|
|
it('should accept custom port and timeout', () => {
|
|
const client = new SyslogClient('127.0.0.2', {
|
|
syslogHostname: 'test',
|
|
port: 5555,
|
|
tcpTimeout: 50,
|
|
});
|
|
expect(client.port).toBe(5555);
|
|
expect(client.tcpTimeout).toBe(50);
|
|
client.close();
|
|
});
|
|
|
|
it('should accept TCP transport option', () => {
|
|
const client = new SyslogClient('127.0.0.2', {
|
|
port: 5555,
|
|
transport: Transport.Tcp,
|
|
});
|
|
expect(client.transport).toBe(Transport.Tcp);
|
|
client.close();
|
|
});
|
|
|
|
it('should accept TLS transport with certificate', () => {
|
|
const client = new SyslogClient('127.0.0.2', {
|
|
port: 6514,
|
|
transport: Transport.Tls,
|
|
tlsCA: TLS_CERTIFICATE,
|
|
});
|
|
expect(client.transport).toBe(Transport.Tls);
|
|
expect(client.tlsCA).toBe(TLS_CERTIFICATE);
|
|
client.close();
|
|
});
|
|
|
|
it('should accept facility and severity options', () => {
|
|
const client = new SyslogClient('127.0.0.1', {
|
|
facility: Facility.Mail,
|
|
severity: Severity.Critical,
|
|
});
|
|
expect(client.facility).toBe(Facility.Mail);
|
|
expect(client.severity).toBe(Severity.Critical);
|
|
client.close();
|
|
});
|
|
|
|
it('should accept RFC format option', () => {
|
|
const client = new SyslogClient('127.0.0.1', {
|
|
rfc3164: false,
|
|
});
|
|
expect(client.rfc3164).toBe(false);
|
|
client.close();
|
|
});
|
|
});
|
|
});
|