Skip to content

Commit 85753d3

Browse files
committed
Added exercise names file and modified exercise.py to read exercise names from file instead of using empty directories,
1 parent d0a9be9 commit 85753d3

2 files changed

Lines changed: 170 additions & 2 deletions

File tree

‎lib/common/exercise-names.txt‎

Lines changed: 163 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,163 @@
1+
accumulate
2+
acronym
3+
affine-cipher
4+
all-your-base
5+
allergies
6+
alphametics
7+
anagram
8+
armstrong-numbers
9+
atbash-cipher
10+
bank-account
11+
beer-song
12+
binary
13+
binary-search
14+
binary-search-tree
15+
black-jack
16+
bob
17+
book-store
18+
bottle-song
19+
bowling
20+
camicia
21+
card-games
22+
cater-waiter
23+
chaitanas-colossal-coaster
24+
change
25+
circular-buffer
26+
clock
27+
collatz-conjecture
28+
common
29+
complex-numbers
30+
connect
31+
crypto-square
32+
currency-exchange
33+
custom-set
34+
darts
35+
diamond
36+
difference-of-squares
37+
diffie-hellman
38+
dnd-character
39+
dominoes
40+
dot-dsl
41+
electric-bill
42+
eliuds-eggs
43+
ellens-alien-game
44+
error-handling
45+
etl
46+
flatten-array
47+
flower-field
48+
food-chain
49+
forth
50+
game-of-life
51+
ghost-gobble-arcade-game
52+
gigasecond
53+
go-counting
54+
grade-school
55+
grains
56+
grep
57+
guidos-gorgeous-lasagna
58+
hamming
59+
hangman
60+
hexadecimal
61+
high-scores
62+
house
63+
inventory-management
64+
isbn-verifier
65+
isogram
66+
killer-sudoku-helper
67+
kindergarten-garden
68+
knapsack
69+
largest-series-product
70+
leap
71+
ledger
72+
line-up
73+
linked-list
74+
list-ops
75+
little-sisters-essay
76+
little-sisters-vocab
77+
locomotive-engineer
78+
log-levels
79+
luhn
80+
making-the-grade
81+
markdown
82+
matching-brackets
83+
matrix
84+
mecha-munch-management
85+
meetup
86+
meltdown-mitigation
87+
minesweeper
88+
nth-prime
89+
ocr-numbers
90+
octal
91+
paasio
92+
palindrome-products
93+
pangram
94+
pascals-triangle
95+
perfect-numbers
96+
phone-number
97+
pig-latin
98+
plane-tickets
99+
point-mutations
100+
poker
101+
pop-count
102+
pov
103+
pretty-leaflet
104+
prime-factors
105+
processing-logs
106+
protein-translation
107+
proverb
108+
pythagorean-triplet
109+
queen-attack
110+
rail-fence-cipher
111+
raindrops
112+
rational-numbers
113+
react
114+
rectangles
115+
relative-distance
116+
resistor-color
117+
resistor-color-duo
118+
resistor-color-expert
119+
resistor-color-trio
120+
rest-api
121+
restaurant-rozalynn
122+
reverse-string
123+
rna-transcription
124+
robot-name
125+
robot-simulator
126+
roman-numerals
127+
rotational-cipher
128+
run-length-encoding
129+
saddle-points
130+
satellite
131+
say
132+
scale-generator
133+
scrabble-score
134+
secret-handshake
135+
series
136+
sgf-parsing
137+
sieve
138+
simple-cipher
139+
simple-linked-list
140+
space-age
141+
spiral-matrix
142+
square-root
143+
state-of-tic-tac-toe
144+
strain
145+
sublist
146+
sum-of-multiples
147+
swift-scheduling
148+
tisbury-treasure-hunt
149+
tournament
150+
transpose
151+
tree-building
152+
triangle
153+
trinary
154+
twelve-days
155+
two-bucket
156+
two-fer
157+
variable-length-quantity
158+
word-count
159+
word-search
160+
wordy
161+
yacht
162+
zebra-puzzle
163+
zipper

‎lib/common/exercise.py‎

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,13 @@
1414
# no specific one is found in the directory.
1515
ANALYZERS = {analyzer.parent.name: analyzer for analyzer in LIBRARY.glob("*/analyzer.py")}
1616

17-
for directory in LIBRARY.glob("*/"):
18-
ANALYZERS.setdefault(directory.name, Path('/opt/analyzer/lib/common/generic_analyzer/analyzer.py'))
17+
file_path = Path('/opt/analyzer/lib/common/exercise-names.txt')
18+
19+
with open(file_path, 'r') as file:
20+
content = file.read().splitlines()
21+
22+
for exercise in content:
23+
ANALYZERS.setdefault(exercise, Path('/opt/analyzer/lib/common/generic_analyzer/analyzer.py'))
1924

2025

2126
class ExerciseError(Exception):

0 commit comments

Comments
 (0)