From b5c3edd0d4755959eafc3b12708cd4568e25d8eb Mon Sep 17 00:00:00 2001 From: Igor Ashakov Date: Thu, 28 May 2026 19:35:53 +0300 Subject: [PATCH 1/8] First commit --- __init__.py => praktikum/__init__.py | 0 bun.py => praktikum/bun.py | 0 burger.py => praktikum/burger.py | 0 database.py => praktikum/database.py | 0 ingredient.py => praktikum/ingredient.py | 0 ingredient_types.py => praktikum/ingredient_types.py | 0 praktikum.py => praktikum/praktikum.py | 0 7 files changed, 0 insertions(+), 0 deletions(-) rename __init__.py => praktikum/__init__.py (100%) rename bun.py => praktikum/bun.py (100%) rename burger.py => praktikum/burger.py (100%) rename database.py => praktikum/database.py (100%) rename ingredient.py => praktikum/ingredient.py (100%) rename ingredient_types.py => praktikum/ingredient_types.py (100%) rename praktikum.py => praktikum/praktikum.py (100%) diff --git a/__init__.py b/praktikum/__init__.py similarity index 100% rename from __init__.py rename to praktikum/__init__.py diff --git a/bun.py b/praktikum/bun.py similarity index 100% rename from bun.py rename to praktikum/bun.py diff --git a/burger.py b/praktikum/burger.py similarity index 100% rename from burger.py rename to praktikum/burger.py diff --git a/database.py b/praktikum/database.py similarity index 100% rename from database.py rename to praktikum/database.py diff --git a/ingredient.py b/praktikum/ingredient.py similarity index 100% rename from ingredient.py rename to praktikum/ingredient.py diff --git a/ingredient_types.py b/praktikum/ingredient_types.py similarity index 100% rename from ingredient_types.py rename to praktikum/ingredient_types.py diff --git a/praktikum.py b/praktikum/praktikum.py similarity index 100% rename from praktikum.py rename to praktikum/praktikum.py From 4d50cb5439df4215c65bba0feeeb151e5b99886c Mon Sep 17 00:00:00 2001 From: Igor Ashakov Date: Thu, 28 May 2026 19:48:41 +0300 Subject: [PATCH 2/8] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D1=8B=20=D1=82=D0=B5=D1=81=D1=82=D1=8B=20=D0=B4=D0=BB?= =?UTF-8?q?=D1=8F=20bun.py?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tests/test_bun.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 tests/test_bun.py diff --git a/tests/test_bun.py b/tests/test_bun.py new file mode 100644 index 000000000..3236b9c8e --- /dev/null +++ b/tests/test_bun.py @@ -0,0 +1,12 @@ +import pytest +from praktikum.bun import Bun + +class TestBun: + + @pytest.mark.parametrize("name, price", + [("Краторная булка N-200i", 1255), + ("Флюоресцентная булка R2-D3", 988)]) + def test_create_bun(self, name, price): + bun = Bun(name, price) + assert bun.get_name() == name + assert bun.get_price() == price \ No newline at end of file From 8d959bd7de0540fb4cd38316331b66a3ff20ab33 Mon Sep 17 00:00:00 2001 From: Igor Ashakov Date: Thu, 28 May 2026 19:55:55 +0300 Subject: [PATCH 3/8] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D1=8B=20=D1=82=D0=B5=D1=81=D1=82=D1=8B=20=D0=B4=D0=BB?= =?UTF-8?q?=D1=8F=20burger.py?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tests/test_burger.py | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 tests/test_burger.py diff --git a/tests/test_burger.py b/tests/test_burger.py new file mode 100644 index 000000000..e69de29bb From b97ef34d384755ecdfca5cdc9ff9cbfdb552f409 Mon Sep 17 00:00:00 2001 From: Igor Ashakov Date: Thu, 28 May 2026 19:59:37 +0300 Subject: [PATCH 4/8] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=20=D1=84=D0=B0=D0=B9=D0=BB=20pytest.ini=20=D0=B4=D0=BB?= =?UTF-8?q?=D1=8F=20=D0=B7=D0=B0=D0=BF=D1=83=D1=81=D0=BA=D0=B0=20=D1=82?= =?UTF-8?q?=D0=B5=D1=81=D1=82=D0=BE=D0=B2=20=D0=BA=D0=BE=D0=BC=D0=B0=D0=BD?= =?UTF-8?q?=D0=B4=D0=BE=D0=B9=20pytest.=20=D0=B8=D1=81=D0=BF=D1=80=D0=B0?= =?UTF-8?q?=D0=B2=D0=BB=D0=B5=D0=BD=20=D1=84=D0=B0=D0=B9=D0=BB=20test=5Fbu?= =?UTF-8?q?rger.py?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../__pycache__/__init__.cpython-313.pyc | Bin 0 -> 137 bytes praktikum/__pycache__/bun.cpython-313.pyc | Bin 0 -> 1062 bytes praktikum/__pycache__/burger.cpython-313.pyc | Bin 0 -> 3220 bytes .../__pycache__/ingredient.cpython-313.pyc | Bin 0 -> 1384 bytes pytest.ini | 2 + .../test_bun.cpython-313-pytest-9.0.2.pyc | Bin 0 -> 2867 bytes .../test_burger.cpython-313-pytest-9.0.2.pyc | Bin 0 -> 9271 bytes tests/test_burger.py | 69 ++++++++++++++++++ 8 files changed, 71 insertions(+) create mode 100644 praktikum/__pycache__/__init__.cpython-313.pyc create mode 100644 praktikum/__pycache__/bun.cpython-313.pyc create mode 100644 praktikum/__pycache__/burger.cpython-313.pyc create mode 100644 praktikum/__pycache__/ingredient.cpython-313.pyc create mode 100644 pytest.ini create mode 100644 tests/__pycache__/test_bun.cpython-313-pytest-9.0.2.pyc create mode 100644 tests/__pycache__/test_burger.cpython-313-pytest-9.0.2.pyc diff --git a/praktikum/__pycache__/__init__.cpython-313.pyc b/praktikum/__pycache__/__init__.cpython-313.pyc new file mode 100644 index 0000000000000000000000000000000000000000..14ff2101c8ebce3f4d8d8345582246d0ea992173 GIT binary patch literal 137 zcmey&%ge<81lMvTvOx4>5CH>>P{wB#AY&>+I)f&o-%5reCLr%KNa~h`i&czEW^5Ln;+(t2AW zDb$+PrM%1=E4$fa!u2>;g0DMtLGt9>>8?ut(xo00w`{PxvQ($d8kK zi@#5H_%T08Uh=Q}$b$NDav-Y7Hvh;E0ecmLzqz#Q(Bj`f;WO{^6FksMUZ7B)_xKn7 z0kF@HIBWv7Q4J8}kHofQ7cTB6I~5~UgKEP~wHEVgZcPDa*~0lCAKn6JljSRZ)*;K5 zj}H;6PP)=kS7sV8mIEj&sT#We+TTiuGL~hfbBhn0MX%*I8{|QJPM|#3~ufgGM+BuuV>Hl=cg!Mf0^W1WwW%bEB9AwF^&B#9X*HA!(Cm zn>9$3Fk-2;<~OSm!@09-2t|OjNNE^VBdjr4`vAM-m#k>|z>u|@9eY3^yepnz80eBV+nGBf5C%C(Gdm0Ckeeep qR9b>hBouF>EIxhweIAaU^@v$e6IabZGEgK*I+v#<^EUwy2mSyctr&g) literal 0 HcmV?d00001 diff --git a/praktikum/__pycache__/burger.cpython-313.pyc b/praktikum/__pycache__/burger.cpython-313.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2b17876a41569c1a402ecdb87aada9b9cef4003b GIT binary patch literal 3220 zcmbVO-EY%Y6u-7($4S#B{i0og)|3hw0%cucu=2SATUSPfYE`PB!z!(*45<^Y9X|TR z#{`8jAs*2Bu!kZ|V!U-@-54Joe}b(5L6(q^rakahJ|tdujvXg$3P{_La_>3k-gEBn z{_eRqeqCN3CLm9e^+$PukiXIJC6HHMZw2K#k%`RgB|QvfB-GixY!62{SLgNydU(o9 zq@FYrInY34ek1EeQ(;ty2VbBOXPm&-nqflEb!Bwu!e8m5R2|V&-5mC&du?Im6JTE_ zgM>0Np{&eMPG)I9<{Aj)<-nk@ftC3Nax_4LvM?xu6?CnTEDnaj3b|GpT5=dX0lCce zMC8a|IgFRPRs~p5uqs?DCP!)IXe?go2wfREs?rxh0Fh~B2nkz1TC>(~){J$}z9Lz_ z*yrst)@^GB+Ud5ib**Si_E~GzK5L(Y`FHGdl6A-W!wsilXV7sVGj=JIXfS5rsTPB{XNq)9Sj3 zz!mZ7y7d!*$720!1V$s!4CgBt9i*^}7#P>dK&-fjQ9|(!#Thp$&e967T;0GZNus!# zBO0oyz{ZRM7~fG1!v+=^f?4vtNULyuxVZlXNRUgH&rVRT1Al$cmr5VbD3N|!@GZbzF*Gs)RQh+-sm;^5(Cvm{1N#soIkDar>vLk0EjCSs zABzcZTfC-^sHYa}sK9L_#J+Dw{YV!HUaD5)|qLGg<7|#?i zM`F3iGCQ(tvfqxZ^w5TM^(5p$#Pb=2m(n`}tb+F;e%BccNbfu?9@3OZ@wEJxw0LS< z{?s(xP^sx~=~Oz-d1Z%W&?aaM#4Gv57cC`ZNuH1r|1ykR4b9>s4CNAA?8KH_VuzjB z@sQ6ZzIZHt>9HhG)yz7W$L&cYn|YqH#FuN);wxhGtu)jQkkob+qLm* zZNiQuF7J8Ck)??_fy8PjA}*l|h!i2MOXPjHz3_e_A>b;N57AHo|JEJcdgcRU_9B`6 zOdmc&B_eYNL%yq@?JM*3V(-)Kzb}3GsFa952e1Sn3+|{y=FQ+cct4j!_U-qN@15xW zA0I*oS6tye`wjxr_;i;@5oZTm%pr??_hnh2?ODH$g5HjD@`97^NN(#!zvDEnAC9x%+qPr;ghM8D)s6!a5Saq z`4_(k5M0%uX4m%?~?O^NKp}!-v3_g$Bx6S~X?fJayw#ZuMq+_2%sAPHWYc zJD*yOUDonl6Tt=LU46CpQtxEnPux^bu4R+mvMJm0Syt-INjq(6XIAR6nsz;Ge|R9b zXTaVwklk~@+I`SE_>Hyn(36Pb--S@@YQ?3B$t6>Po8k>IC$-yBdsgbOnl?;#TXowW ziQAuwQFlt+RL#xC8;#i&?UwY3RoC%I-0(bFef9LE)01`C=n6|*;od2Vb=w=S!jA%E z5E#dz>UQegI@J-bQ-!1O0otmPr_&wm! w;3D4+fyLc8;#QC0?X(L9@bkmK;+^9dhIvNn{vpesk;Gde&NRP*4=4}Jzu)BfoB#j- literal 0 HcmV?d00001 diff --git a/praktikum/__pycache__/ingredient.cpython-313.pyc b/praktikum/__pycache__/ingredient.cpython-313.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e4205ca14c9ea9bc662625a2fa676d2805109b95 GIT binary patch literal 1384 zcmbtTJ#5oZ5PpvB#Bmd)kQOCjv1pMRgenkpsSr~cSUO;VGDLa`sT;X9l=19zR^vA(IhEygP0^kOlb~IqA*elW#wWI^mMonx;ZeKBu|)R5*9KgCYvFq zm~vh<75LPA_ zqtve09;HEY)TY^iQ-hH16;SKsWMXP3dNPp$HJN#>cfm=5FtfZms}zUy!HKqbXao=yOywOe)%XzC;7(IGpZ|h%~kvTuWV=2>$8puSCR@T_l3eBwoSaUnI}U zqsd?xZ800eX5%}c**c}=>Qdc7J4We?dco=MBq&|Bnd>=r#i~?cJ3{GFwFrjndMr?v zooc~jSbiolUPB989ZXW{dIire(t_tP`+427TuS$Pd_-3n&V^7|UiT5GE%Gy@s9Gl` ztJmMl9Rf@1o>#0SMoD^#A|> literal 0 HcmV?d00001 diff --git a/pytest.ini b/pytest.ini new file mode 100644 index 000000000..a635c5c03 --- /dev/null +++ b/pytest.ini @@ -0,0 +1,2 @@ +[pytest] +pythonpath = . diff --git a/tests/__pycache__/test_bun.cpython-313-pytest-9.0.2.pyc b/tests/__pycache__/test_bun.cpython-313-pytest-9.0.2.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a6407118451491713ff7657dbb553f9c09e0e58e GIT binary patch literal 2867 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 literal 0 HcmV?d00001 diff --git a/tests/test_burger.py b/tests/test_burger.py index e69de29bb..9d0882148 100644 --- a/tests/test_burger.py +++ b/tests/test_burger.py @@ -0,0 +1,69 @@ +from unittest.mock import Mock +from praktikum.burger import Burger + +class TestBurger: + + def test_set_buns(self): + burger = Burger() + mock_bun = Mock() + burger.set_buns(mock_bun) + + assert burger.bun == mock_bun + + + def test_add_ingridient(self): + burger = Burger() + mock_ingridient = Mock() + burger.add_ingredient(mock_ingridient) + + assert mock_ingridient in burger.ingredients + + + def test_remove_ingridient(self): + burger = Burger() + mock_ingridient = Mock() + burger.ingredients = [mock_ingridient] + burger.remove_ingredient(0) + + assert len(burger.ingredients) == 0 + + + def test_move_ingridients(self): + burger = Burger() + mock_ingridient_1 = Mock() + mock_ingridient_2 = Mock() + burger.add_ingredient(mock_ingridient_1) + burger.add_ingredient(mock_ingridient_2) + + burger.move_ingredient(0, 1) + assert burger.ingredients == [mock_ingridient_2, mock_ingridient_1] + + + def test_get_price(self): + burger = Burger() + mock_bun = Mock() + mock_bun.get_price.return_value = 1000 + burger.set_buns(mock_bun) + mock_ingridient = Mock() + mock_ingridient.get_price.return_value = 500 + burger.ingredients = [mock_ingridient] + + assert burger.get_price() == 2500 + + def test_get_receipt(self): + burger = Burger() + mock_bun = Mock() + mock_bun.get_name.return_value = "Краторная булка N-200i" + mock_bun.get_price.return_value = 1255 + burger.set_buns(mock_bun) + + mock_ingridient = Mock() + mock_ingridient.get_type.return_value = "SAUCE" + mock_ingridient.get_name.return_value = "Соус традиционный галактический" + mock_ingridient.get_price.return_value = 15 + burger.ingredients = [mock_ingridient] + receipt = burger.get_receipt() + + assert "==== Краторная булка N-200i ====" in receipt + assert "sauce Соус традиционный галактический" in receipt + assert "Price: 2525" in receipt \ No newline at end of file From a9eba6bf13ea44ca6b3174315241790693a181db Mon Sep 17 00:00:00 2001 From: Igor Ashakov Date: Thu, 28 May 2026 20:06:01 +0300 Subject: [PATCH 5/8] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D1=8B=20=D1=82=D0=B5=D1=81=D1=82=D1=8B=20=D0=B4=D0=BB?= =?UTF-8?q?=D1=8F=20database.py?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tests/test_database.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 tests/test_database.py diff --git a/tests/test_database.py b/tests/test_database.py new file mode 100644 index 000000000..ca40523be --- /dev/null +++ b/tests/test_database.py @@ -0,0 +1,21 @@ +from praktikum.database import Database + +class TestDatabase: + + def test_avialable_buns_return_correct_count_and_data(self): + db = Database() + buns = db.available_buns() + + assert len(buns) == 3 + assert buns[0].get_name() == "black bun" + assert buns[0].get_price() == 100 + + def test_avilable_ingredients_return_correct_count_and_data(self): + db = Database() + ingredients = db.available_ingredients() + + assert len(ingredients) == 6 + assert ingredients[0].get_name() == "hot sauce" + assert ingredients[0].get_type() == "SAUCE" + assert ingredients[3].get_name() == "cutlet" + assert ingredients[3].get_type() == "FILLING" \ No newline at end of file From 926c9f43fea9a3fd96a8072e02c88e57f1cdcfd7 Mon Sep 17 00:00:00 2001 From: Igor Ashakov Date: Thu, 28 May 2026 20:17:43 +0300 Subject: [PATCH 6/8] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D1=8B=20=D1=82=D0=B5=D1=81=D1=82=D1=8B=20=D0=B4=D0=BB?= =?UTF-8?q?=D1=8F=20ingredient.py?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- praktikum/__pycache__/database.cpython-313.pyc | Bin 0 -> 2429 bytes .../__pycache__/ingredient_types.cpython-313.pyc | Bin 0 -> 365 bytes .../test_database.cpython-313-pytest-9.0.2.pyc | Bin 0 -> 6631 bytes .../test_ingredient.cpython-313-pytest-9.0.2.pyc | Bin 0 -> 4015 bytes tests/test_ingredient.py | 15 +++++++++++++++ 5 files changed, 15 insertions(+) create mode 100644 praktikum/__pycache__/database.cpython-313.pyc create mode 100644 praktikum/__pycache__/ingredient_types.cpython-313.pyc create mode 100644 tests/__pycache__/test_database.cpython-313-pytest-9.0.2.pyc create mode 100644 tests/__pycache__/test_ingredient.cpython-313-pytest-9.0.2.pyc create mode 100644 tests/test_ingredient.py diff --git a/praktikum/__pycache__/database.cpython-313.pyc b/praktikum/__pycache__/database.cpython-313.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c848bc940c346d1923344232cf608f75de963f8f GIT binary patch literal 2429 zcmb_dU1%It6uvV%J9B6AM@?fk(Yj+5?2=@IU=c(_V^Yl~EH$$$lq_5(yVGQv$?SS( zR!N>(L1|IwQ$WOr2tK55Em%~vF^_qiW!ENLC<@|3-eM#6)pKWdvrW5-l)WtHp1=Fe zIp>~x_OPcXhG5;b2BifmXq*>k#B_v40zNV$rK2<& z@Y0N&R;ZH36l*AsP9r@!jCA>|7=lrCQAy%`E+hpe&04Mpdt{>Gz!sZ!7O7dZOvg)# zY+yR`&fL`G^i(EGvKP)z5&f;)+f!`tQT4g$*;&vP!ViQr(hv^M0ke+shzdHQqAt*g zE>cO43?mxVrM#S1qTun0$fLX@Q5@*hhE5K2FXqsh4SxPl{_X0={+9o(e-rrcHUDRSORHW6>6X6*mfL~XEs(zhuOGC)@s59| z`dRgpRIDHXWOFIN@H`IxhT5&8ag;-L(-ulc-Z?aPWN9&TJdH=zJVyXLvz99> z`C?;wq{^!d6Jj}*M+iI794e`%st2&#en7m8_7cxul|EPZ#>THobsYZiGRO*c03D?i6a;TpjCe4o_^S{|kF!dpZd07o0tW+8`!V z)2mSD*tq035RA)VVAlU-ki7^umPrcq1o+UCK*EcoPXo((jSmgWHWqA?1Whn_bTh{d zr}#PEyKp~!{nuBot@=1lhd}Wp0numSAcXW3Y>$OB(E9Sj9r;|F$R4t50Oj@q2?E^h zOH}(3K28K7CdDv${<%!Dn>V6kteDV{rorzl48ecT((2?v@G9ompK^sm*w5U>Zb5Y;xk&2;spS08{v3!yklCK+S0w_4_P z;1RK&qnDS0>kI;9CtJE!y@H6@a61zLK+|o#_b}cw0N=`i;n%~uy+Oyo!28gB2FO7~ b5QKYZ@DFtA9vb--=jKNGrOzF&;ETu(2VXh1F zFKoTo0L1MVc3f<{u=~Q+3wtl@xUf~>Vxz*vCLnA7g$)<>T-c!iWbVDN8Km^W7LbAq zdx6sXE^N}{3U&;2c2#)PFd3-l!oG{m7aO_UJbipT{oKKVKy4d9rUU6+7dCL+Vg;+e z#ST^Dr^$SaJw84qKRG`BmMBnDkgJQQt6xZbNMwL(JVdQHx-eAlN`}uMKi)EMv5IlY zEXc{vg;Mc`F$G15*(I6TrMWSgdFe%|DVeExCGjPd1*ye)1(mlrY;yBcN^?@}ia_B9 m3aMfVAn}2jk&*Eu6AL5D2QCIlg$oR#H>8v=GKd#(03`u5Sc&8S literal 0 HcmV?d00001 diff --git a/tests/__pycache__/test_database.cpython-313-pytest-9.0.2.pyc b/tests/__pycache__/test_database.cpython-313-pytest-9.0.2.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a366592c2efe5e89444231769ee9acda9f5e94ca GIT binary patch literal 6631 zcmeHM-ESMm5x*mk%gxEqR9bqmV(?_^!k6G!s$Cp~rsdfAO==-p(`tbyKjXMtCVNW2G2$3+C5DyaxbJ(*Eng>|%( zdP*myWLEZjskKugMiE^v2wwL*Bb8D@mpEJSz%0pjd`YgqQ;O+Bcw0H!*Wh~lo0IRZ zx1G?3oqMGr|4#c%M5*%ko+y3SeKrjD*~q)^b?>u?*Mnn4gtt$XeD}LRkkm(m z_^0$SeY}(k;y-eP_>Tx(;vB@E@HMa#unv2Xb(rd31z4Tlbx@yc9Znpt1CQ{ab=Z)! zlUFIeIQQhov8AOw`F8fj`TAB~bBF&J5b32fQd!NN$8%0|wc(G`OPsr)xh!6@Y^JO? zY)@Yf;Zv^BPX5Z@otG<8*syy=IngreQ8vUP1LmVHt?P@&ISR ziOh!O8Me7;4SzfzaR~J9DO3gJ6rVJ-Riya#c&tXe$idYx1-#5Ys=$~g-@bHo<8@js zKWSYXqxe~4n63>C=7#i zwdPfAmnCZsNVsgua6fPwwTdrlY}A}}v*uqp8!}w;hJ_l~__814s$;)JsYBT*A?siB4%s|DgOerQKq<7?FNfg)+v4h*$8^UgY~Ourx@)Nc!wKVjCOt< z70X6Dff!f4z^|4o$mLu#osKl7U3~re#cI9gYz8MIcO7Hr`e;;wT}-CF#d18RA63n6 zz#&>*gW5*fq0}mSaBkQTce~=xWEZ0Qm&}pp<445(2kc7zB>j8r^r!D{#~!LDJ8HV6 zrrYYww(_+)akud4R+CKMU-se7Cmk})k2aa!-U@r1ctEEA>V~{lPmi;|Ak%jXQ3=t5 zsX`rSzP}vGgaoi3s;BNQ-?`N!*^YX)rJe<%sh(}C=YZH*^P#0?J231Y`#5}#(+4EG zeT$QAe^!JJM1a4u#@T%s+SPb)nnY{*Ap&Bj>_bb{IwUyuad?Jz4~T|#ais0fiqL@w z@OR3b-G`w05SHjWHl?4#hx>R_it#z#l)}b;@Rsa&Q+m89#YZG)$D7jsV{&lvnUl1M z=SmKaleD0)GAKEKBu%Wt)04DQ&$SN6N!s_U10-oLTz!N|8pVPG#flYACq}CF2DK_x z%l2FfB`}FjAYi%^@Rzg>O%?bWL*A|*QAO^Kq8V`fC5XeH5~B1|Lv3<1h*5=|qVLzqGMIRMXN z&;f0fzKGm8gaw3`5U^ZBHH4QDeu3}`!m9`wgkJ(Yk#o>2aM_~B26!?NarG%V#l?X+ z#SyjOGP-|*?6{j*OipzsGp)%?dosH{f|gjRz7i9MC`KW~G!PHP6=-$bNLLmX{hw7R8xjUaU$zn&HYpHWUG}XDbIuFF| z6(3saVh4u(V;_g-IekDDw;?sck+wf8LI)zi-@U@weHhx!3%hw?H@~~mBmgZn-yy-V zPhc37V)uaL(Jqp0WY0zDKm_=^E1cbjq1}S8TM%{&yO){-prt~x799HohCwNI4@d#+ zBH2bZ*bV7G1o*p`IJ*x+yG3EQDC`z@SDOT&r4~CRIQ9t)gHr4skRsYevW;x88`6OY z@OM`^yAMG#&BJ}U2Y(=>7%}|ngJG~?!`O5x4JdIKY}7D*-!N-fk%69S7&ofa^=ehy zvK_;qIhao0z{l&fVYnXDBg%&9d9=FTfX594@IMaUi2o2$+yMB1#T5TR{fqRil1#k( zpA#gpzy(o88)8IMO#D{|`?0}mEE!&BfVxM9TDNG`v)E9`VyS@Vzj)Y0otihj>dnSx zM${GjDh_v}*EL4o;1_*?u7U&j;&$OV literal 0 HcmV?d00001 diff --git a/tests/__pycache__/test_ingredient.cpython-313-pytest-9.0.2.pyc b/tests/__pycache__/test_ingredient.cpython-313-pytest-9.0.2.pyc new file mode 100644 index 0000000000000000000000000000000000000000..bc8c0005f71d71ff401c427f1bc5ec53f1af1eae GIT binary patch literal 4015 zcmd@XTW`~5^t0n6j?>oSQdXd2R)LL-E(Mmh+=|9VffmG2O{Pw*^vO-#;E}}HXJ^n( zY+N=#nzTLfwukMFy|J6bW%M`LDy-;}Hjwtj+qO)aw5OfVmpCnz5SQ%*%Q-&x@0|0U z&pEEQwn_-D!IK^Dt&Jh{8zaI?2$1?afLul@Qn^EjaNd(2j#<2dh6NH=d`W^NK*AqN z4vR$ec(FsNVTnk?X_8h@2kJtqum-8|Uf%ahT8dmI@qiIWG8~nLDn+7C8hXXf@U(sC z$bpf;eM5ssj^ShP9v#H$-uzpG^o7Oj{X>Tj1Fzt_^kFg}>c;`OjK;l~39oV_HZF{K z`8KN~G}5||W|Yd0C)JoL|2X}}S5gG#36M$VtV;p0$Yjk-&*2^St zRfN1S5^Sf>@u8XTY81$v%5yspB4nQ26sR2FCSkR)#%d#pW?LVJX5sS59H;W5T8{4x zbk*3H80s#ykl~V%jnsK@V=~sfaQyFsJ;(4-90unFAX)Ri|?qOZqTC zlmUfd+d>u~0c%Uf$`*Co`}dblZ^}rgl>uM5FJn_89m0nHIw41}cWtpwb)FX&Z(n ztP#2l7qn6d6TM0bX1S^nowk4&Pt=T(ZB#6pD4C#P(GF}KH*2LyPZbwS=7d(lEM%I( zmNum`543HsS0lr$3=(1zx&lv`q^#LkKUFPh70m{TABbu)A@SZw%I8W-KXZ|C?vqgpb{!2@p{XZ5f=h@*DM zR;Q`rRf_Ta`4YqiRIW0KA$VIS7VTL$fMy?Mz-Bz_SD1g!pua@4O8H8@TAOPhxFp?| zSI^5`uH5B_{f^uJf3sy1 z)nJ2{yHRA_VPxG`1Xu2!7lV6F1PMeIaR9#~cC*L=o*Pjh@FHW9B`t4@;J?|jiE6OH zix=5?S6=UkSw~(!CvODgO1mp(=f&WjW0H*x(ns!ySr%EK;zkq*z>hCk((*R*-)z}L zHP}Ck**a`9`UXC-(p1FWNx_&(7?;h-T1f}I1>^T?T8W(mpk$1v3}V?OqoP+#U?luQ zN`LtX(u+cCCmI9mm**`P2{gAT-)yvh_Z47|($Yda4x zLu)^P3+R44eR1sU*nGUxjdwaP?z;O@&grwA4^BDjrtiMg=WIXa%zWgm`}p@5w{9U5))Dvi|9X)1M{!Nn+UW)@ZP3GT;$5 zH;^7?xUx#L6Si@pR?bGp(SMJvSxV%+xUHtbc-bzj02O!pwckT_z#8lW#Oee9$#L90 Zgg!y%TYo{D@1gwPg2eUwi2!)X{R_pPEYJV| literal 0 HcmV?d00001 diff --git a/tests/test_ingredient.py b/tests/test_ingredient.py new file mode 100644 index 000000000..9e777b6a9 --- /dev/null +++ b/tests/test_ingredient.py @@ -0,0 +1,15 @@ +import pytest +from praktikum.ingredient import Ingredient +from praktikum.ingredient_types import INGREDIENT_TYPE_SAUCE, INGREDIENT_TYPE_FILLING + +class TestIngridient: + + @pytest.mark.parametrize("ingredient_type, name, price", + [(INGREDIENT_TYPE_SAUCE, "Соус традиционный галактический", 15), + (INGREDIENT_TYPE_FILLING, "Мясо бессмертных моллюсков Protostomia", 1337)]) + def test_ingridient_init_and_getters(self, ingredient_type, name, price): + ingredient = Ingredient(ingredient_type, name, price) + + assert ingredient.get_type() == ingredient_type + assert ingredient.get_name() == name + assert ingredient.get_price() == price From 50fadf5fb6151e9ac2a7d1efdc9df1f5e1aa33dc Mon Sep 17 00:00:00 2001 From: Igor Ashakov Date: Thu, 28 May 2026 20:20:00 +0300 Subject: [PATCH 7/8] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D1=8B=20requirements.txt=20=D0=B4=D0=BB=D1=8F=20=D1=83?= =?UTF-8?q?=D1=81=D1=82=D0=B0=D0=BD=D0=BE=D0=B2=D0=BA=D0=B8=20=D0=B7=D0=B0?= =?UTF-8?q?=D0=B2=D0=B8=D1=81=D0=B8=D0=BC=D0=BE=D1=81=D1=82=D0=B5=D0=B9=20?= =?UTF-8?q?=D0=B8=20gitignore?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 11 +++++++++++ requirements.txt | 2 ++ 2 files changed, 13 insertions(+) create mode 100644 .gitignore create mode 100644 requirements.txt diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000..88dbe06c3 --- /dev/null +++ b/.gitignore @@ -0,0 +1,11 @@ +.venv/ +venv/ +ENV/ + +__pycache__/ +.pytest_cache/ + +.coverage +htmlcov/ +build/ +dist/ \ No newline at end of file diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 000000000..7571d09b4 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,2 @@ +pytest>=7.0.0 +pytest-cov>=4.0.0 \ No newline at end of file From 14d7b95302bdb1e093237e43b9378a4c1c5002fb Mon Sep 17 00:00:00 2001 From: Igor Ashakov Date: Mon, 1 Jun 2026 18:21:58 +0300 Subject: [PATCH 8/8] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D1=8B=20test=5Fbun.py=20=D0=B8=20test=5Fingredient?= =?UTF-8?q?.py,=20=D1=83=D0=B4=D0=B0=D0=BB=D0=B5=D0=BD=D1=8B=20=D0=B2?= =?UTF-8?q?=D1=81=D0=B5=20=D1=84=D0=B0=D0=B9=D0=BB=D1=8B=20=D0=B8=20=D0=BF?= =?UTF-8?q?=D0=B0=D0=BF=D0=BA=D0=B8=20=D0=BD=D0=B5=20=D0=BE=D1=82=D0=BD?= =?UTF-8?q?=D0=BE=D1=81=D1=8F=D1=89=D0=B8=D0=B5=D1=81=D1=8F=20=D0=BA=20?= =?UTF-8?q?=D1=80=D0=B5=D1=88=D0=B5=D0=BD=D0=B8=D1=8E=20=D0=B7=D0=B0=D0=B4?= =?UTF-8?q?=D0=B0=D1=87=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../__pycache__/__init__.cpython-313.pyc | Bin 137 -> 0 bytes praktikum/__pycache__/bun.cpython-313.pyc | Bin 1062 -> 0 bytes praktikum/__pycache__/burger.cpython-313.pyc | Bin 3220 -> 0 bytes .../__pycache__/database.cpython-313.pyc | Bin 2429 -> 0 bytes .../__pycache__/ingredient.cpython-313.pyc | Bin 1384 -> 0 bytes .../ingredient_types.cpython-313.pyc | Bin 365 -> 0 bytes .../test_bun.cpython-313-pytest-9.0.2.pyc | Bin 2867 -> 0 bytes .../test_burger.cpython-313-pytest-9.0.2.pyc | Bin 9271 -> 0 bytes ...test_database.cpython-313-pytest-9.0.2.pyc | Bin 6631 -> 0 bytes ...st_ingredient.cpython-313-pytest-9.0.2.pyc | Bin 4015 -> 0 bytes tests/test_bun.py | 13 ++++++----- tests/test_ingredient.py | 21 ++++++++++++------ 12 files changed, 22 insertions(+), 12 deletions(-) delete mode 100644 praktikum/__pycache__/__init__.cpython-313.pyc delete mode 100644 praktikum/__pycache__/bun.cpython-313.pyc delete mode 100644 praktikum/__pycache__/burger.cpython-313.pyc delete mode 100644 praktikum/__pycache__/database.cpython-313.pyc delete mode 100644 praktikum/__pycache__/ingredient.cpython-313.pyc delete mode 100644 praktikum/__pycache__/ingredient_types.cpython-313.pyc delete mode 100644 tests/__pycache__/test_bun.cpython-313-pytest-9.0.2.pyc delete mode 100644 tests/__pycache__/test_burger.cpython-313-pytest-9.0.2.pyc delete mode 100644 tests/__pycache__/test_database.cpython-313-pytest-9.0.2.pyc delete mode 100644 tests/__pycache__/test_ingredient.cpython-313-pytest-9.0.2.pyc diff --git a/praktikum/__pycache__/__init__.cpython-313.pyc b/praktikum/__pycache__/__init__.cpython-313.pyc deleted file mode 100644 index 14ff2101c8ebce3f4d8d8345582246d0ea992173..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 137 zcmey&%ge<81lMvTvOx4>5CH>>P{wB#AY&>+I)f&o-%5reCLr%KNa~h`i&czEW^5Ln;+(t2AW zDb$+PrM%1=E4$fa!u2>;g0DMtLGt9>>8?ut(xo00w`{PxvQ($d8kK zi@#5H_%T08Uh=Q}$b$NDav-Y7Hvh;E0ecmLzqz#Q(Bj`f;WO{^6FksMUZ7B)_xKn7 z0kF@HIBWv7Q4J8}kHofQ7cTB6I~5~UgKEP~wHEVgZcPDa*~0lCAKn6JljSRZ)*;K5 zj}H;6PP)=kS7sV8mIEj&sT#We+TTiuGL~hfbBhn0MX%*I8{|QJPM|#3~ufgGM+BuuV>Hl=cg!Mf0^W1WwW%bEB9AwF^&B#9X*HA!(Cm zn>9$3Fk-2;<~OSm!@09-2t|OjNNE^VBdjr4`vAM-m#k>|z>u|@9eY3^yepnz80eBV+nGBf5C%C(Gdm0Ckeeep qR9b>hBouF>EIxhweIAaU^@v$e6IabZGEgK*I+v#<^EUwy2mSyctr&g) diff --git a/praktikum/__pycache__/burger.cpython-313.pyc b/praktikum/__pycache__/burger.cpython-313.pyc deleted file mode 100644 index 2b17876a41569c1a402ecdb87aada9b9cef4003b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3220 zcmbVO-EY%Y6u-7($4S#B{i0og)|3hw0%cucu=2SATUSPfYE`PB!z!(*45<^Y9X|TR z#{`8jAs*2Bu!kZ|V!U-@-54Joe}b(5L6(q^rakahJ|tdujvXg$3P{_La_>3k-gEBn z{_eRqeqCN3CLm9e^+$PukiXIJC6HHMZw2K#k%`RgB|QvfB-GixY!62{SLgNydU(o9 zq@FYrInY34ek1EeQ(;ty2VbBOXPm&-nqflEb!Bwu!e8m5R2|V&-5mC&du?Im6JTE_ zgM>0Np{&eMPG)I9<{Aj)<-nk@ftC3Nax_4LvM?xu6?CnTEDnaj3b|GpT5=dX0lCce zMC8a|IgFRPRs~p5uqs?DCP!)IXe?go2wfREs?rxh0Fh~B2nkz1TC>(~){J$}z9Lz_ z*yrst)@^GB+Ud5ib**Si_E~GzK5L(Y`FHGdl6A-W!wsilXV7sVGj=JIXfS5rsTPB{XNq)9Sj3 zz!mZ7y7d!*$720!1V$s!4CgBt9i*^}7#P>dK&-fjQ9|(!#Thp$&e967T;0GZNus!# zBO0oyz{ZRM7~fG1!v+=^f?4vtNULyuxVZlXNRUgH&rVRT1Al$cmr5VbD3N|!@GZbzF*Gs)RQh+-sm;^5(Cvm{1N#soIkDar>vLk0EjCSs zABzcZTfC-^sHYa}sK9L_#J+Dw{YV!HUaD5)|qLGg<7|#?i zM`F3iGCQ(tvfqxZ^w5TM^(5p$#Pb=2m(n`}tb+F;e%BccNbfu?9@3OZ@wEJxw0LS< z{?s(xP^sx~=~Oz-d1Z%W&?aaM#4Gv57cC`ZNuH1r|1ykR4b9>s4CNAA?8KH_VuzjB z@sQ6ZzIZHt>9HhG)yz7W$L&cYn|YqH#FuN);wxhGtu)jQkkob+qLm* zZNiQuF7J8Ck)??_fy8PjA}*l|h!i2MOXPjHz3_e_A>b;N57AHo|JEJcdgcRU_9B`6 zOdmc&B_eYNL%yq@?JM*3V(-)Kzb}3GsFa952e1Sn3+|{y=FQ+cct4j!_U-qN@15xW zA0I*oS6tye`wjxr_;i;@5oZTm%pr??_hnh2?ODH$g5HjD@`97^NN(#!zvDEnAC9x%+qPr;ghM8D)s6!a5Saq z`4_(k5M0%uX4m%?~?O^NKp}!-v3_g$Bx6S~X?fJayw#ZuMq+_2%sAPHWYc zJD*yOUDonl6Tt=LU46CpQtxEnPux^bu4R+mvMJm0Syt-INjq(6XIAR6nsz;Ge|R9b zXTaVwklk~@+I`SE_>Hyn(36Pb--S@@YQ?3B$t6>Po8k>IC$-yBdsgbOnl?;#TXowW ziQAuwQFlt+RL#xC8;#i&?UwY3RoC%I-0(bFef9LE)01`C=n6|*;od2Vb=w=S!jA%E z5E#dz>UQegI@J-bQ-!1O0otmPr_&wm! w;3D4+fyLc8;#QC0?X(L9@bkmK;+^9dhIvNn{vpesk;Gde&NRP*4=4}Jzu)BfoB#j- diff --git a/praktikum/__pycache__/database.cpython-313.pyc b/praktikum/__pycache__/database.cpython-313.pyc deleted file mode 100644 index c848bc940c346d1923344232cf608f75de963f8f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2429 zcmb_dU1%It6uvV%J9B6AM@?fk(Yj+5?2=@IU=c(_V^Yl~EH$$$lq_5(yVGQv$?SS( zR!N>(L1|IwQ$WOr2tK55Em%~vF^_qiW!ENLC<@|3-eM#6)pKWdvrW5-l)WtHp1=Fe zIp>~x_OPcXhG5;b2BifmXq*>k#B_v40zNV$rK2<& z@Y0N&R;ZH36l*AsP9r@!jCA>|7=lrCQAy%`E+hpe&04Mpdt{>Gz!sZ!7O7dZOvg)# zY+yR`&fL`G^i(EGvKP)z5&f;)+f!`tQT4g$*;&vP!ViQr(hv^M0ke+shzdHQqAt*g zE>cO43?mxVrM#S1qTun0$fLX@Q5@*hhE5K2FXqsh4SxPl{_X0={+9o(e-rrcHUDRSORHW6>6X6*mfL~XEs(zhuOGC)@s59| z`dRgpRIDHXWOFIN@H`IxhT5&8ag;-L(-ulc-Z?aPWN9&TJdH=zJVyXLvz99> z`C?;wq{^!d6Jj}*M+iI794e`%st2&#en7m8_7cxul|EPZ#>THobsYZiGRO*c03D?i6a;TpjCe4o_^S{|kF!dpZd07o0tW+8`!V z)2mSD*tq035RA)VVAlU-ki7^umPrcq1o+UCK*EcoPXo((jSmgWHWqA?1Whn_bTh{d zr}#PEyKp~!{nuBot@=1lhd}Wp0numSAcXW3Y>$OB(E9Sj9r;|F$R4t50Oj@q2?E^h zOH}(3K28K7CdDv${<%!Dn>V6kteDV{rorzl48ecT((2?v@G9ompK^sm*w5U>Zb5Y;xk&2;spS08{v3!yklCK+S0w_4_P z;1RK&qnDS0>kI;9CtJE!y@H6@a61zLK+|o#_b}cw0N=`i;n%~uy+Oyo!28gB2FO7~ b5QKYZ@DFtA9vb--9l=19zR^vA(IhEygP0^kOlb~IqA*elW#wWI^mMonx;ZeKBu|)R5*9KgCYvFq zm~vh<75LPA_ zqtve09;HEY)TY^iQ-hH16;SKsWMXP3dNPp$HJN#>cfm=5FtfZms}zUy!HKqbXao=yOywOe)%XzC;7(IGpZ|h%~kvTuWV=2>$8puSCR@T_l3eBwoSaUnI}U zqsd?xZ800eX5%}c**c}=>Qdc7J4We?dco=MBq&|Bnd>=r#i~?cJ3{GFwFrjndMr?v zooc~jSbiolUPB989ZXW{dIire(t_tP`+427TuS$Pd_-3n&V^7|UiT5GE%Gy@s9Gl` ztJmMl9Rf@1o>#0SMoD^#A|> diff --git a/praktikum/__pycache__/ingredient_types.cpython-313.pyc b/praktikum/__pycache__/ingredient_types.cpython-313.pyc deleted file mode 100644 index c64b1d6d9491720599ff588da964bc85c3ed4560..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 365 zcmey&%ge<81lMvTvW@`h#~=<2FhUuh1%QmH48aUV48e>=jKNGrOzF&;ETu(2VXh1F zFKoTo0L1MVc3f<{u=~Q+3wtl@xUf~>Vxz*vCLnA7g$)<>T-c!iWbVDN8Km^W7LbAq zdx6sXE^N}{3U&;2c2#)PFd3-l!oG{m7aO_UJbipT{oKKVKy4d9rUU6+7dCL+Vg;+e z#ST^Dr^$SaJw84qKRG`BmMBnDkgJQQt6xZbNMwL(JVdQHx-eAlN`}uMKi)EMv5IlY zEXc{vg;Mc`F$G15*(I6TrMWSgdFe%|DVeExCGjPd1*ye)1(mlrY;yBcN^?@}ia_B9 m3aMfVAn}2jk&*Eu6AL5D2QCIlg$oR#H>8v=GKd#(03`u5Sc&8S diff --git a/tests/__pycache__/test_bun.cpython-313-pytest-9.0.2.pyc b/tests/__pycache__/test_bun.cpython-313-pytest-9.0.2.pyc deleted file mode 100644 index a6407118451491713ff7657dbb553f9c09e0e58e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2867 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 diff --git a/tests/__pycache__/test_database.cpython-313-pytest-9.0.2.pyc b/tests/__pycache__/test_database.cpython-313-pytest-9.0.2.pyc deleted file mode 100644 index a366592c2efe5e89444231769ee9acda9f5e94ca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6631 zcmeHM-ESMm5x*mk%gxEqR9bqmV(?_^!k6G!s$Cp~rsdfAO==-p(`tbyKjXMtCVNW2G2$3+C5DyaxbJ(*Eng>|%( zdP*myWLEZjskKugMiE^v2wwL*Bb8D@mpEJSz%0pjd`YgqQ;O+Bcw0H!*Wh~lo0IRZ zx1G?3oqMGr|4#c%M5*%ko+y3SeKrjD*~q)^b?>u?*Mnn4gtt$XeD}LRkkm(m z_^0$SeY}(k;y-eP_>Tx(;vB@E@HMa#unv2Xb(rd31z4Tlbx@yc9Znpt1CQ{ab=Z)! zlUFIeIQQhov8AOw`F8fj`TAB~bBF&J5b32fQd!NN$8%0|wc(G`OPsr)xh!6@Y^JO? zY)@Yf;Zv^BPX5Z@otG<8*syy=IngreQ8vUP1LmVHt?P@&ISR ziOh!O8Me7;4SzfzaR~J9DO3gJ6rVJ-Riya#c&tXe$idYx1-#5Ys=$~g-@bHo<8@js zKWSYXqxe~4n63>C=7#i zwdPfAmnCZsNVsgua6fPwwTdrlY}A}}v*uqp8!}w;hJ_l~__814s$;)JsYBT*A?siB4%s|DgOerQKq<7?FNfg)+v4h*$8^UgY~Ourx@)Nc!wKVjCOt< z70X6Dff!f4z^|4o$mLu#osKl7U3~re#cI9gYz8MIcO7Hr`e;;wT}-CF#d18RA63n6 zz#&>*gW5*fq0}mSaBkQTce~=xWEZ0Qm&}pp<445(2kc7zB>j8r^r!D{#~!LDJ8HV6 zrrYYww(_+)akud4R+CKMU-se7Cmk})k2aa!-U@r1ctEEA>V~{lPmi;|Ak%jXQ3=t5 zsX`rSzP}vGgaoi3s;BNQ-?`N!*^YX)rJe<%sh(}C=YZH*^P#0?J231Y`#5}#(+4EG zeT$QAe^!JJM1a4u#@T%s+SPb)nnY{*Ap&Bj>_bb{IwUyuad?Jz4~T|#ais0fiqL@w z@OR3b-G`w05SHjWHl?4#hx>R_it#z#l)}b;@Rsa&Q+m89#YZG)$D7jsV{&lvnUl1M z=SmKaleD0)GAKEKBu%Wt)04DQ&$SN6N!s_U10-oLTz!N|8pVPG#flYACq}CF2DK_x z%l2FfB`}FjAYi%^@Rzg>O%?bWL*A|*QAO^Kq8V`fC5XeH5~B1|Lv3<1h*5=|qVLzqGMIRMXN z&;f0fzKGm8gaw3`5U^ZBHH4QDeu3}`!m9`wgkJ(Yk#o>2aM_~B26!?NarG%V#l?X+ z#SyjOGP-|*?6{j*OipzsGp)%?dosH{f|gjRz7i9MC`KW~G!PHP6=-$bNLLmX{hw7R8xjUaU$zn&HYpHWUG}XDbIuFF| z6(3saVh4u(V;_g-IekDDw;?sck+wf8LI)zi-@U@weHhx!3%hw?H@~~mBmgZn-yy-V zPhc37V)uaL(Jqp0WY0zDKm_=^E1cbjq1}S8TM%{&yO){-prt~x799HohCwNI4@d#+ zBH2bZ*bV7G1o*p`IJ*x+yG3EQDC`z@SDOT&r4~CRIQ9t)gHr4skRsYevW;x88`6OY z@OM`^yAMG#&BJ}U2Y(=>7%}|ngJG~?!`O5x4JdIKY}7D*-!N-fk%69S7&ofa^=ehy zvK_;qIhao0z{l&fVYnXDBg%&9d9=FTfX594@IMaUi2o2$+yMB1#T5TR{fqRil1#k( zpA#gpzy(o88)8IMO#D{|`?0}mEE!&BfVxM9TDNG`v)E9`VyS@Vzj)Y0otihj>dnSx zM${GjDh_v}*EL4o;1_*?u7U&j;&$OV diff --git a/tests/__pycache__/test_ingredient.cpython-313-pytest-9.0.2.pyc b/tests/__pycache__/test_ingredient.cpython-313-pytest-9.0.2.pyc deleted file mode 100644 index bc8c0005f71d71ff401c427f1bc5ec53f1af1eae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4015 zcmd@XTW`~5^t0n6j?>oSQdXd2R)LL-E(Mmh+=|9VffmG2O{Pw*^vO-#;E}}HXJ^n( zY+N=#nzTLfwukMFy|J6bW%M`LDy-;}Hjwtj+qO)aw5OfVmpCnz5SQ%*%Q-&x@0|0U z&pEEQwn_-D!IK^Dt&Jh{8zaI?2$1?afLul@Qn^EjaNd(2j#<2dh6NH=d`W^NK*AqN z4vR$ec(FsNVTnk?X_8h@2kJtqum-8|Uf%ahT8dmI@qiIWG8~nLDn+7C8hXXf@U(sC z$bpf;eM5ssj^ShP9v#H$-uzpG^o7Oj{X>Tj1Fzt_^kFg}>c;`OjK;l~39oV_HZF{K z`8KN~G}5||W|Yd0C)JoL|2X}}S5gG#36M$VtV;p0$Yjk-&*2^St zRfN1S5^Sf>@u8XTY81$v%5yspB4nQ26sR2FCSkR)#%d#pW?LVJX5sS59H;W5T8{4x zbk*3H80s#ykl~V%jnsK@V=~sfaQyFsJ;(4-90unFAX)Ri|?qOZqTC zlmUfd+d>u~0c%Uf$`*Co`}dblZ^}rgl>uM5FJn_89m0nHIw41}cWtpwb)FX&Z(n ztP#2l7qn6d6TM0bX1S^nowk4&Pt=T(ZB#6pD4C#P(GF}KH*2LyPZbwS=7d(lEM%I( zmNum`543HsS0lr$3=(1zx&lv`q^#LkKUFPh70m{TABbu)A@SZw%I8W-KXZ|C?vqgpb{!2@p{XZ5f=h@*DM zR;Q`rRf_Ta`4YqiRIW0KA$VIS7VTL$fMy?Mz-Bz_SD1g!pua@4O8H8@TAOPhxFp?| zSI^5`uH5B_{f^uJf3sy1 z)nJ2{yHRA_VPxG`1Xu2!7lV6F1PMeIaR9#~cC*L=o*Pjh@FHW9B`t4@;J?|jiE6OH zix=5?S6=UkSw~(!CvODgO1mp(=f&WjW0H*x(ns!ySr%EK;zkq*z>hCk((*R*-)z}L zHP}Ck**a`9`UXC-(p1FWNx_&(7?;h-T1f}I1>^T?T8W(mpk$1v3}V?OqoP+#U?luQ zN`LtX(u+cCCmI9mm**`P2{gAT-)yvh_Z47|($Yda4x zLu)^P3+R44eR1sU*nGUxjdwaP?z;O@&grwA4^BDjrtiMg=WIXa%zWgm`}p@5w{9U5))Dvi|9X)1M{!Nn+UW)@ZP3GT;$5 zH;^7?xUx#L6Si@pR?bGp(SMJvSxV%+xUHtbc-bzj02O!pwckT_z#8lW#Oee9$#L90 Zgg!y%TYo{D@1gwPg2eUwi2!)X{R_pPEYJV| diff --git a/tests/test_bun.py b/tests/test_bun.py index 3236b9c8e..7e6643174 100644 --- a/tests/test_bun.py +++ b/tests/test_bun.py @@ -3,10 +3,13 @@ class TestBun: - @pytest.mark.parametrize("name, price", - [("Краторная булка N-200i", 1255), - ("Флюоресцентная булка R2-D3", 988)]) - def test_create_bun(self, name, price): - bun = Bun(name, price) + @pytest.mark.parametrize("name", ["Краторная булка N-200i", "Флюоресцентная булка R2-D3"]) + def test_get_name(self, name): + bun = Bun(name, 100) assert bun.get_name() == name + + + @pytest.mark.parametrize("price", [1255, 988]) + def test_get_price(self, price): + bun = Bun("Стандартная булка", price) assert bun.get_price() == price \ No newline at end of file diff --git a/tests/test_ingredient.py b/tests/test_ingredient.py index 9e777b6a9..69ea3a927 100644 --- a/tests/test_ingredient.py +++ b/tests/test_ingredient.py @@ -4,12 +4,19 @@ class TestIngridient: - @pytest.mark.parametrize("ingredient_type, name, price", - [(INGREDIENT_TYPE_SAUCE, "Соус традиционный галактический", 15), - (INGREDIENT_TYPE_FILLING, "Мясо бессмертных моллюсков Protostomia", 1337)]) - def test_ingridient_init_and_getters(self, ingredient_type, name, price): - ingredient = Ingredient(ingredient_type, name, price) - + @pytest.mark.parametrize("ingredient_type", [INGREDIENT_TYPE_SAUCE, INGREDIENT_TYPE_FILLING]) + def test_get_type(self, ingredient_type): + ingredient = Ingredient(ingredient_type, "Имя", 100) assert ingredient.get_type() == ingredient_type + + + @pytest.mark.parametrize("name", ["Соус традиционный галактический", "Мясо бессмертных молюсков"]) + def test_get_name(self, name): + ingredient = Ingredient(INGREDIENT_TYPE_SAUCE, name, 100) assert ingredient.get_name() == name - assert ingredient.get_price() == price + + + @pytest.mark.parametrize("price", [15, 1337]) + def test_get_price(self, price): + ingredient = Ingredient(INGREDIENT_TYPE_SAUCE, "Имя", price) + assert ingredient.get_price() == price \ No newline at end of file