@@ -5,6 +5,7 @@ import * as api from "../api-client";
55import { getRunnerLogger } from "../logging" ;
66import { parseRepositoryNwo } from "../repository" ;
77import { setupTests } from "../testing-utils" ;
8+ import * as util from "../util" ;
89
910import * as properties from "./properties" ;
1011
@@ -20,7 +21,13 @@ test("loadPropertiesFromApi throws if response data is not an array", async (t)
2021 const logger = getRunnerLogger ( true ) ;
2122 const mockRepositoryNwo = parseRepositoryNwo ( "owner/repo" ) ;
2223 await t . throwsAsync (
23- properties . loadPropertiesFromApi ( logger , mockRepositoryNwo ) ,
24+ properties . loadPropertiesFromApi (
25+ {
26+ type : util . GitHubVariant . DOTCOM ,
27+ } ,
28+ logger ,
29+ mockRepositoryNwo ,
30+ ) ,
2431 ) ;
2532} ) ;
2633
@@ -34,10 +41,39 @@ test("loadPropertiesFromApi throws if response data contains unexpected objects"
3441 const logger = getRunnerLogger ( true ) ;
3542 const mockRepositoryNwo = parseRepositoryNwo ( "owner/repo" ) ;
3643 await t . throwsAsync (
37- properties . loadPropertiesFromApi ( logger , mockRepositoryNwo ) ,
44+ properties . loadPropertiesFromApi (
45+ {
46+ type : util . GitHubVariant . DOTCOM ,
47+ } ,
48+ logger ,
49+ mockRepositoryNwo ,
50+ ) ,
3851 ) ;
3952} ) ;
4053
54+ test ( "loadPropertiesFromApi returns empty object if not on dotcom" , async ( t ) => {
55+ sinon . stub ( api , "getRepositoryProperties" ) . resolves ( {
56+ headers : { } ,
57+ status : 200 ,
58+ url : "" ,
59+ data : [
60+ { property_name : "github-codeql-extra-queries" , value : "+queries" } ,
61+ { property_name : "unknown-property" , value : "something" } ,
62+ ] satisfies properties . RepositoryProperty [ ] ,
63+ } ) ;
64+ const logger = getRunnerLogger ( true ) ;
65+ const mockRepositoryNwo = parseRepositoryNwo ( "owner/repo" ) ;
66+ const response = await properties . loadPropertiesFromApi (
67+ {
68+ type : util . GitHubVariant . GHES ,
69+ version : "" ,
70+ } ,
71+ logger ,
72+ mockRepositoryNwo ,
73+ ) ;
74+ t . deepEqual ( response , { } ) ;
75+ } ) ;
76+
4177test ( "loadPropertiesFromApi loads known properties" , async ( t ) => {
4278 sinon . stub ( api , "getRepositoryProperties" ) . resolves ( {
4379 headers : { } ,
@@ -51,6 +87,9 @@ test("loadPropertiesFromApi loads known properties", async (t) => {
5187 const logger = getRunnerLogger ( true ) ;
5288 const mockRepositoryNwo = parseRepositoryNwo ( "owner/repo" ) ;
5389 const response = await properties . loadPropertiesFromApi (
90+ {
91+ type : util . GitHubVariant . DOTCOM ,
92+ } ,
5493 logger ,
5594 mockRepositoryNwo ,
5695 ) ;
0 commit comments