mirror of
https://github.com/tdurieux/anonymous_github.git
synced 2026-11-14 00:07:00 +01:00
2601 lines
70 KiB
JSON
2601 lines
70 KiB
JSON
[
|
|
{
|
|
"name": "repos/empty",
|
|
"kind": "repos",
|
|
"rows": [],
|
|
"expected": "repoId",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"repositories-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "repos/minimal",
|
|
"kind": "repos",
|
|
"rows": [
|
|
{}
|
|
],
|
|
"expected": "repoId,status,statusMessage,anonymizeDate,lastView,pageView,sourceRepository,sourceBranch,sourceCommit,conference,storage,terms\n,,,,,0,,,,,0,0",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"repositories-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "repos/rich",
|
|
"kind": "repos",
|
|
"rows": [
|
|
{
|
|
"repoId": "sample",
|
|
"username": "sample",
|
|
"conferenceID": "sample",
|
|
"name": "Conference",
|
|
"status": "ready",
|
|
"statusMessage": "Message",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "repoId,status,statusMessage,anonymizeDate,lastView,pageView,sourceRepository,sourceBranch,sourceCommit,conference,storage,terms\nsample,ready,Message,2029-04-03T01:02:03.456Z,2029-05-01T00:00:00.000Z,1.5,team/subgroup/project,main,opaque:revision,Conference,2.5,2",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"repositories-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "repos/text/\" leading\"",
|
|
"kind": "repos",
|
|
"rows": [
|
|
{
|
|
"repoId": " leading",
|
|
"username": " leading",
|
|
"conferenceID": "sample",
|
|
"name": " leading",
|
|
"status": "ready",
|
|
"statusMessage": " leading",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "repoId,status,statusMessage,anonymizeDate,lastView,pageView,sourceRepository,sourceBranch,sourceCommit,conference,storage,terms\n leading,ready, leading,2029-04-03T01:02:03.456Z,2029-05-01T00:00:00.000Z,1.5,team/subgroup/project,main,opaque:revision,Conference,2.5,2",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"repositories-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "repos/text/\"trailing \"",
|
|
"kind": "repos",
|
|
"rows": [
|
|
{
|
|
"repoId": "trailing ",
|
|
"username": "trailing ",
|
|
"conferenceID": "sample",
|
|
"name": "trailing ",
|
|
"status": "ready",
|
|
"statusMessage": "trailing ",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "repoId,status,statusMessage,anonymizeDate,lastView,pageView,sourceRepository,sourceBranch,sourceCommit,conference,storage,terms\ntrailing ,ready,trailing ,2029-04-03T01:02:03.456Z,2029-05-01T00:00:00.000Z,1.5,team/subgroup/project,main,opaque:revision,Conference,2.5,2",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"repositories-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "repos/text/\"a,b\"",
|
|
"kind": "repos",
|
|
"rows": [
|
|
{
|
|
"repoId": "a,b",
|
|
"username": "a,b",
|
|
"conferenceID": "sample",
|
|
"name": "a,b",
|
|
"status": "ready",
|
|
"statusMessage": "a,b",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "repoId,status,statusMessage,anonymizeDate,lastView,pageView,sourceRepository,sourceBranch,sourceCommit,conference,storage,terms\n\"a,b\",ready,\"a,b\",2029-04-03T01:02:03.456Z,2029-05-01T00:00:00.000Z,1.5,team/subgroup/project,main,opaque:revision,Conference,2.5,2",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"repositories-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "repos/text/\"say \\\"hi\\\"\"",
|
|
"kind": "repos",
|
|
"rows": [
|
|
{
|
|
"repoId": "say \"hi\"",
|
|
"username": "say \"hi\"",
|
|
"conferenceID": "sample",
|
|
"name": "say \"hi\"",
|
|
"status": "ready",
|
|
"statusMessage": "say \"hi\"",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "repoId,status,statusMessage,anonymizeDate,lastView,pageView,sourceRepository,sourceBranch,sourceCommit,conference,storage,terms\n\"say \"\"hi\"\"\",ready,\"say \"\"hi\"\"\",2029-04-03T01:02:03.456Z,2029-05-01T00:00:00.000Z,1.5,team/subgroup/project,main,opaque:revision,Conference,2.5,2",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"repositories-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "repos/text/\"line\\nnext\"",
|
|
"kind": "repos",
|
|
"rows": [
|
|
{
|
|
"repoId": "line\nnext",
|
|
"username": "line\nnext",
|
|
"conferenceID": "sample",
|
|
"name": "line\nnext",
|
|
"status": "ready",
|
|
"statusMessage": "line\nnext",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "repoId,status,statusMessage,anonymizeDate,lastView,pageView,sourceRepository,sourceBranch,sourceCommit,conference,storage,terms\n\"line\nnext\",ready,\"line\nnext\",2029-04-03T01:02:03.456Z,2029-05-01T00:00:00.000Z,1.5,team/subgroup/project,main,opaque:revision,Conference,2.5,2",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"repositories-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "repos/text/\"line\\rnext\"",
|
|
"kind": "repos",
|
|
"rows": [
|
|
{
|
|
"repoId": "line\rnext",
|
|
"username": "line\rnext",
|
|
"conferenceID": "sample",
|
|
"name": "line\rnext",
|
|
"status": "ready",
|
|
"statusMessage": "line\rnext",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "repoId,status,statusMessage,anonymizeDate,lastView,pageView,sourceRepository,sourceBranch,sourceCommit,conference,storage,terms\n\"line\rnext\",ready,\"line\rnext\",2029-04-03T01:02:03.456Z,2029-05-01T00:00:00.000Z,1.5,team/subgroup/project,main,opaque:revision,Conference,2.5,2",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"repositories-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "repos/text/\"back\\\\slash\"",
|
|
"kind": "repos",
|
|
"rows": [
|
|
{
|
|
"repoId": "back\\slash",
|
|
"username": "back\\slash",
|
|
"conferenceID": "sample",
|
|
"name": "back\\slash",
|
|
"status": "ready",
|
|
"statusMessage": "back\\slash",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "repoId,status,statusMessage,anonymizeDate,lastView,pageView,sourceRepository,sourceBranch,sourceCommit,conference,storage,terms\nback\\slash,ready,back\\slash,2029-04-03T01:02:03.456Z,2029-05-01T00:00:00.000Z,1.5,team/subgroup/project,main,opaque:revision,Conference,2.5,2",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"repositories-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "repos/text/\"é😀\"",
|
|
"kind": "repos",
|
|
"rows": [
|
|
{
|
|
"repoId": "é😀",
|
|
"username": "é😀",
|
|
"conferenceID": "sample",
|
|
"name": "é😀",
|
|
"status": "ready",
|
|
"statusMessage": "é😀",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "repoId,status,statusMessage,anonymizeDate,lastView,pageView,sourceRepository,sourceBranch,sourceCommit,conference,storage,terms\né😀,ready,é😀,2029-04-03T01:02:03.456Z,2029-05-01T00:00:00.000Z,1.5,team/subgroup/project,main,opaque:revision,Conference,2.5,2",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"repositories-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "repos/date/0001-01-01T00:00:00.000Z",
|
|
"kind": "repos",
|
|
"rows": [
|
|
{
|
|
"repoId": "sample",
|
|
"username": "sample",
|
|
"conferenceID": "sample",
|
|
"name": "Conference",
|
|
"status": "ready",
|
|
"statusMessage": "Message",
|
|
"anonymizeDate": "0001-01-01T00:00:00.000Z",
|
|
"lastView": "0001-01-01T00:00:00.000Z",
|
|
"dateOfEntry": "0001-01-01T00:00:00.000Z",
|
|
"startDate": "0001-01-01T00:00:00.000Z",
|
|
"endDate": "0001-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "repoId,status,statusMessage,anonymizeDate,lastView,pageView,sourceRepository,sourceBranch,sourceCommit,conference,storage,terms\nsample,ready,Message,0001-01-01T00:00:00.000Z,0001-01-01T00:00:00.000Z,1.5,team/subgroup/project,main,opaque:revision,Conference,2.5,2",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"repositories-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "repos/date/2029-01-01T01:00:00+01:00",
|
|
"kind": "repos",
|
|
"rows": [
|
|
{
|
|
"repoId": "sample",
|
|
"username": "sample",
|
|
"conferenceID": "sample",
|
|
"name": "Conference",
|
|
"status": "ready",
|
|
"statusMessage": "Message",
|
|
"anonymizeDate": "2029-01-01T01:00:00+01:00",
|
|
"lastView": "2029-01-01T01:00:00+01:00",
|
|
"dateOfEntry": "2029-01-01T01:00:00+01:00",
|
|
"startDate": "2029-01-01T01:00:00+01:00",
|
|
"endDate": "2029-01-01T01:00:00+01:00",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "repoId,status,statusMessage,anonymizeDate,lastView,pageView,sourceRepository,sourceBranch,sourceCommit,conference,storage,terms\nsample,ready,Message,2029-01-01T00:00:00.000Z,2029-01-01T00:00:00.000Z,1.5,team/subgroup/project,main,opaque:revision,Conference,2.5,2",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"repositories-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "repos/date/null",
|
|
"kind": "repos",
|
|
"rows": [
|
|
{
|
|
"repoId": "sample",
|
|
"username": "sample",
|
|
"conferenceID": "sample",
|
|
"name": "Conference",
|
|
"status": "ready",
|
|
"statusMessage": "Message",
|
|
"anonymizeDate": null,
|
|
"lastView": null,
|
|
"dateOfEntry": null,
|
|
"startDate": null,
|
|
"endDate": null,
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "repoId,status,statusMessage,anonymizeDate,lastView,pageView,sourceRepository,sourceBranch,sourceCommit,conference,storage,terms\nsample,ready,Message,,,1.5,team/subgroup/project,main,opaque:revision,Conference,2.5,2",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"repositories-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "repos/multiple",
|
|
"kind": "repos",
|
|
"rows": [
|
|
{
|
|
"repoId": "sample",
|
|
"username": "sample",
|
|
"conferenceID": "sample",
|
|
"name": "Conference",
|
|
"status": "ready",
|
|
"statusMessage": "Message",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
},
|
|
{},
|
|
{
|
|
"repoId": "sample",
|
|
"username": "sample",
|
|
"conferenceID": "sample",
|
|
"name": "Conference",
|
|
"status": "ready",
|
|
"statusMessage": "Message",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1e+21,
|
|
"size": {
|
|
"storage": 100000000000000000000
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 1e-7,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "repoId,status,statusMessage,anonymizeDate,lastView,pageView,sourceRepository,sourceBranch,sourceCommit,conference,storage,terms\nsample,ready,Message,2029-04-03T01:02:03.456Z,2029-05-01T00:00:00.000Z,1.5,team/subgroup/project,main,opaque:revision,Conference,2.5,2\n,,,,,0,,,,,0,0\nsample,ready,Message,2029-04-03T01:02:03.456Z,2029-05-01T00:00:00.000Z,1e+21,team/subgroup/project,main,opaque:revision,Conference,100000000000000000000,2",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"repositories-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "users/empty",
|
|
"kind": "users",
|
|
"rows": [],
|
|
"expected": "username,email,status,isAdmin,repoCount,dateOfEntry",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"users-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "users/minimal",
|
|
"kind": "users",
|
|
"rows": [
|
|
{}
|
|
],
|
|
"expected": "username,email,status,isAdmin,repoCount,dateOfEntry\n,,,false,0,",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"users-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "users/rich",
|
|
"kind": "users",
|
|
"rows": [
|
|
{
|
|
"repoId": "sample",
|
|
"username": "sample",
|
|
"conferenceID": "sample",
|
|
"name": "Conference",
|
|
"status": "ready",
|
|
"statusMessage": "Message",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "username,email,status,isAdmin,repoCount,dateOfEntry\nsample,chair@example.test,ready,true,2,2028-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"users-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "users/text/\" leading\"",
|
|
"kind": "users",
|
|
"rows": [
|
|
{
|
|
"repoId": " leading",
|
|
"username": " leading",
|
|
"conferenceID": "sample",
|
|
"name": " leading",
|
|
"status": "ready",
|
|
"statusMessage": " leading",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "username,email,status,isAdmin,repoCount,dateOfEntry\n leading,chair@example.test,ready,true,2,2028-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"users-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "users/text/\"trailing \"",
|
|
"kind": "users",
|
|
"rows": [
|
|
{
|
|
"repoId": "trailing ",
|
|
"username": "trailing ",
|
|
"conferenceID": "sample",
|
|
"name": "trailing ",
|
|
"status": "ready",
|
|
"statusMessage": "trailing ",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "username,email,status,isAdmin,repoCount,dateOfEntry\ntrailing ,chair@example.test,ready,true,2,2028-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"users-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "users/text/\"a,b\"",
|
|
"kind": "users",
|
|
"rows": [
|
|
{
|
|
"repoId": "a,b",
|
|
"username": "a,b",
|
|
"conferenceID": "sample",
|
|
"name": "a,b",
|
|
"status": "ready",
|
|
"statusMessage": "a,b",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "username,email,status,isAdmin,repoCount,dateOfEntry\n\"a,b\",chair@example.test,ready,true,2,2028-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"users-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "users/text/\"say \\\"hi\\\"\"",
|
|
"kind": "users",
|
|
"rows": [
|
|
{
|
|
"repoId": "say \"hi\"",
|
|
"username": "say \"hi\"",
|
|
"conferenceID": "sample",
|
|
"name": "say \"hi\"",
|
|
"status": "ready",
|
|
"statusMessage": "say \"hi\"",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "username,email,status,isAdmin,repoCount,dateOfEntry\n\"say \"\"hi\"\"\",chair@example.test,ready,true,2,2028-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"users-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "users/text/\"line\\nnext\"",
|
|
"kind": "users",
|
|
"rows": [
|
|
{
|
|
"repoId": "line\nnext",
|
|
"username": "line\nnext",
|
|
"conferenceID": "sample",
|
|
"name": "line\nnext",
|
|
"status": "ready",
|
|
"statusMessage": "line\nnext",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "username,email,status,isAdmin,repoCount,dateOfEntry\n\"line\nnext\",chair@example.test,ready,true,2,2028-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"users-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "users/text/\"line\\rnext\"",
|
|
"kind": "users",
|
|
"rows": [
|
|
{
|
|
"repoId": "line\rnext",
|
|
"username": "line\rnext",
|
|
"conferenceID": "sample",
|
|
"name": "line\rnext",
|
|
"status": "ready",
|
|
"statusMessage": "line\rnext",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "username,email,status,isAdmin,repoCount,dateOfEntry\n\"line\rnext\",chair@example.test,ready,true,2,2028-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"users-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "users/text/\"back\\\\slash\"",
|
|
"kind": "users",
|
|
"rows": [
|
|
{
|
|
"repoId": "back\\slash",
|
|
"username": "back\\slash",
|
|
"conferenceID": "sample",
|
|
"name": "back\\slash",
|
|
"status": "ready",
|
|
"statusMessage": "back\\slash",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "username,email,status,isAdmin,repoCount,dateOfEntry\nback\\slash,chair@example.test,ready,true,2,2028-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"users-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "users/text/\"é😀\"",
|
|
"kind": "users",
|
|
"rows": [
|
|
{
|
|
"repoId": "é😀",
|
|
"username": "é😀",
|
|
"conferenceID": "sample",
|
|
"name": "é😀",
|
|
"status": "ready",
|
|
"statusMessage": "é😀",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "username,email,status,isAdmin,repoCount,dateOfEntry\né😀,chair@example.test,ready,true,2,2028-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"users-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "users/date/0001-01-01T00:00:00.000Z",
|
|
"kind": "users",
|
|
"rows": [
|
|
{
|
|
"repoId": "sample",
|
|
"username": "sample",
|
|
"conferenceID": "sample",
|
|
"name": "Conference",
|
|
"status": "ready",
|
|
"statusMessage": "Message",
|
|
"anonymizeDate": "0001-01-01T00:00:00.000Z",
|
|
"lastView": "0001-01-01T00:00:00.000Z",
|
|
"dateOfEntry": "0001-01-01T00:00:00.000Z",
|
|
"startDate": "0001-01-01T00:00:00.000Z",
|
|
"endDate": "0001-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "username,email,status,isAdmin,repoCount,dateOfEntry\nsample,chair@example.test,ready,true,2,0001-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"users-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "users/date/2029-01-01T01:00:00+01:00",
|
|
"kind": "users",
|
|
"rows": [
|
|
{
|
|
"repoId": "sample",
|
|
"username": "sample",
|
|
"conferenceID": "sample",
|
|
"name": "Conference",
|
|
"status": "ready",
|
|
"statusMessage": "Message",
|
|
"anonymizeDate": "2029-01-01T01:00:00+01:00",
|
|
"lastView": "2029-01-01T01:00:00+01:00",
|
|
"dateOfEntry": "2029-01-01T01:00:00+01:00",
|
|
"startDate": "2029-01-01T01:00:00+01:00",
|
|
"endDate": "2029-01-01T01:00:00+01:00",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "username,email,status,isAdmin,repoCount,dateOfEntry\nsample,chair@example.test,ready,true,2,2029-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"users-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "users/date/null",
|
|
"kind": "users",
|
|
"rows": [
|
|
{
|
|
"repoId": "sample",
|
|
"username": "sample",
|
|
"conferenceID": "sample",
|
|
"name": "Conference",
|
|
"status": "ready",
|
|
"statusMessage": "Message",
|
|
"anonymizeDate": null,
|
|
"lastView": null,
|
|
"dateOfEntry": null,
|
|
"startDate": null,
|
|
"endDate": null,
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "username,email,status,isAdmin,repoCount,dateOfEntry\nsample,chair@example.test,ready,true,2,",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"users-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "users/multiple",
|
|
"kind": "users",
|
|
"rows": [
|
|
{
|
|
"repoId": "sample",
|
|
"username": "sample",
|
|
"conferenceID": "sample",
|
|
"name": "Conference",
|
|
"status": "ready",
|
|
"statusMessage": "Message",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
},
|
|
{},
|
|
{
|
|
"repoId": "sample",
|
|
"username": "sample",
|
|
"conferenceID": "sample",
|
|
"name": "Conference",
|
|
"status": "ready",
|
|
"statusMessage": "Message",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1e+21,
|
|
"size": {
|
|
"storage": 100000000000000000000
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 1e-7,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "username,email,status,isAdmin,repoCount,dateOfEntry\nsample,chair@example.test,ready,true,2,2028-01-01T00:00:00.000Z\n,,,false,0,\nsample,chair@example.test,ready,true,2,2028-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"users-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "conferences/empty",
|
|
"kind": "conferences",
|
|
"rows": [],
|
|
"expected": "conferenceID,name,status,price,repoCount,startDate,endDate",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"conferences-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "conferences/minimal",
|
|
"kind": "conferences",
|
|
"rows": [
|
|
{}
|
|
],
|
|
"expected": "conferenceID,name,status,price,repoCount,startDate,endDate\n,,,0,0,,",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"conferences-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "conferences/rich",
|
|
"kind": "conferences",
|
|
"rows": [
|
|
{
|
|
"repoId": "sample",
|
|
"username": "sample",
|
|
"conferenceID": "sample",
|
|
"name": "Conference",
|
|
"status": "ready",
|
|
"statusMessage": "Message",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "conferenceID,name,status,price,repoCount,startDate,endDate\nsample,Conference,ready,0.125,2,2029-01-01T00:00:00.000Z,2031-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"conferences-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "conferences/text/\" leading\"",
|
|
"kind": "conferences",
|
|
"rows": [
|
|
{
|
|
"repoId": " leading",
|
|
"username": " leading",
|
|
"conferenceID": "sample",
|
|
"name": " leading",
|
|
"status": "ready",
|
|
"statusMessage": " leading",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "conferenceID,name,status,price,repoCount,startDate,endDate\nsample, leading,ready,0.125,2,2029-01-01T00:00:00.000Z,2031-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"conferences-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "conferences/text/\"trailing \"",
|
|
"kind": "conferences",
|
|
"rows": [
|
|
{
|
|
"repoId": "trailing ",
|
|
"username": "trailing ",
|
|
"conferenceID": "sample",
|
|
"name": "trailing ",
|
|
"status": "ready",
|
|
"statusMessage": "trailing ",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "conferenceID,name,status,price,repoCount,startDate,endDate\nsample,trailing ,ready,0.125,2,2029-01-01T00:00:00.000Z,2031-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"conferences-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "conferences/text/\"a,b\"",
|
|
"kind": "conferences",
|
|
"rows": [
|
|
{
|
|
"repoId": "a,b",
|
|
"username": "a,b",
|
|
"conferenceID": "sample",
|
|
"name": "a,b",
|
|
"status": "ready",
|
|
"statusMessage": "a,b",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "conferenceID,name,status,price,repoCount,startDate,endDate\nsample,\"a,b\",ready,0.125,2,2029-01-01T00:00:00.000Z,2031-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"conferences-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "conferences/text/\"say \\\"hi\\\"\"",
|
|
"kind": "conferences",
|
|
"rows": [
|
|
{
|
|
"repoId": "say \"hi\"",
|
|
"username": "say \"hi\"",
|
|
"conferenceID": "sample",
|
|
"name": "say \"hi\"",
|
|
"status": "ready",
|
|
"statusMessage": "say \"hi\"",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "conferenceID,name,status,price,repoCount,startDate,endDate\nsample,\"say \"\"hi\"\"\",ready,0.125,2,2029-01-01T00:00:00.000Z,2031-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"conferences-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "conferences/text/\"line\\nnext\"",
|
|
"kind": "conferences",
|
|
"rows": [
|
|
{
|
|
"repoId": "line\nnext",
|
|
"username": "line\nnext",
|
|
"conferenceID": "sample",
|
|
"name": "line\nnext",
|
|
"status": "ready",
|
|
"statusMessage": "line\nnext",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "conferenceID,name,status,price,repoCount,startDate,endDate\nsample,\"line\nnext\",ready,0.125,2,2029-01-01T00:00:00.000Z,2031-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"conferences-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "conferences/text/\"line\\rnext\"",
|
|
"kind": "conferences",
|
|
"rows": [
|
|
{
|
|
"repoId": "line\rnext",
|
|
"username": "line\rnext",
|
|
"conferenceID": "sample",
|
|
"name": "line\rnext",
|
|
"status": "ready",
|
|
"statusMessage": "line\rnext",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "conferenceID,name,status,price,repoCount,startDate,endDate\nsample,\"line\rnext\",ready,0.125,2,2029-01-01T00:00:00.000Z,2031-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"conferences-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "conferences/text/\"back\\\\slash\"",
|
|
"kind": "conferences",
|
|
"rows": [
|
|
{
|
|
"repoId": "back\\slash",
|
|
"username": "back\\slash",
|
|
"conferenceID": "sample",
|
|
"name": "back\\slash",
|
|
"status": "ready",
|
|
"statusMessage": "back\\slash",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "conferenceID,name,status,price,repoCount,startDate,endDate\nsample,back\\slash,ready,0.125,2,2029-01-01T00:00:00.000Z,2031-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"conferences-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "conferences/text/\"é😀\"",
|
|
"kind": "conferences",
|
|
"rows": [
|
|
{
|
|
"repoId": "é😀",
|
|
"username": "é😀",
|
|
"conferenceID": "sample",
|
|
"name": "é😀",
|
|
"status": "ready",
|
|
"statusMessage": "é😀",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "conferenceID,name,status,price,repoCount,startDate,endDate\nsample,é😀,ready,0.125,2,2029-01-01T00:00:00.000Z,2031-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"conferences-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "conferences/date/0001-01-01T00:00:00.000Z",
|
|
"kind": "conferences",
|
|
"rows": [
|
|
{
|
|
"repoId": "sample",
|
|
"username": "sample",
|
|
"conferenceID": "sample",
|
|
"name": "Conference",
|
|
"status": "ready",
|
|
"statusMessage": "Message",
|
|
"anonymizeDate": "0001-01-01T00:00:00.000Z",
|
|
"lastView": "0001-01-01T00:00:00.000Z",
|
|
"dateOfEntry": "0001-01-01T00:00:00.000Z",
|
|
"startDate": "0001-01-01T00:00:00.000Z",
|
|
"endDate": "0001-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "conferenceID,name,status,price,repoCount,startDate,endDate\nsample,Conference,ready,0.125,2,0001-01-01T00:00:00.000Z,0001-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"conferences-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "conferences/date/2029-01-01T01:00:00+01:00",
|
|
"kind": "conferences",
|
|
"rows": [
|
|
{
|
|
"repoId": "sample",
|
|
"username": "sample",
|
|
"conferenceID": "sample",
|
|
"name": "Conference",
|
|
"status": "ready",
|
|
"statusMessage": "Message",
|
|
"anonymizeDate": "2029-01-01T01:00:00+01:00",
|
|
"lastView": "2029-01-01T01:00:00+01:00",
|
|
"dateOfEntry": "2029-01-01T01:00:00+01:00",
|
|
"startDate": "2029-01-01T01:00:00+01:00",
|
|
"endDate": "2029-01-01T01:00:00+01:00",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "conferenceID,name,status,price,repoCount,startDate,endDate\nsample,Conference,ready,0.125,2,2029-01-01T00:00:00.000Z,2029-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"conferences-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "conferences/date/null",
|
|
"kind": "conferences",
|
|
"rows": [
|
|
{
|
|
"repoId": "sample",
|
|
"username": "sample",
|
|
"conferenceID": "sample",
|
|
"name": "Conference",
|
|
"status": "ready",
|
|
"statusMessage": "Message",
|
|
"anonymizeDate": null,
|
|
"lastView": null,
|
|
"dateOfEntry": null,
|
|
"startDate": null,
|
|
"endDate": null,
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "conferenceID,name,status,price,repoCount,startDate,endDate\nsample,Conference,ready,0.125,2,,",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"conferences-2030-01-02.csv\""
|
|
}
|
|
},
|
|
{
|
|
"name": "conferences/multiple",
|
|
"kind": "conferences",
|
|
"rows": [
|
|
{
|
|
"repoId": "sample",
|
|
"username": "sample",
|
|
"conferenceID": "sample",
|
|
"name": "Conference",
|
|
"status": "ready",
|
|
"statusMessage": "Message",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1.5,
|
|
"size": {
|
|
"storage": 2.5
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 0.125,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
},
|
|
{},
|
|
{
|
|
"repoId": "sample",
|
|
"username": "sample",
|
|
"conferenceID": "sample",
|
|
"name": "Conference",
|
|
"status": "ready",
|
|
"statusMessage": "Message",
|
|
"anonymizeDate": "2029-04-03T01:02:03.456Z",
|
|
"lastView": "2029-05-01T00:00:00.000Z",
|
|
"dateOfEntry": "2028-01-01T00:00:00.000Z",
|
|
"startDate": "2029-01-01T00:00:00.000Z",
|
|
"endDate": "2031-01-01T00:00:00.000Z",
|
|
"pageView": 1e+21,
|
|
"size": {
|
|
"storage": 100000000000000000000
|
|
},
|
|
"source": {
|
|
"repositoryName": "team/subgroup/project",
|
|
"branch": "main",
|
|
"commit": "opaque:revision",
|
|
"accessToken": "synthetic-secret"
|
|
},
|
|
"options": {
|
|
"terms": [
|
|
"one",
|
|
"two"
|
|
]
|
|
},
|
|
"emails": [
|
|
{
|
|
"email": "chair@example.test"
|
|
}
|
|
],
|
|
"isAdmin": true,
|
|
"price": 1e-7,
|
|
"repositories": [
|
|
{
|
|
"id": "one"
|
|
},
|
|
{
|
|
"id": "two"
|
|
}
|
|
],
|
|
"conference": "Conference",
|
|
"apiTokens": [
|
|
{
|
|
"tokenHash": "synthetic-secret"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"expected": "conferenceID,name,status,price,repoCount,startDate,endDate\nsample,Conference,ready,0.125,2,2029-01-01T00:00:00.000Z,2031-01-01T00:00:00.000Z\n,,,0,0,,\nsample,Conference,ready,1e-7,2,2029-01-01T00:00:00.000Z,2031-01-01T00:00:00.000Z",
|
|
"headers": {
|
|
"Content-Type": "text/csv; charset=utf-8",
|
|
"Content-Disposition": "attachment; filename=\"conferences-2030-01-02.csv\""
|
|
}
|
|
}
|
|
]
|