Skip to content

Commit

Permalink
Remove volume_ml field from Beer model
Browse files Browse the repository at this point in the history
  • Loading branch information
Alschn committed Nov 11, 2024
1 parent d7d3214 commit e36c1e6
Show file tree
Hide file tree
Showing 10 changed files with 37 additions and 42 deletions.
2 changes: 1 addition & 1 deletion backend/beers/admin.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@


class BeerAdmin(ImportExportActionModelAdmin):
list_display = ('id', 'name', 'brewery', 'style', 'percentage', 'volume_ml')
list_display = ('id', 'name', 'brewery', 'style', 'percentage')
list_select_related = ('brewery', 'style')
search_fields = ('name', 'brewery__name', 'style__name')

Expand Down
1 change: 0 additions & 1 deletion backend/beers/filters/beers.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@ class Meta:
'style': ['in'],
'style__name': ['icontains'],
'percentage': ['gte', 'lte', 'exact', 'range'],
'volume_ml': ['gte', 'lte', 'exact', 'range'],
'hop_rate': ['gte', 'lte', 'exact', 'range'],
'extract': ['gte', 'lte', 'exact', 'range'],
'IBU': ['gte', 'lte', 'exact', 'range'],
Expand Down
17 changes: 17 additions & 0 deletions backend/beers/migrations/0009_remove_beer_volume_ml.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Generated by Django 5.1.2 on 2024-11-11 14:11

from django.db import migrations


class Migration(migrations.Migration):

dependencies = [
('beers', '0008_alter_beer_extract'),
]

