UNPKG

opennms

Version:

Client API for the OpenNMS network monitoring platform

61 lines (54 loc) 2.32 kB
declare const await, describe, beforeEach, it, expect, jest; import {Client} from '../src/Client'; import {OnmsAuthConfig} from '../src/api/OnmsAuthConfig'; import {OnmsServer} from '../src/api/OnmsServer'; import {ServerMetadata} from '../src/api/ServerMetadata'; import {MockHTTP19} from './rest/MockHTTP19'; import {ServerType, ServerTypes} from '../src/api/ServerType'; const SERVER_NAME = 'Demo'; const SERVER_URL = 'http://demo.opennms.org/opennms/'; const SERVER_USER = 'demo'; const SERVER_PASSWORD = 'demo'; let opennms: Client, server, auth, mockHTTP; describe('Given an instance of OpenNMS...', () => { beforeEach(() => { mockHTTP = new MockHTTP19(); opennms = new Client(mockHTTP); auth = new OnmsAuthConfig(SERVER_USER, SERVER_PASSWORD); server = OnmsServer.newBuilder(SERVER_URL).setName(SERVER_NAME).setAuth(auth).build(); }); describe('when I have a default OpenNMS object', () => { it('it should have no server', () => { expect((opennms as any).server).toBeUndefined(); }); it('it should pass when checkServer is called on a valid server', () => { const ret = Client.checkServer(server, mockHTTP); expect(ret).toBeDefined(); return ret.then((result) => { expect(result).toBeDefined(); expect(result).toEqual(true); }); }); it('it should return a metadata object when getMetadata is called on a valid server', () => { const ret = Client.getMetadata(server, mockHTTP); expect(ret).toBeDefined(); return ret.then((result) => { expect(result).toBeDefined(); expect(result).toBeInstanceOf(ServerMetadata); expect(result.version.version).toEqual('19.1.0'); expect(result.type).toEqual(ServerTypes.HORIZON); }); }); it('it should return a server object with metadata when connect is called', () => { const ret = opennms.connect(SERVER_NAME, SERVER_URL, SERVER_USER, SERVER_PASSWORD); expect(ret).toBeDefined(); return ret.then((result) => { expect(result).toBeDefined(); expect(result).toBeInstanceOf(Client); expect(result.http).toBeDefined(); expect(result.http.server).toBeInstanceOf(OnmsServer); expect(result.http.server.metadata).toBeInstanceOf(ServerMetadata); }); }); }); });