Skip to content

Commit c63f0b2

Browse files
committed
mirage/crates: Fix error handling for GET /api/v1/crates/:id/:version/dependencies request handler
1 parent 2a9aae2 commit c63f0b2

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

mirage/route-handlers/crates.js

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -77,10 +77,15 @@ export function register(server) {
7777
});
7878

7979
server.get('/api/v1/crates/:crate_id/:version_num/dependencies', (schema, request) => {
80-
let crate = request.params.crate_id;
80+
let crateId = request.params.crate_id;
81+
let crate = schema.crates.find(crateId);
82+
if (!crate) return notFound();
83+
8184
let num = request.params.version_num;
82-
let version_id = schema.versions.findBy({ crate, num }).id;
83-
return schema.dependencies.where({ version_id });
85+
let version = schema.versions.findBy({ crate: crateId, num });
86+
if (!version) return { errors: [{ detail: `crate \`${crateId}\` does not have a version \`${num}\`` }] };
87+
88+
return schema.dependencies.where({ version_id: version.id });
8489
});
8590

8691
server.get('/api/v1/crates/:crate_id/:version_num/downloads', function(schema, request) {

0 commit comments

Comments
 (0)