@@ -106,20 +106,19 @@ export const createRepo = async (repo: Repo): Promise<Repo> => {
106106
107107export const addUserCanPush = async ( _id : string , user : string ) : Promise < void > => {
108108 user = user . toLowerCase ( ) ;
109- return new Promise ( async ( resolve , reject ) => {
110- const repo = await getRepoById ( _id ) ;
111- if ( ! repo ) {
112- reject ( new Error ( 'Repo not found' ) ) ;
113- return ;
114- }
115-
116- if ( repo . users ?. canPush . includes ( user ) ) {
117- resolve ( ) ;
118- return ;
119- }
120- repo . users ?. canPush . push ( user ) ;
121-
122- const options = { multi : false , upsert : false } ;
109+ const repo = await getRepoById ( _id ) ;
110+ if ( ! repo ) {
111+ throw new Error ( 'Repo not found' ) ;
112+ }
113+
114+ if ( repo . users ?. canPush . includes ( user ) ) {
115+ return ;
116+ }
117+ repo . users ?. canPush . push ( user ) ;
118+
119+ const options = { multi : false , upsert : false } ;
120+
121+ return new Promise < void > ( ( resolve , reject ) => {
123122 db . update ( { _id : _id } , repo , options , ( err ) => {
124123 // ignore for code coverage as neDB rarely returns errors even for an invalid query
125124 /* istanbul ignore if */
@@ -134,21 +133,20 @@ export const addUserCanPush = async (_id: string, user: string): Promise<void> =
134133
135134export const addUserCanAuthorise = async ( _id : string , user : string ) : Promise < void > => {
136135 user = user . toLowerCase ( ) ;
137- return new Promise ( async ( resolve , reject ) => {
138- const repo = await getRepoById ( _id ) ;
139- if ( ! repo ) {
140- reject ( new Error ( 'Repo not found' ) ) ;
141- return ;
142- }
136+ const repo = await getRepoById ( _id ) ;
137+ if ( ! repo ) {
138+ throw new Error ( 'Repo not found' ) ;
139+ }
143140
144- if ( repo . users . canAuthorise . includes ( user ) ) {
145- resolve ( ) ;
146- return ;
147- }
141+ if ( repo . users . canAuthorise . includes ( user ) ) {
142+ return ;
143+ }
148144
149- repo . users . canAuthorise . push ( user ) ;
145+ repo . users . canAuthorise . push ( user ) ;
150146
151- const options = { multi : false , upsert : false } ;
147+ const options = { multi : false , upsert : false } ;
148+
149+ return new Promise ( ( resolve , reject ) => {
152150 db . update ( { _id : _id } , repo , options , ( err ) => {
153151 // ignore for code coverage as neDB rarely returns errors even for an invalid query
154152 /* istanbul ignore if */
@@ -163,16 +161,16 @@ export const addUserCanAuthorise = async (_id: string, user: string): Promise<vo
163161
164162export const removeUserCanAuthorise = async ( _id : string , user : string ) : Promise < void > => {
165163 user = user . toLowerCase ( ) ;
166- return new Promise ( async ( resolve , reject ) => {
167- const repo = await getRepoById ( _id ) ;
168- if ( ! repo ) {
169- reject ( new Error ( 'Repo not found' ) ) ;
170- return ;
171- }
164+ const repo = await getRepoById ( _id ) ;
165+ if ( ! repo ) {
166+ throw new Error ( 'Repo not found' ) ;
167+ }
172168
173- repo . users . canAuthorise = repo . users . canAuthorise . filter ( ( x : string ) => x != user ) ;
169+ repo . users . canAuthorise = repo . users . canAuthorise . filter ( ( x : string ) => x != user ) ;
174170
175- const options = { multi : false , upsert : false } ;
171+ const options = { multi : false , upsert : false } ;
172+
173+ return new Promise < void > ( ( resolve , reject ) => {
176174 db . update ( { _id : _id } , repo , options , ( err ) => {
177175 // ignore for code coverage as neDB rarely returns errors even for an invalid query
178176 /* istanbul ignore if */
@@ -187,16 +185,16 @@ export const removeUserCanAuthorise = async (_id: string, user: string): Promise
187185
188186export const removeUserCanPush = async ( _id : string , user : string ) : Promise < void > => {
189187 user = user . toLowerCase ( ) ;
190- return new Promise ( async ( resolve , reject ) => {
191- const repo = await getRepoById ( _id ) ;
192- if ( ! repo ) {
193- reject ( new Error ( 'Repo not found' ) ) ;
194- return ;
195- }
188+ const repo = await getRepoById ( _id ) ;
189+ if ( ! repo ) {
190+ throw new Error ( 'Repo not found' ) ;
191+ }
192+
193+ repo . users . canPush = repo . users . canPush . filter ( ( x ) => x != user ) ;
196194
197- repo . users . canPush = repo . users . canPush . filter ( ( x ) => x != user ) ;
195+ const options = { multi : false , upsert : false } ;
198196
199- const options = { multi : false , upsert : false } ;
197+ return new Promise < void > ( ( resolve , reject ) => {
200198 db . update ( { _id : _id } , repo , options , ( err ) => {
201199 // ignore for code coverage as neDB rarely returns errors even for an invalid query
202200 /* istanbul ignore if */
0 commit comments