operations = [
migrations.RemoveField(
model_name='beer',
name='volume_ml',
),
]
5 changes: 1 addition & 4 deletions backend/beers/models/beer.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,6 @@ class Beer(models.Model):
decimal_places=2,
validators=[MinValueValidator(Decimal('0'))]
)
volume_ml = models.PositiveIntegerField(
help_text="Volume of the beer in milliliters [mL]"
)
hop_rate = models.PositiveIntegerField(
null=True, blank=True,
help_text="Grams of hops per liter [g/L]"
Expand Down Expand Up @@ -66,7 +63,7 @@ class Beer(models.Model):
updated_at = models.DateTimeField(auto_now=True)

def __str__(self) -> str:
to_str = f"{self.name} {self.percentage}% {self.volume_ml}ml"
to_str = f"{self.name} {self.percentage}%"
if self.brewery:
to_str += f", {self.brewery}"
return to_str
2 changes: 0 additions & 2 deletions backend/beers/serializers/beer.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@ class Meta:
'hops',
'image',
'percentage',
'volume_ml',
'hop_rate',
'extract',
'IBU',
Expand Down Expand Up @@ -107,7 +106,6 @@ class Meta:
'brewery',
'style',
'percentage',
'volume_ml',
'hop_rate',
'extract',
'IBU',
Expand Down
27 changes: 6 additions & 21 deletions backend/beers/tests/test_beers_views.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,23 +33,23 @@ def setUpTestData(cls) -> None:
Beer.objects.bulk_create([
Beer(
name='Jungle IPA', brewery=cls.brewery_inne_beczki,
percentage=6.0, volume_ml=500, style=cls.style_ipa
percentage=6.0, style=cls.style_ipa
),
Beer(
name='Zissou APA', brewery=cls.brewery_inne_beczki,
percentage=5, volume_ml=500
percentage=5,
),
Beer(
name='Hoppy Crew: Who Snaps First', brewery=cls.brewery_pinta,
percentage=8, volume_ml=500
percentage=8,
)
])
cls.beer_to_update = Beer.objects.create(
name='PanIIPAni', percentage=6.7, volume_ml=500,
name='PanIIPAni', percentage=6.7,
style=cls.style_ipa, brewery=cls.brewery_pinta
)
cls.beer_to_delete = Beer.objects.create(
name='A Ja Pale Ale', percentage=5, volume_ml=500,
name='A Ja Pale Ale', percentage=5,
style=cls.style_apa, brewery=cls.brewery_pinta
)

Expand All @@ -69,7 +69,6 @@ def test_create_beer(self):
payload = {
'name': "a'la Grodziskie",
'percentage': 5,
'volume_ml': 500,
}
self._require_login_and_auth()
response = self.client.post(self.list_url, payload)
Expand All @@ -83,7 +82,6 @@ def test_create_beer(self):
def test_create_beer_missing_data(self):
payload = {
'name': "Random name",
'volume_ml': 750,
}
self._require_login_and_auth()
response = self.client.post(self.list_url, payload)
Expand All @@ -97,7 +95,6 @@ def test_create_beer_negative_percentage(self):
payload = {
'name': "Negative",
'percentage': -1,
'volume_ml': 500,
}
self._require_login_and_auth()
response = self.client.post(self.list_url, payload)
Expand All @@ -110,7 +107,7 @@ def test_create_beer_negative_percentage(self):
# todo: more create beer tests (including base64 image upload)

def test_retrieve_beer(self):
beer = Beer.objects.create(name='Kwas Theta', percentage=10.2, volume_ml=500)
beer = Beer.objects.create(name='Kwas Theta', percentage=10.2)
response = self.client.get(
reverse_lazy('beers-detail', args=(beer.id,))
)
Expand Down Expand Up @@ -218,18 +215,6 @@ def test_list_beers_filter_percentage_range(self):
def test_list_beers_filter_percentage_invalid_range(self):
pass

def test_list_beers_filter_volume_ml_gte(self):
pass

def test_list_beers_filter_volume_ml_lte(self):
pass

def test_list_beers_filter_volume_ml_range(self):
pass

def test_list_beers_filter_volume_ml_invalid_range(self):
pass

def test_list_beers_filter_hop_rate_gte(self):
pass

Expand Down
8 changes: 4 additions & 4 deletions backend/beers/tests/test_models.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,14 @@ def setUpTestData(cls) -> None:
def test_Beer_to_string(self):
beer_with_brewery = Beer.objects.create(
name='West Coast IPA', brewery=self.brewery,
percentage=5, volume_ml=500
percentage=5,
)
beer_without_brewery = Beer.objects.create(
name='West Coast IPA',
percentage=5, volume_ml=500
percentage=5,
)
self.assertEqual(str(beer_with_brewery), "West Coast IPA 5% 500ml, Warmia")
self.assertEqual(str(beer_without_brewery), "West Coast IPA 5% 500ml")
self.assertEqual(str(beer_with_brewery), "West Coast IPA 5%, Warmia")
self.assertEqual(str(beer_without_brewery), "West Coast IPA 5%")

def test_BeerStyle_to_string(self):
beer_style = BeerStyle.objects.create(name='Russian Imperial Stout')
Expand Down
1 change: 0 additions & 1 deletion backend/core/shared/factories.py
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,6 @@ class Meta:
brewery = factory.SubFactory(BreweryFactory)
style = factory.SubFactory(BeerStyleFactory)
percentage = factory.Faker('random_int', min=1, max=12)
volume_ml = 500
hop_rate = None
extract = None
IBU = None
Expand Down
8 changes: 4 additions & 4 deletions backend/rooms/tests/test_models.py
Original file line number Diff line number Diff line change
Expand Up @@ -35,23 +35,23 @@ def test_room_to_string(self):
self.assertEqual(str(self.room1), "'TestRoom' 1/4 - waiting")

def test_rating_to_string(self):
beer = Beer.objects.create(name="Atak Chmielu", percentage="6.1", volume_ml=500)
beer = Beer.objects.create(name="Atak Chmielu", percentage="6.1")
rating = Rating.objects.create(added_by=self.user, beer=beer, room=self.room1, note=10)
self.assertEqual(
str(rating),
f'Atak Chmielu - 10 by {self.user.username} in room {self.room1.name}'
)

def test_rating_without_note_to_string(self):
beer = Beer.objects.create(name="Atak Chmielu", percentage="6.1", volume_ml=500)
beer = Beer.objects.create(name="Atak Chmielu", percentage="6.1")
rating = Rating.objects.create(added_by=self.user, beer=beer, room=self.room1)
self.assertEqual(
str(rating),
f'Atak Chmielu - ? by {self.user.username} in room {self.room1.name}'
)

def test_rating_without_room_to_string(self):
beer = Beer.objects.create(name="Atak Chmielu", percentage="6.1", volume_ml=500)
beer = Beer.objects.create(name="Atak Chmielu", percentage="6.1")
rating = Rating.objects.create(added_by=self.user, beer=beer, note=9)
self.assertEqual(
str(rating),
Expand All @@ -60,7 +60,7 @@ def test_rating_without_room_to_string(self):

def test_beer_in_room_to_string(self):
user = User.objects.create_user(username="test2", password="test2")
beer = Beer.objects.create(name="Atak Chmielu", percentage="6.1", volume_ml=500)
beer = Beer.objects.create(name="Atak Chmielu", percentage="6.1")
room = Room.objects.create(name="testroom", slots=4, host=user, state=Room.State.STARTING)
beer_in_room = BeerInRoom.objects.create(beer=beer, room=room)
self.assertEqual(str(beer_in_room), f'{room.name} - #{beer_in_room.order} - {beer}')
Expand Down
8 changes: 4 additions & 4 deletions backend/rooms/tests/test_rooms_views.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,10 +38,10 @@ def setUpTestData(cls) -> None:
host=cls.user3
)
beers = Beer.objects.bulk_create([
Beer(id=50, name='Atak Chmielu', percentage=6.1, volume_ml=500),
Beer(id=51, name='Maniac', percentage=8, volume_ml=500),
Beer(id=52, name='Triple NEIPA', percentage=9.2, volume_ml=500),
Beer(id=53, name='Diablo Verde', percentage=7.6, volume_ml=500),
Beer(id=50, name='Atak Chmielu', percentage=6.1),
Beer(id=51, name='Maniac', percentage=8),
Beer(id=52, name='Triple NEIPA', percentage=9.2),
Beer(id=53, name='Diablo Verde', percentage=7.6),
])
cls.room_with_pass.beers.add(*beers)

Expand Down

0 comments on commit e36c1e6

Please sign in to comment.