File tree Expand file tree Collapse file tree 2 files changed +14
-13
lines changed
Expand file tree Collapse file tree 2 files changed +14
-13
lines changed Original file line number Diff line number Diff line change @@ -1406,9 +1406,10 @@ pub fn following(req: &mut Request) -> CargoResult<Response> {
14061406// this information already, but ember is definitely requesting it
14071407pub fn versions ( req : & mut Request ) -> CargoResult < Response > {
14081408 let crate_name = & req. params ( ) [ "crate_id" ] ;
1409- let tx = req. tx ( ) ?;
1410- let krate = Crate :: find_by_name ( tx, crate_name) ?;
1411- let versions = krate. versions ( tx) ?;
1409+ let conn = req. db_conn ( ) ?;
1410+ let krate = Crate :: by_name ( crate_name) . first :: < Crate > ( & * conn) ?;
1411+ let mut versions = Version :: belonging_to ( & krate) . load :: < Version > ( & * conn) ?;
1412+ versions. sort_by ( |a, b| b. num . cmp ( & a. num ) ) ;
14121413 let versions = versions
14131414 . into_iter ( )
14141415 . map ( |v| v. encodable ( crate_name) )
Original file line number Diff line number Diff line change @@ -410,16 +410,16 @@ fn show() {
410410fn versions ( ) {
411411 let ( _b, app, middle) = :: app ( ) ;
412412
413- let v100 = semver :: Version :: parse ( "1.0.0" ) . unwrap ( ) ;
414- let v050 = semver :: Version :: parse ( "0.5.0" ) . unwrap ( ) ;
415- let v051 = semver :: Version :: parse ( "0.5.1" ) . unwrap ( ) ;
416-
417- let mut req = :: req ( app , Method :: Get , "/api/v1/crates/ foo_versions/versions" ) ;
418- :: mock_user ( & mut req , :: user ( "foo" ) ) ;
419-
420- :: mock_crate_vers ( & mut req , :: krate ( "foo_versions" ) , & v051 ) ;
421- :: mock_crate_vers ( & mut req , :: krate ( "foo_versions" ) , & v100 ) ;
422- :: mock_crate_vers ( & mut req , :: krate ( "foo_versions" ) , & v050 ) ;
413+ let mut req = :: req ( app . clone ( ) , Method :: Get , "/api/v1/crates/foo_versions/versions" ) ;
414+ {
415+ let conn = app . diesel_database . get ( ) . unwrap ( ) ;
416+ let u = :: new_user ( "foo" ) . create_or_update ( & conn ) . unwrap ( ) ;
417+ :: CrateBuilder :: new ( " foo_versions" , u . id )
418+ . version ( "0.5.1" )
419+ . version ( "1.0.0" )
420+ . version ( "0.5.0" )
421+ . expect_build ( & conn ) ;
422+ }
423423
424424 let mut response = ok_resp ! ( middle. call( & mut req) ) ;
425425 let json: VersionsList = :: json ( & mut response) ;
You can’t perform that action at this time.
0 commit comments