1+ import { Result } from "execa" ;
12import { describe , expect , it , vi } from "vitest" ;
23
34import { readAuthor } from "./readAuthor.js" ;
@@ -10,6 +11,7 @@ describe(readAuthor, () => {
1011 const actual = await readAuthor (
1112 ( ) => Promise . resolve ( { name } ) ,
1213 getNpmDefaults ,
14+ ( ) => Promise . resolve ( undefined ) ,
1315 undefined ,
1416 ) ;
1517
@@ -23,6 +25,7 @@ describe(readAuthor, () => {
2325 const actual = await readAuthor (
2426 ( ) => Promise . resolve ( { } ) ,
2527 ( ) => Promise . resolve ( { name } ) ,
28+ ( ) => Promise . resolve ( undefined ) ,
2629 undefined ,
2730 ) ;
2831
@@ -35,16 +38,31 @@ describe(readAuthor, () => {
3538 const actual = await readAuthor (
3639 ( ) => Promise . resolve ( { } ) ,
3740 ( ) => Promise . resolve ( undefined ) ,
41+ ( ) => Promise . resolve ( undefined ) ,
3842 owner ,
3943 ) ;
4044
4145 expect ( actual ) . toBe ( owner ) ;
4246 } ) ;
4347
48+ it ( "returns gitUser when only it exists" , async ( ) => {
49+ const gitUser = "test-owner" ;
50+
51+ const actual = await readAuthor (
52+ ( ) => Promise . resolve ( { } ) ,
53+ ( ) => Promise . resolve ( undefined ) ,
54+ ( ) => Promise . resolve ( { stdout : gitUser } as Result ) ,
55+ undefined ,
56+ ) ;
57+
58+ expect ( actual ) . toBe ( gitUser ) ;
59+ } ) ;
60+
4461 it ( "returns undefined when no sources provide a value" , async ( ) => {
4562 const actual = await readAuthor (
4663 ( ) => Promise . resolve ( { } ) ,
4764 ( ) => Promise . resolve ( undefined ) ,
65+ ( ) => Promise . resolve ( undefined ) ,
4866 undefined ,
4967 ) ;
5068
0 commit comments