Skip to content

Commit 83ad209

Browse files
Revert "Revert "lets see""
This reverts commit 5238e6a.
1 parent 5238e6a commit 83ad209

File tree

3 files changed

+158
-111
lines changed

3 files changed

+158
-111
lines changed

tests/taxonomy/models.py

+1-3
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,7 @@
44

55

66
class Taxonomy(TreeModel):
7-
label_size = 2
8-
97
name = models.TextField()
108

119
def __str__(self):
12-
return '{}: {}'.format(self.path, self.name)
10+
return f"{self.path}: {self.name}"

tests/test_model.py

+157-104
Original file line numberDiff line numberDiff line change
@@ -4,119 +4,141 @@
44

55

66
TEST_DATA = [
7-
{'name': 'Bacteria'},
8-
{'name': 'Plantae'},
7+
{"name": "Bacteria"},
8+
{"name": "Plantae"},
99
{
10-
'name': 'Animalia',
11-
'sub': [
10+
"name": "Animalia",
11+
"sub": [
1212
{
13-
'name': 'Chordata',
14-
'sub': [
13+
"name": "Chordata",
14+
"sub": [
1515
{
16-
'name': 'Mammalia',
17-
'sub': [
16+
"name": "Mammalia",
17+
"sub": [
1818
{
19-
'name': 'Carnivora',
20-
'sub': [
19+
"name": "Carnivora",
20+
"sub": [
2121
{
22-
'name': 'Canidae',
23-
'sub': [
22+
"name": "Canidae",
23+
"sub": [
2424
{
25-
'name': 'Canis',
26-
'sub': [{'name': 'Canis lupus'}, {'name': 'Canis rufus'}]
25+
"name": "Canis",
26+
"sub": [
27+
{"name": "Canis lupus"},
28+
{"name": "Canis rufus"},
29+
],
2730
},
2831
{
29-
'name': 'Urocyon',
30-
'sub': [{'name': 'Urocyon cinereoargenteus'}]
31-
}
32-
]
32+
"name": "Urocyon",
33+
"sub": [
34+
{"name": "Urocyon cinereoargenteus"}
35+
],
36+
},
37+
],
3338
},
3439
{
35-
'name': 'Feliformia',
36-
'sub': [
40+
"name": "Feliformia",
41+
"sub": [
3742
{
38-
'name': 'Felidae',
39-
'sub': [
43+
"name": "Felidae",
44+
"sub": [
4045
{
41-
'name': 'Felinae',
42-
'sub': [
46+
"name": "Felinae",
47+
"sub": [
4348
{
44-
'name': 'Lynx',
45-
'sub': [{'name': 'Lynx lynx'}, {'name': 'Lynx rufus'}]
49+
"name": "Lynx",
50+
"sub": [
51+
{
52+
"name": "Lynx lynx"
53+
},
54+
{
55+
"name": "Lynx rufus"
56+
},
57+
],
4658
},
4759
{
48-
'name': 'Puma',
49-
'sub': [{'name': 'Puma concolor'}]
50-
}
51-
]
60+
"name": "Puma",
61+
"sub": [
62+
{
63+
"name": "Puma concolor"
64+
}
65+
],
66+
},
67+
],
5268
}
53-
]
69+
],
5470
}
55-
]
56-
}
57-
]
71+
],
72+
},
73+
],
5874
},
5975
{
60-
'name': 'Pilosa',
61-
'sub': [
76+
"name": "Pilosa",
77+
"sub": [
6278
{
63-
'name': 'Folivora',
64-
'sub': [
79+
"name": "Folivora",
80+
"sub": [
6581
{
66-
'name': 'Bradypodidae',
67-
'sub': [
82+
"name": "Bradypodidae",
83+
"sub": [
6884
{
69-
'name': 'Bradypus',
70-
'sub': [{'name': 'Bradypus tridactylus'}]
85+
"name": "Bradypus",
86+
"sub": [
87+
{
88+
"name": "Bradypus tridactylus"
89+
}
90+
],
7191
}
72-
]
92+
],
7393
}
74-
]
94+
],
7595
}
76-
]
77-
}
78-
]
96+
],
97+
},
98+
],
7999
},
80100
{
81-
'name': 'Reptilia',
82-
'sub': [
101+
"name": "Reptilia",
102+
"sub": [
83103
{
84-
'name': 'Squamata',
85-
'sub': [
104+
"name": "Squamata",
105+
"sub": [
86106
{
87-
'name': 'Iguania',
88-
'sub': [
107+
"name": "Iguania",
108+
"sub": [
89109
{
90-
'name': 'Agamidae',
91-
'sub': [
110+
"name": "Agamidae",
111+
"sub": [
92112
{
93-
'name': 'Pogona',
94-
'sub': [
95-
{'name': 'Pogona barbata'},
96-
{'name': 'Pogona minor'},
97-
{'name': 'Pogona vitticeps'}
98-
]
113+
"name": "Pogona",
114+
"sub": [
115+
{"name": "Pogona barbata"},
116+
{"name": "Pogona minor"},
117+
{
118+
"name": "Pogona vitticeps"
119+
},
120+
],
99121
}
100-
]
122+
],
101123
}
102-
]
124+
],
103125
}
104-
]
126+
],
105127
}
106-
]
107-
}
108-
]
128+
],
129+
},
130+
],
109131
}
110-
]
111-
}
132+
],
133+
},
112134
]
113135

