1
- import { expectType } from 'tsd' ;
1
+ import { expectAssignable , expectError } from 'tsd' ;
2
2
import packageJson , {
3
3
type FullMetadata ,
4
4
type FullVersion ,
@@ -8,29 +8,43 @@ import packageJson, {
8
8
VersionNotFoundError ,
9
9
} from './index.js' ;
10
10
11
- expectType < Promise < AbbreviatedMetadata > > ( packageJson ( 'package-json' ) ) ;
12
- expectType < Promise < AbbreviatedMetadata > > (
11
+ expectAssignable < Promise < AbbreviatedVersion > > ( packageJson ( 'package-json' ) ) ;
12
+ expectAssignable < Promise < AbbreviatedVersion > > (
13
13
packageJson ( 'package-json' , { version : '1.2.3' } ) ,
14
14
) ;
15
- expectType < Promise < AbbreviatedMetadata > > (
15
+ expectAssignable < Promise < AbbreviatedMetadata > > (
16
16
packageJson ( 'package-json' , { allVersions : true } ) ,
17
17
) ;
18
- expectType < Promise < FullMetadata > > (
18
+ expectAssignable < Promise < FullVersion > > (
19
19
packageJson ( 'package-json' , { fullMetadata : true } ) ,
20
20
) ;
21
+ expectAssignable < Promise < FullMetadata > > (
22
+ packageJson ( 'package-json' , { fullMetadata : true , allVersions : true } ) ,
23
+ ) ;
21
24
22
25
const abbreviatedMetadata = await packageJson ( 'package-json' ) ;
23
- expectType < AbbreviatedVersion > ( abbreviatedMetadata . versions [ '1.2.3' ] ) ;
26
+ expectAssignable < string > ( abbreviatedMetadata . version ) ;
27
+ expectError ( abbreviatedMetadata . versions ) ;
28
+
24
29
const fullMetadata = await packageJson ( 'package-json' , { fullMetadata : true } ) ;
25
- expectType < FullVersion > ( fullMetadata . versions [ '1.2.3' ] ) ;
30
+ expectAssignable < string > ( fullMetadata . version ) ;
31
+ expectError ( fullMetadata . versions ) ;
32
+
33
+ const abbreviatedVersions = await packageJson ( 'package-json' , { allVersions : true } ) ;
34
+ expectAssignable < AbbreviatedVersion | undefined > ( abbreviatedVersions . versions [ '1.2.3' ] ) ;
35
+ expectError ( abbreviatedVersions . version ) ;
36
+
37
+ const fullVersions = await packageJson ( 'package-json' , { fullMetadata : true , allVersions : true } ) ;
38
+ expectAssignable < FullVersion | undefined > ( fullVersions . versions [ '1.2.3' ] ) ;
39
+ expectError ( fullVersions . version ) ;
26
40
27
- expectType < typeof PackageNotFoundError > ( PackageNotFoundError ) ;
28
- expectType < typeof VersionNotFoundError > ( VersionNotFoundError ) ;
41
+ expectAssignable < typeof PackageNotFoundError > ( PackageNotFoundError ) ;
42
+ expectAssignable < typeof VersionNotFoundError > ( VersionNotFoundError ) ;
29
43
30
44
const packageNotFoundError = new PackageNotFoundError ( 'foo' ) ;
31
45
packageNotFoundError instanceof PackageNotFoundError ; // eslint-disable-line @typescript-eslint/no-unused-expressions
32
- expectType < PackageNotFoundError > ( packageNotFoundError ) ;
46
+ expectAssignable < PackageNotFoundError > ( packageNotFoundError ) ;
33
47
34
48
const versionNotFoundError = new VersionNotFoundError ( 'foo' , 'bar' ) ;
35
49
versionNotFoundError instanceof VersionNotFoundError ; // eslint-disable-line @typescript-eslint/no-unused-expressions
36
- expectType < VersionNotFoundError > ( versionNotFoundError ) ;
50
+ expectAssignable < VersionNotFoundError > ( versionNotFoundError ) ;
0 commit comments