Skip to content

Commit

Permalink
Release v1.2.0
Browse files Browse the repository at this point in the history
  • Loading branch information
dpilafian committed Sep 13, 2023
1 parent f197335 commit 64bc30c
Show file tree
Hide file tree
Showing 4 changed files with 10 additions and 17 deletions.
13 changes: 4 additions & 9 deletions dist/server-listening.d.ts
Original file line number Diff line number Diff line change
@@ -1,20 +1,17 @@
//! server-listening v1.1.0 ~~ https://github.com/center-key/server-listening ~~ MIT License
//! server-listening v1.2.0 ~~ https://github.com/center-key/server-listening ~~ MIT License

/// <reference types="cheerio" />
import { JSDOM, BaseOptions, DOMWindow } from 'jsdom';
import { Server } from 'http';
import httpTerminator from 'http-terminator';
export type ServerListeningSettings = {
port: number;
name: string;
};
export type ServerListeningOptions = Partial<ServerListeningSettings>;
export type StartWebServerSettings = {
folder: string;
port: number;
verbose: boolean;
};
export type StartWebServerOptions = Partial<StartWebServerSettings>;
export type Http = {
server: Server;
terminator: httpTerminator.HttpTerminator;
Expand All @@ -27,27 +24,25 @@ export type LoadWebPageSettings = {
jsdom: BaseOptions;
verbose: boolean;
};
export type LoadWebPageOptions = Partial<LoadWebPageSettings>;
export type Web = {
url: string;
dom: JSDOM;
window: DOMWindow;
document: Document;
title: string;
html: string;
$: cheerio.Root;
verbose: boolean;
};
declare const serverListening: {
setPort(options?: ServerListeningOptions): number;
setPort(options?: Partial<ServerListeningSettings>): number;
ready(server: Server): Promise<Server>;
close(server: Server): Promise<Server | Error | undefined>;
jsdomOnLoad(dom: JSDOM): Promise<JSDOM>;
jsdomCloseWindow(dom: JSDOM): Promise<JSDOM>;
log(...args: unknown[]): string;
startWebServer(options?: StartWebServerOptions): Promise<Http>;
startWebServer(options?: Partial<StartWebServerSettings>): Promise<Http>;
shutdownWebServer(http: Http): Promise<void>;
loadWebPage(url: string, options?: LoadWebPageOptions): Promise<Web>;
loadWebPage(url: string, options?: Partial<LoadWebPageSettings>): Promise<Web>;
closeWebPage(web: Web): Promise<Web>;
};
export { serverListening };
10 changes: 4 additions & 6 deletions dist/server-listening.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
//! server-listening v1.1.0 ~~ https://github.com/center-key/server-listening ~~ MIT License
//! server-listening v1.2.0 ~~ https://github.com/center-key/server-listening ~~ MIT License

import { JSDOM } from 'jsdom';
import cheerio from 'cheerio';
import express from 'express';
import httpTerminator from 'http-terminator';
const serverListening = {
Expand All @@ -10,7 +9,7 @@ const serverListening = {
port: 0,
name: 'port',
};
const settings = Object.assign(Object.assign({}, defaults), options);
const settings = { ...defaults, ...options };
process.env[settings.name] = String(settings.port);
return settings.port;
},
Expand Down Expand Up @@ -45,7 +44,7 @@ const serverListening = {
port: 0,
verbose: true,
};
const settings = Object.assign(Object.assign({}, defaults), options);
const settings = { ...defaults, ...options };
const server = express().use(express.static(settings.folder)).listen(settings.port);
const terminator = httpTerminator.createHttpTerminator({ server });
const port = () => server.address().port;
Expand Down Expand Up @@ -75,7 +74,7 @@ const serverListening = {
runScripts: 'dangerously',
};
const defaults = { jsdom: jsdomOptions, verbose: true };
const settings = Object.assign(Object.assign({}, defaults), options);
const settings = { ...defaults, ...options };
if (settings.verbose)
serverListening.log('Web Page - loading:', url);
const web = (jsdom) => ({
Expand All @@ -85,7 +84,6 @@ const serverListening = {
document: jsdom.window.document,
title: jsdom.window.document.title,
html: jsdom.window.document.documentElement.outerHTML,
$: cheerio.load(jsdom.window.document.documentElement.outerHTML),
verbose: settings.verbose,
});
return JSDOM.fromURL(url, settings.jsdom)
Expand Down
2 changes: 1 addition & 1 deletion hello-world/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
},
"scripts": {
"pretest": "jshint . --exclude-path .gitignore",
"test": "mocha *.spec.js --timeout 5000 --retries 1"
"test": "mocha *.spec.js --timeout 7000 --retries 1"
},
"dependencies": {
"express": "~4.18"
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "server-listening",
"version": "1.1.0",
"version": "1.2.0",
"description": "Simple promise to wait for server ready inside a mocha specification",
"license": "MIT",
"type": "module",
Expand Down

0 comments on commit 64bc30c

Please sign in to comment.