File tree 2 files changed +42
-1
lines changed
2 files changed +42
-1
lines changed Original file line number Diff line number Diff line change @@ -115,6 +115,47 @@ def test_single_project_doc(db_session):
115
115
]
116
116
117
117
118
+ def test_project_docs_empty (db_session ):
119
+ projects = [ProjectFactory .create () for _ in range (2 )]
120
+ releases = {
121
+ p : sorted (
122
+ [ReleaseFactory .create (project = p ) for _ in range (3 )],
123
+ key = lambda r : packaging .version .parse (r .version ),
124
+ reverse = True ,
125
+ )
126
+ for p in projects
127
+ }
128
+
129
+ valid_project = projects [0 ]
130
+ for r in releases [valid_project ]:
131
+ r .files = [
132
+ FileFactory .create (
133
+ release = r ,
134
+ filename = "{}-{}.tar.gz" .format (valid_project .name , r .version ),
135
+ python_version = "source" ,
136
+ )
137
+ ]
138
+
139
+ assert list (_project_docs (db_session )) == [
140
+ {
141
+ "_id" : p .normalized_name ,
142
+ "_type" : "doc" ,
143
+ "_source" : {
144
+ "created" : p .created ,
145
+ "name" : p .name ,
146
+ "normalized_name" : p .normalized_name ,
147
+ "version" : [r .version for r in prs ],
148
+ "latest_version" : first (prs , key = lambda r : not r .is_prerelease ).version ,
149
+ "description" : first (
150
+ prs , key = lambda r : not r .is_prerelease
151
+ ).description .raw ,
152
+ },
153
+ }
154
+ for p , prs in sorted (releases .items (), key = lambda x : x [0 ].id )
155
+ if p == valid_project
156
+ ]
157
+
158
+
118
159
class FakeESIndices :
119
160
def __init__ (self ):
120
161
self .indices = {}
Original file line number Diff line number Diff line change 15
15
import hashlib
16
16
import hmac
17
17
import logging
18
+ import posixpath
18
19
import secrets
19
20
import urllib .parse
20
21
import uuid
21
22
22
- import posixpath
23
23
import requests
24
24
25
25
from passlib .context import CryptContext
You can’t perform that action at this time.
0 commit comments