114136

115137
def create_objects(objects, parent):
116138
for obj in objects:
117-
created = Taxonomy.objects.create_child(parent, name=obj['name'])
118-
if 'sub' in obj:
119-
create_objects(obj['sub'], created)
139+
created = Taxonomy.objects.create_child(parent, name=obj["name"])
140+
if "sub" in obj:
141+
create_objects(obj["sub"], created)
120142

121143

122144
def create_test_data():
@@ -130,21 +152,22 @@ def test_create(db):
130152

131153
def test_roots(db):
132154
create_test_data()
133-
roots = Taxonomy.objects.roots().values_list('name', flat=True)
134-
assert set(roots) == set(['Bacteria', 'Plantae', 'Animalia'])
155+
roots = Taxonomy.objects.roots().values_list("name", flat=True)
156+
assert set(roots) == set(["Bacteria", "Plantae", "Animalia"])
135157

136158

137159
@pytest.mark.parametrize(
138-
'name, expected', [
139-
('Animalia', ['Chordata']),
140-
('Mammalia', ['Carnivora', 'Pilosa']),
141-
('Reptilia', ['Squamata']),
142-
('Pogona', ['Pogona barbata', 'Pogona minor', 'Pogona vitticeps'])
143-
]
160+
"name, expected",
161+
[
162+
("Animalia", ["Chordata"]),
163+
("Mammalia", ["Carnivora", "Pilosa"]),
164+
("Reptilia", ["Squamata"]),
165+
("Pogona", ["Pogona barbata", "Pogona minor", "Pogona vitticeps"]),
166+
],
144167
)
145168
def test_children(db, name, expected):
146169
create_test_data()
147-
children = Taxonomy.objects.get(name=name).children().values_list('name', flat=True)
170+
children = Taxonomy.objects.get(name=name).children().values_list("name", flat=True)
148171
assert set(children) == set(expected)
149172

150173

@@ -157,57 +180,87 @@ def test_label(db):
157180

158181

