All language subtitles for 012 Movie Store – Part 2_en

af Afrikaans
sq Albanian
am Amharic
ar Arabic
hy Armenian
az Azerbaijani
eu Basque
be Belarusian
bn Bengali
bs Bosnian
bg Bulgarian
ca Catalan
ceb Cebuano
ny Chichewa
zh-CN Chinese (Simplified)
zh-TW Chinese (Traditional)
co Corsican
hr Croatian
cs Czech
da Danish
nl Dutch
en English
eo Esperanto
et Estonian
tl Filipino
fi Finnish
fr French
fy Frisian
gl Galician
ka Georgian
de German
el Greek
gu Gujarati
ht Haitian Creole
ha Hausa
haw Hawaiian
iw Hebrew
hi Hindi
hmn Hmong
hu Hungarian Download
is Icelandic
ig Igbo
id Indonesian
ga Irish
it Italian
ja Japanese
jw Javanese
kn Kannada
kk Kazakh
km Khmer
ko Korean
ku Kurdish (Kurmanji)
ky Kyrgyz
lo Lao
la Latin
lv Latvian
lt Lithuanian
lb Luxembourgish
mk Macedonian
mg Malagasy
ms Malay
ml Malayalam
mt Maltese
mi Maori
mr Marathi
mn Mongolian
my Myanmar (Burmese)
ne Nepali
no Norwegian
ps Pashto
fa Persian
pl Polish
pt Portuguese
pa Punjabi
ro Romanian
ru Russian
sm Samoan
gd Scots Gaelic
sr Serbian
st Sesotho
sn Shona
sd Sindhi
si Sinhala
sk Slovak
sl Slovenian
so Somali
es Spanish
su Sundanese
sw Swahili
sv Swedish
tg Tajik
ta Tamil
te Telugu
th Thai
tr Turkish
uk Ukrainian
ur Urdu
uz Uzbek
vi Vietnamese
cy Welsh
xh Xhosa
yi Yiddish
yo Yoruba
zu Zulu
or Odia (Oriya)
rw Kinyarwanda
tk Turkmen
tt Tatar
ug Uyghur
Would you like to inspect the original subtitles? These are the user uploaded subtitles that are being translated: 1 00:00:00,180 --> 00:00:04,200 Now that we've identified every test case, the second step is to start unit testing. 2 00:00:06,540 --> 00:00:09,750 Your first task was to set up avoid method named set up. 3 00:00:11,450 --> 00:00:13,250 Public void setup. 4 00:00:16,020 --> 00:00:18,690 And we're going to give this method a before annotation. 5 00:00:20,210 --> 00:00:26,090 When you annotate a method with before it's going to run, before each test in this method is where 6 00:00:26,090 --> 00:00:31,760 you would initialize the variables that each test is going to depend on in this case, each test is 7 00:00:31,760 --> 00:00:36,620 going to depend on us setting the store equal to a new object of the store class. 8 00:00:38,880 --> 00:00:43,680 OK, now we can start, you know, testing, we're going to follow the order from requirements dot text. 9 00:00:44,160 --> 00:00:48,900 The first test case tells us to check if the story contains a movie after it's been added. 10 00:00:50,100 --> 00:00:53,880 So I'll create a unit test named the added test. 11 00:01:01,580 --> 00:01:03,320 Public void movie added. 12 00:01:10,670 --> 00:01:16,970 And checking if his store contains a movie depends on us adding the movie first, so we'll do that inside 13 00:01:16,970 --> 00:01:17,930 the before method. 14 00:01:19,450 --> 00:01:22,780 Stalked and movie will add a new movie. 15 00:01:28,860 --> 00:01:30,960 And it's going to be The Shawshank Redemption. 16 00:01:40,080 --> 00:01:40,710 Blu ray. 17 00:01:45,970 --> 00:01:46,990 Nine point to. 18 00:01:54,540 --> 00:01:57,270 We'll do the same thing here and The Godfather. 19 00:02:11,520 --> 00:02:15,030 The store doesn't have an ad method, so we need to go to store Java. 20 00:02:21,140 --> 00:02:23,060 Public void at movie. 21 00:02:28,790 --> 00:02:33,650 And the before method implies that ad movie should receive an object of the movie class. 22 00:02:38,720 --> 00:02:43,610 And here, I guess I'll just have to add a new copy of the movie Object Inside the Aerialists. 23 00:02:51,830 --> 00:02:55,270 OK, now how do we make sure the odd movie method is working as it should? 24 00:02:57,690 --> 00:03:02,580 Inside the movie and on unit test, we need to check if the story contains the movie object that was 25 00:03:02,580 --> 00:03:02,910 added. 26 00:03:04,060 --> 00:03:05,680 We're going to use a true. 27 00:03:13,860 --> 00:03:16,410 To check if the store contains The Godfather. 28 00:03:27,080 --> 00:03:31,370 We're going to assert the store contains the movie after adding its. 29 00:03:34,540 --> 00:03:40,450 And now inside Staudt Java, we need to write code to make the test fail, I'll create a public boolean 30 00:03:40,450 --> 00:03:42,070 method called Contains. 31 00:03:45,960 --> 00:03:49,920 And the unit test implies that our method needs to receive a movie object. 32 00:03:51,760 --> 00:03:56,590 And it's really nice that our unit test is basically telling us how to write our code, and here the 33 00:03:56,590 --> 00:04:01,990 only thing we can do is return a boolean that checks if this movie contains the movie parameter. 34 00:04:12,750 --> 00:04:14,270 OK, our test should fail. 35 00:04:19,050 --> 00:04:24,480 Which is fine, because that's the first step to writing a unit test, so it says that it was expecting 36 00:04:24,480 --> 00:04:26,840 true, but our unit test returns false. 37 00:04:27,510 --> 00:04:32,370 And this is where you ask yourself, why is my test failing if you put a breakpoint here? 38 00:04:41,860 --> 00:04:47,020 You can see that the store already contains two objects courtesy of our before method. 39 00:04:57,510 --> 00:04:58,920 Well, step inside the function. 40 00:05:02,300 --> 00:05:08,420 But remember, that contains uses the default equals method to compare movie objects, so it compares 41 00:05:08,420 --> 00:05:11,210 the reference of each movie against the movie parameter. 42 00:05:11,750 --> 00:05:16,260 The reference for passing in isn't equal to any of the references inside the array list. 43 00:05:16,610 --> 00:05:21,830 So ultimately contains determines that the area list doesn't contain the object being passed in. 44 00:05:27,640 --> 00:05:34,000 But if we create our own equals method for objects of the movie class and contains is going to use that 45 00:05:34,000 --> 00:05:34,660 one instead. 46 00:05:36,740 --> 00:05:39,890 So inside the movie class, we're going to customize the equals method. 47 00:05:46,020 --> 00:05:51,940 The equals method needs to return a boolean and receives an object, what's the type of that object? 48 00:05:51,960 --> 00:05:52,760 We don't know. 49 00:05:52,770 --> 00:05:54,030 It can be any object. 50 00:05:57,310 --> 00:06:01,510 But first, we're going to check if the object that we're comparing against is No. 51 00:06:02,960 --> 00:06:07,790 Because if it happens to be null, then there's no way it equals the movie object that's calling this 52 00:06:07,790 --> 00:06:10,460 method, otherwise it would have thrown a null pointer exception. 53 00:06:11,710 --> 00:06:16,750 And assuming that the movie object, is it no, we need to check if it isn't of type movie. 54 00:06:18,680 --> 00:06:22,850 And if the object isn't an instance of the movie class, we'll return false. 55 00:06:26,980 --> 00:06:32,770 OK, so at this point, the object, is it no, it is an instance of movie, so we can typecast it to 56 00:06:32,770 --> 00:06:33,520 type movie. 57 00:06:39,400 --> 00:06:44,500 And finally, we need to check if the objects fields are equal to the current object that's calling 58 00:06:44,500 --> 00:06:49,890 this method, we need to compare the name format, rating, selling price range, price and availability. 59 00:06:49,900 --> 00:06:54,430 We need to check if its fields are equal to the current object that's calling this method. 60 00:07:57,010 --> 00:07:58,180 And it passes. 61 00:08:17,700 --> 00:08:23,100 Here you can visualize that the contains method is using your equals method to compare each movie in 62 00:08:23,100 --> 00:08:23,880 the array list. 63 00:08:32,880 --> 00:08:37,110 This points to the current movie that's calling equals, and here's our parameter. 64 00:08:38,970 --> 00:08:40,409 The parameter is not no. 65 00:08:45,490 --> 00:08:47,020 It is an instance of movie. 66 00:08:48,360 --> 00:08:50,130 But their fields aren't equal. 67 00:08:55,450 --> 00:08:58,120 So equals returns false for the first element. 68 00:09:00,240 --> 00:09:01,380 And if you keep going. 69 00:09:07,460 --> 00:09:08,840 The parameter is not no. 70 00:09:11,230 --> 00:09:12,730 It is an instance of movie. 71 00:09:18,940 --> 00:09:22,630 And their fields are equal, so equal returns, true. 72 00:09:29,110 --> 00:09:33,220 And because equals returns true, contains returns true as well. 73 00:09:37,040 --> 00:09:38,720 So our unit test passes. 74 00:09:44,930 --> 00:09:50,300 All right, since the unit test passes, we can rest assured that our code doesn't have any bugs, but 75 00:09:50,480 --> 00:09:51,770 can it be refactored? 76 00:09:54,730 --> 00:09:57,760 No, because the code is as elegant as it's going to be. 7519

Can't find what you're looking for?
Get subtitles in any language from opensubtitles.com, and translate them here.