Skip to content

Commit e14883c

Browse files
authored
Add models for repo analysis and cognitive tests
Added new data models for repository analysis and cognitive tests.
1 parent f292d72 commit e14883c

File tree

1 file changed

+26
-1
lines changed

1 file changed

+26
-1
lines changed

app/schemas.py

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
from pydantic import BaseModel, EmailStr
2-
from typing import Optional
2+
from typing import Optional, Dict
33

44
class UserCreate(BaseModel):
55
email: EmailStr
66
full_name: Optional[str]
77
password: str
88

9+
910
class UserOut(BaseModel):
1011
id: int
1112
email: EmailStr
@@ -14,3 +15,27 @@ class UserOut(BaseModel):
1415

1516
class Config:
1617
orm_mode = True
18+
19+
class RepoData(BaseModel):
20+
num_languages: int
21+
avg_function_length: float
22+
num_repos: int
23+
commit_frequency: int
24+
25+
26+
class CognitiveTest(BaseModel):
27+
abstraction: int
28+
debugging: int
29+
system_design: int
30+
optimization: int
31+
32+
33+
class AnalysisInput(BaseModel):
34+
repo_data: RepoData
35+
cognitive_test: CognitiveTest
36+
37+
38+
class AnalysisOutput(BaseModel):
39+
technical_score: float
40+
cognitive_profile: Dict
41+
recommended_career_path: str

0 commit comments

Comments
 (0)