159182
@pytest.mark.parametrize(
160-
'name, expected', [
161-
('Canis lupus', ['Animalia', 'Chordata', 'Mammalia', 'Carnivora', 'Canidae', 'Canis', 'Canis lupus']),
162-
('Bacteria', ['Bacteria']),
163-
('Chordata', ['Animalia', 'Chordata'])
164-
]
183+
"name, expected",
184+
[
185+
(
186+
"Canis lupus",
187+
[
188+
"Animalia",
189+
"Chordata",
190+
"Mammalia",
191+
"Carnivora",
192+
"Canidae",
193+
"Canis",
194+
"Canis lupus",
195+
],
196+
),
197+
("Bacteria", ["Bacteria"]),
198+
("Chordata", ["Animalia", "Chordata"]),
199+
],
165200
)
166201
def test_ancestors(db, name, expected):
167202
create_test_data()
168-
ancestors = Taxonomy.objects.get(name=name).ancestors().values_list('name', flat=True)
203+
ancestors = (
204+
Taxonomy.objects.get(name=name).ancestors().values_list("name", flat=True)
205+
)
169206
assert list(ancestors) == expected
170207

171208

172209
@pytest.mark.parametrize(
173-
'name, expected', [
174-
('Canidae', ['Canidae', 'Canis', 'Canis lupus', 'Canis rufus', 'Urocyon', 'Urocyon cinereoargenteus']),
175-
('Bradypus tridactylus', ['Bradypus tridactylus']),
176-
('Pogona', ['Pogona', 'Pogona barbata', 'Pogona minor', 'Pogona vitticeps'])
177-
]
210+
"name, expected",
211+
[
212+
(
213+
"Canidae",
214+
[
215+
"Canidae",
216+
"Canis",
217+
"Canis lupus",
218+
"Canis rufus",
219+
"Urocyon",
220+
"Urocyon cinereoargenteus",
221+
],
222+
),
223+
("Bradypus tridactylus", ["Bradypus tridactylus"]),
224+
("Pogona", ["Pogona", "Pogona barbata", "Pogona minor", "Pogona vitticeps"]),
225+
],
178226
)
179227
def test_descendants(db, name, expected):
180228
create_test_data()
181-
descendants = Taxonomy.objects.get(name=name).descendants().values_list('name', flat=True)
229+
descendants = (
230+
Taxonomy.objects.get(name=name).descendants().values_list("name", flat=True)
231+
)
182232
assert set(descendants) == set(expected)
183233

184234

185235
@pytest.mark.parametrize(
186-
'name, expected', [
187-
('Feliformia', 'Carnivora'),
188-
('Plantae', None),
189-
('Pogona minor', 'Pogona')
190-
]
236+
"name, expected",
237+
[("Feliformia", "Carnivora"), ("Plantae", None), ("Pogona minor", "Pogona")],
191238
)
192239
def test_parent(db, name, expected):
193240
create_test_data()
194241
parent = Taxonomy.objects.get(name=name).parent()
195-
assert getattr(parent, 'name', None) == expected
242+
assert getattr(parent, "name", None) == expected
196243

197244

198245
@pytest.mark.parametrize(
199-
'name, expected', [
200-
('Carnivora', ['Pilosa']),
201-
('Pogona vitticeps', ['Pogona minor', 'Pogona barbata'])
202-
]
246+
"name, expected",
247+
[
248+
("Carnivora", ["Pilosa"]),
249+
("Pogona vitticeps", ["Pogona minor", "Pogona barbata"]),
250+
],
203251
)
204252
def test_siblings(db, name, expected):
205253
create_test_data()
206-
siblings = Taxonomy.objects.get(name=name).siblings().values_list('name', flat=True)
254+
siblings = Taxonomy.objects.get(name=name).siblings().values_list("name", flat=True)
207255
assert set(siblings) == set(expected)
208256

209257

210258
def test_slicing(db):
211259
create_test_data()
212260
qs = Taxonomy.objects.all()
213261
assert qs[:3].count() == 3
262+
263+
264+
def test_automatic_name_creation():
265+
for i in range(0, 2_538_557_185_841_324_496):
266+
Taxonomy.objects.create_child(name=i)

tests/test_path_value.py

-4
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,3 @@ def generator():
1616
yield "beer"
1717

1818
assert str(PathValue(generator())) == "100.bottles.of.beer"
19-
20-
21-
def test_automatic_generation_of_label():
22-
pass

0 commit comments

Comments
 (0)