File tree Expand file tree Collapse file tree 3 files changed +27
-9
lines changed Expand file tree Collapse file tree 3 files changed +27
-9
lines changed Original file line number Diff line number Diff line change @@ -16,9 +16,7 @@ npm i template-typescript-node-package
1616``` ts
1717import { greet } from " template-typescript-node-package" ;
1818
19- greet ({
20- message: " Hello, world!" ,
21- });
19+ greet (" Hello, world!" );
2220```
2321
2422## Development
Original file line number Diff line number Diff line change @@ -4,7 +4,25 @@ import { greet } from "./greet.js";
44const message = "Yay, testing!" ;
55
66describe ( "greet" , ( ) => {
7- it ( "logs once when times is not provided" , ( ) => {
7+ it ( "logs to the console once when message is provided as a string" , ( ) => {
8+ const logger = vi . spyOn ( console , "log" ) . mockImplementation ( ( ) => undefined ) ;
9+
10+ greet ( message ) ;
11+
12+ expect ( logger ) . toHaveBeenCalledWith ( message ) ;
13+ expect ( logger ) . toHaveBeenCalledTimes ( 1 ) ;
14+ } ) ;
15+
16+ it ( "logs to the console once when message is provided as an object" , ( ) => {
17+ const logger = vi . spyOn ( console , "log" ) . mockImplementation ( ( ) => undefined ) ;
18+
19+ greet ( { message } ) ;
20+
21+ expect ( logger ) . toHaveBeenCalledWith ( message ) ;
22+ expect ( logger ) . toHaveBeenCalledTimes ( 1 ) ;
23+ } ) ;
24+
25+ it ( "logs once when times is not provided in an object" , ( ) => {
826 const logger = vi . fn ( ) ;
927
1028 greet ( { logger, message } ) ;
Original file line number Diff line number Diff line change 11import { GreetOptions } from "./types" ;
22
3- export function greet ( {
4- logger = console . log . bind ( console ) ,
5- message,
6- times = 1 ,
7- } : GreetOptions ) {
3+ export function greet ( options : GreetOptions | string ) {
4+ const {
5+ logger = console . log . bind ( console ) ,
6+ message,
7+ times = 1 ,
8+ } = typeof options === "string" ? { message : options } : options ;
9+
810 for ( let i = 0 ; i < times ; i += 1 ) {
911 logger ( message ) ;
1012 }
You can’t perform that action at this time.
0 commit comments