Skip to content

Commit 1ad6af6

Browse files
committed
WIP: Add test that token allows creating new crate
1 parent 0e782fb commit 1ad6af6

File tree

2 files changed

+40
-0
lines changed

2 files changed

+40
-0
lines changed
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
===REQUEST 339
2+
PUT http://alexcrichton-test.s3.amazonaws.com/crates/foo_new/foo_new-1.0.0.crate HTTP/1.1
3+
Accept: */*
4+
Proxy-Connection: Keep-Alive
5+
Authorization: AWS AKIAJF3GEK7N44BACDZA:GDxGb6r3SIqo9wXuzHrgMNWekwk=
6+
Content-Length: 0
7+
Host: alexcrichton-test.s3.amazonaws.com
8+
Content-Type: application/x-tar
9+
Date: Sun, 28 Jun 2015 14:07:17 -0700
10+
11+
12+
===RESPONSE 258
13+
HTTP/1.1 200
14+
x-amz-request-id: CB0E925D8E3AB3E8
15+
x-amz-id-2: SiaMwszM1p2TzXlLauvZ6kRKcUCg7HoyBW29vts42w9ArrLwkJWl8vuvPuGFkpM6XGH+YXN852g=
16+
date: Sun, 28 Jun 2015 21:07:51 GMT
17+
etag: "d41d8cd98f00b204e9800998ecf8427e"
18+
content-length: 0
19+
server: AmazonS3
20+
21+

src/tests/krate.rs

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ use cargo_registry::download::EncodableVersionDownload;
1515
use cargo_registry::git;
1616
use cargo_registry::keyword::{Keyword, EncodableKeyword};
1717
use cargo_registry::krate::{Crate, EncodableCrate, MAX_NAME_LENGTH};
18+
use cargo_registry::token::ApiToken;
1819
use cargo_registry::upload as u;
1920
use cargo_registry::user::EncodableUser;
2021
use cargo_registry::version::EncodableVersion;
@@ -418,6 +419,24 @@ fn new_krate() {
418419
assert_eq!(json.krate.max_version, "1.0.0");
419420
}
420421

422+
#[test]
423+
fn new_krate_with_token() {
424+
let (_b, app, middle) = ::app();
425+
let mut req = ::new_req(app.clone(), "foo_new", "1.0.0");
426+
427+
{
428+
let conn = t!(app.diesel_database.get());
429+
let user = t!(::new_user("foo").create_or_update(&conn));
430+
let token = t!(ApiToken::insert(&conn, user.id, "bar"));
431+
req.header("Authorization", &token.token);
432+
}
433+
434+
let mut response = ok_resp!(middle.call(&mut req));
435+
let json: GoodCrate = ::json(&mut response);
436+
assert_eq!(json.krate.name, "foo_new");
437+
assert_eq!(json.krate.max_version, "1.0.0");
438+
}
439+
421440
#[test]
422441
fn new_krate_with_reserved_name() {
423442
fn test_bad_name(name: &str) {

0 commit comments

Comments
 (0)