[{"data":1,"prerenderedAt":298},["ShallowReactive",2],{"term-a\u002Faaa-pattern":3,"related-a\u002Faaa-pattern":284},{"id":4,"title":5,"acronym":6,"body":7,"category":265,"description":266,"difficulty":267,"extension":268,"letter":269,"meta":270,"navigation":171,"path":271,"related":272,"seo":277,"sitemap":278,"stem":281,"subcategory":282,"__hash__":283},"terms\u002Fterms\u002Fa\u002Faaa-pattern.md","AAA Pattern","AAA",{"type":8,"value":9,"toc":259},"minimark",[10,15,19,23,26,30,248,252,255],[11,12,14],"h2",{"id":13},"eli5-the-vibe-check","ELI5 — The Vibe Check",[16,17,18],"p",{},"AAA stands for Arrange, Act, Assert. It's the recipe for writing a test: first set up the stuff you need (Arrange), then do the thing you're testing (Act), then check the result (Assert). Every good test follows this structure — it makes tests readable and clear.",[11,20,22],{"id":21},"real-talk","Real Talk",[16,24,25],{},"The Arrange-Act-Assert pattern structures a test into three clear phases. Arrange: set up preconditions and inputs. Act: execute the code under test. Assert: verify the expected outcome. This separation makes tests readable, maintainable, and communicates intent clearly.",[11,27,29],{"id":28},"show-me-the-code","Show Me The Code",[31,32,37],"pre",{"className":33,"code":34,"language":35,"meta":36,"style":36},"language-javascript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","test('calculates total with discount', () => {\n  \u002F\u002F Arrange\n  const cart = new ShoppingCart();\n  cart.add({ price: 100 });\n  cart.applyDiscount(0.1); \u002F\u002F 10% off\n\n  \u002F\u002F Act\n  const total = cart.getTotal();\n\n  \u002F\u002F Assert\n  expect(total).toBe(90);\n});\n","javascript","",[38,39,40,76,83,108,143,166,173,179,200,205,211,238],"code",{"__ignoreMap":36},[41,42,45,49,53,57,61,63,66,69,73],"span",{"class":43,"line":44},"line",1,[41,46,48],{"class":47},"s2Zo4","test",[41,50,52],{"class":51},"sTEyZ","(",[41,54,56],{"class":55},"sMK4o","'",[41,58,60],{"class":59},"sfazB","calculates total with discount",[41,62,56],{"class":55},[41,64,65],{"class":55},",",[41,67,68],{"class":55}," ()",[41,70,72],{"class":71},"spNyl"," =>",[41,74,75],{"class":55}," {\n",[41,77,79],{"class":43,"line":78},2,[41,80,82],{"class":81},"sHwdD","  \u002F\u002F Arrange\n",[41,84,86,89,92,95,98,101,105],{"class":43,"line":85},3,[41,87,88],{"class":71},"  const",[41,90,91],{"class":51}," cart",[41,93,94],{"class":55}," =",[41,96,97],{"class":55}," new",[41,99,100],{"class":47}," ShoppingCart",[41,102,104],{"class":103},"swJcz","()",[41,106,107],{"class":55},";\n",[41,109,111,114,117,120,122,125,128,131,135,138,141],{"class":43,"line":110},4,[41,112,113],{"class":51},"  cart",[41,115,116],{"class":55},".",[41,118,119],{"class":47},"add",[41,121,52],{"class":103},[41,123,124],{"class":55},"{",[41,126,127],{"class":103}," price",[41,129,130],{"class":55},":",[41,132,134],{"class":133},"sbssI"," 100",[41,136,137],{"class":55}," }",[41,139,140],{"class":103},")",[41,142,107],{"class":55},[41,144,146,148,150,153,155,158,160,163],{"class":43,"line":145},5,[41,147,113],{"class":51},[41,149,116],{"class":55},[41,151,152],{"class":47},"applyDiscount",[41,154,52],{"class":103},[41,156,157],{"class":133},"0.1",[41,159,140],{"class":103},[41,161,162],{"class":55},";",[41,164,165],{"class":81}," \u002F\u002F 10% off\n",[41,167,169],{"class":43,"line":168},6,[41,170,172],{"emptyLinePlaceholder":171},true,"\n",[41,174,176],{"class":43,"line":175},7,[41,177,178],{"class":81},"  \u002F\u002F Act\n",[41,180,182,184,187,189,191,193,196,198],{"class":43,"line":181},8,[41,183,88],{"class":71},[41,185,186],{"class":51}," total",[41,188,94],{"class":55},[41,190,91],{"class":51},[41,192,116],{"class":55},[41,194,195],{"class":47},"getTotal",[41,197,104],{"class":103},[41,199,107],{"class":55},[41,201,203],{"class":43,"line":202},9,[41,204,172],{"emptyLinePlaceholder":171},[41,206,208],{"class":43,"line":207},10,[41,209,210],{"class":81},"  \u002F\u002F Assert\n",[41,212,214,217,219,222,224,226,229,231,234,236],{"class":43,"line":213},11,[41,215,216],{"class":47},"  expect",[41,218,52],{"class":103},[41,220,221],{"class":51},"total",[41,223,140],{"class":103},[41,225,116],{"class":55},[41,227,228],{"class":47},"toBe",[41,230,52],{"class":103},[41,232,233],{"class":133},"90",[41,235,140],{"class":103},[41,237,107],{"class":55},[41,239,241,244,246],{"class":43,"line":240},12,[41,242,243],{"class":55},"}",[41,245,140],{"class":51},[41,247,107],{"class":55},[11,249,251],{"id":250},"when-youll-hear-this","When You'll Hear This",[16,253,254],{},"\"Structure your tests with AAA — it makes them readable for the whole team.\" \u002F \"What's the 'act' in this test? It's not clear.\"",[256,257,258],"style",{},"html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":36,"searchDepth":78,"depth":78,"links":260},[261,262,263,264],{"id":13,"depth":78,"text":14},{"id":21,"depth":78,"text":22},{"id":28,"depth":78,"text":29},{"id":250,"depth":78,"text":251},"testing","AAA stands for Arrange, Act, Assert.","beginner","md","a",{},"\u002Fterms\u002Fa\u002Faaa-pattern",[273,274,275,276],"Arrange Act Assert","Given When Then","Test Case","TDD",{"title":5,"description":266},{"changefreq":279,"priority":280},"weekly",0.7,"terms\u002Fa\u002Faaa-pattern",null,"hay-YvNk0hzo8WP9MUJg-LZoWxmHDujSt8iA_VqlcJ8",[285,288,291,295],{"title":273,"path":286,"acronym":282,"category":265,"difficulty":267,"description":287},"\u002Fterms\u002Fa\u002Farrange-act-assert","Arrange Act Assert is just the full name for AAA.",{"title":274,"path":289,"acronym":282,"category":265,"difficulty":267,"description":290},"\u002Fterms\u002Fg\u002Fgiven-when-then","Given When Then is AAA's cousin from the BDD world. Given = the setup situation. When = what the user\u002Fsystem does. Then = what should happen as a result.",{"title":276,"path":292,"acronym":276,"category":265,"difficulty":293,"description":294},"\u002Fterms\u002Ft\u002Ftdd","intermediate","TDD means you write the test BEFORE you write the code.",{"title":275,"path":296,"acronym":282,"category":265,"difficulty":267,"description":297},"\u002Fterms\u002Ft\u002Ftest-case","A test case is one specific scenario you want to check. 'Does the login work with a correct password?' — that's a test case.",1776518252199]