From 896beb2de39ae593f97abdcc830361e8ba7630ad Mon Sep 17 00:00:00 2001 From: root Date: Sun, 18 Feb 2024 20:58:25 +0000 Subject: [PATCH 01/13] I worked on adding features to my discord bot --- .gitignore | 1 + .gradle/7.3.3/checksums/checksums.lock | Bin 0 -> 17 bytes .gradle/7.3.3/checksums/md5-checksums.bin | Bin 0 -> 27347 bytes .gradle/7.3.3/checksums/sha1-checksums.bin | Bin 0 -> 40583 bytes .../dependencies-accessors.lock | Bin 0 -> 17 bytes .../dependencies-accessors/gc.properties | 0 .gradle/7.3.3/fileChanges/last-build.bin | Bin 0 -> 1 bytes .gradle/7.3.3/fileHashes/fileHashes.lock | Bin 0 -> 17 bytes .gradle/7.3.3/gc.properties | 0 .../buildOutputCleanup.lock | Bin 0 -> 17 bytes .gradle/buildOutputCleanup/cache.properties | 2 + .gradle/vcs-1/gc.properties | 0 bin/.gitignore | 2 + build/reports/tests/test/css/base-style.css | 179 ++++++++++++++++ build/reports/tests/test/css/style.css | 84 ++++++++ build/reports/tests/test/index.html | 92 +++++++++ build/reports/tests/test/js/report.js | 194 ++++++++++++++++++ build/test-results/test/binary/output.bin | 0 build/test-results/test/binary/output.bin.idx | Bin 0 -> 1 bytes build/test-results/test/binary/results.bin | 0 .../compileJava/previous-compilation-data.bin | Bin 0 -> 40178 bytes .../previous-compilation-data.bin | Bin 0 -> 43543 bytes .../examples/second_features/HighLowGame.java | 6 +- .../student/first_feature/FeatureOne.java | 28 +-- .../student/test/Nicholas/FeatureTest.java | 122 +++++++++++ 25 files changed, 685 insertions(+), 25 deletions(-) create mode 100644 .gradle/7.3.3/checksums/checksums.lock create mode 100644 .gradle/7.3.3/checksums/md5-checksums.bin create mode 100644 .gradle/7.3.3/checksums/sha1-checksums.bin create mode 100644 .gradle/7.3.3/dependencies-accessors/dependencies-accessors.lock create mode 100644 .gradle/7.3.3/dependencies-accessors/gc.properties create mode 100644 .gradle/7.3.3/fileChanges/last-build.bin create mode 100644 .gradle/7.3.3/fileHashes/fileHashes.lock create mode 100644 .gradle/7.3.3/gc.properties create mode 100644 .gradle/buildOutputCleanup/buildOutputCleanup.lock create mode 100644 .gradle/buildOutputCleanup/cache.properties create mode 100644 .gradle/vcs-1/gc.properties create mode 100644 bin/.gitignore create mode 100644 build/reports/tests/test/css/base-style.css create mode 100644 build/reports/tests/test/css/style.css create mode 100644 build/reports/tests/test/index.html create mode 100644 build/reports/tests/test/js/report.js create mode 100644 build/test-results/test/binary/output.bin create mode 100644 build/test-results/test/binary/output.bin.idx create mode 100644 build/test-results/test/binary/results.bin create mode 100644 build/tmp/compileJava/previous-compilation-data.bin create mode 100644 build/tmp/compileTestJava/previous-compilation-data.bin create mode 100644 src/test/java/org/jointheleague/features/student/test/Nicholas/FeatureTest.java diff --git a/.gitignore b/.gitignore index 19f55917..281d47b4 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,4 @@ src/main/java/org.jointheleague.Launcher.java .travis.yml run.sh appspec.yml +/.gradle/ diff --git a/.gradle/7.3.3/checksums/checksums.lock b/.gradle/7.3.3/checksums/checksums.lock new file mode 100644 index 0000000000000000000000000000000000000000..94825e36b30dabdfa85aec70a98d2f5ff4acc7fd GIT binary patch literal 17 VcmZR!H2-v^ZN||%3}C<%1OPjs1x)|| literal 0 HcmV?d00001 diff --git a/.gradle/7.3.3/checksums/md5-checksums.bin b/.gradle/7.3.3/checksums/md5-checksums.bin new file mode 100644 index 0000000000000000000000000000000000000000..e321ca7eaf75426ea3b696ba3af2608725b18073 GIT binary patch literal 27347 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 literal 0 HcmV?d00001 diff --git a/.gradle/7.3.3/gc.properties b/.gradle/7.3.3/gc.properties new file mode 100644 index 00000000..e69de29b diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock new file mode 100644 index 0000000000000000000000000000000000000000..37e076fd73ca73ff0b1330366cf507151a00d8df GIT binary patch literal 17 UcmZR!7O2|uu(RL?0|aOS05Z%3fB*mh literal 0 HcmV?d00001 diff --git a/.gradle/buildOutputCleanup/cache.properties b/.gradle/buildOutputCleanup/cache.properties new file mode 100644 index 00000000..262b54e7 --- /dev/null +++ b/.gradle/buildOutputCleanup/cache.properties @@ -0,0 +1,2 @@ +#Sun Feb 18 19:53:09 UTC 2024 +gradle.version=7.3.3 diff --git a/.gradle/vcs-1/gc.properties b/.gradle/vcs-1/gc.properties new file mode 100644 index 00000000..e69de29b diff --git a/bin/.gitignore b/bin/.gitignore new file mode 100644 index 00000000..7eed456b --- /dev/null +++ b/bin/.gitignore @@ -0,0 +1,2 @@ +/main/ +/test/ diff --git a/build/reports/tests/test/css/base-style.css b/build/reports/tests/test/css/base-style.css new file mode 100644 index 00000000..4afa73e3 --- /dev/null +++ b/build/reports/tests/test/css/base-style.css @@ -0,0 +1,179 @@ + +body { + margin: 0; + padding: 0; + font-family: sans-serif; + font-size: 12pt; +} + +body, a, a:visited { + color: #303030; +} + +#content { + padding-left: 50px; + padding-right: 50px; + padding-top: 30px; + padding-bottom: 30px; +} + +#content h1 { + font-size: 160%; + margin-bottom: 10px; +} + +#footer { + margin-top: 100px; + font-size: 80%; + white-space: nowrap; +} + +#footer, #footer a { + color: #a0a0a0; +} + +#line-wrapping-toggle { + vertical-align: middle; +} + +#label-for-line-wrapping-toggle { + vertical-align: middle; +} + +ul { + margin-left: 0; +} + +h1, h2, h3 { + white-space: nowrap; +} + +h2 { + font-size: 120%; +} + +ul.tabLinks { + padding-left: 0; + padding-top: 10px; + padding-bottom: 10px; + overflow: auto; + min-width: 800px; + width: auto !important; + width: 800px; +} + +ul.tabLinks li { + float: left; + height: 100%; + list-style: none; + padding-left: 10px; + padding-right: 10px; + padding-top: 5px; + padding-bottom: 5px; + margin-bottom: 0; + -moz-border-radius: 7px; + border-radius: 7px; + margin-right: 25px; + border: solid 1px #d4d4d4; + background-color: #f0f0f0; +} + +ul.tabLinks li:hover { + background-color: #fafafa; +} + +ul.tabLinks li.selected { + background-color: #c5f0f5; + border-color: #c5f0f5; +} + +ul.tabLinks a { + font-size: 120%; + display: block; + outline: none; + text-decoration: none; + margin: 0; + padding: 0; +} + +ul.tabLinks li h2 { + margin: 0; + padding: 0; +} + +div.tab { +} + +div.selected { + display: block; +} + +div.deselected { + display: none; +} + +div.tab table { + min-width: 350px; + width: auto !important; + width: 350px; + border-collapse: collapse; +} + +div.tab th, div.tab table { + border-bottom: solid #d0d0d0 1px; +} + +div.tab th { + text-align: left; + white-space: nowrap; + padding-left: 6em; +} + +div.tab th:first-child { + padding-left: 0; +} + +div.tab td { + white-space: nowrap; + padding-left: 6em; + padding-top: 5px; + padding-bottom: 5px; +} + +div.tab td:first-child { + padding-left: 0; +} + +div.tab td.numeric, div.tab th.numeric { + text-align: right; +} + +span.code { + display: inline-block; + margin-top: 0em; + margin-bottom: 1em; +} + +span.code pre { + font-size: 11pt; + padding-top: 10px; + padding-bottom: 10px; + padding-left: 10px; + padding-right: 10px; + margin: 0; + background-color: #f7f7f7; + border: solid 1px #d0d0d0; + min-width: 700px; + width: auto !important; + width: 700px; +} + +span.wrapped pre { + word-wrap: break-word; + white-space: pre-wrap; + word-break: break-all; +} + +label.hidden { + display: none; +} \ No newline at end of file diff --git a/build/reports/tests/test/css/style.css b/build/reports/tests/test/css/style.css new file mode 100644 index 00000000..3dc4913e --- /dev/null +++ b/build/reports/tests/test/css/style.css @@ -0,0 +1,84 @@ + +#summary { + margin-top: 30px; + margin-bottom: 40px; +} + +#summary table { + border-collapse: collapse; +} + +#summary td { + vertical-align: top; +} + +.breadcrumbs, .breadcrumbs a { + color: #606060; +} + +.infoBox { + width: 110px; + padding-top: 15px; + padding-bottom: 15px; + text-align: center; +} + +.infoBox p { + margin: 0; +} + +.counter, .percent { + font-size: 120%; + font-weight: bold; + margin-bottom: 8px; +} + +#duration { + width: 125px; +} + +#successRate, .summaryGroup { + border: solid 2px #d0d0d0; + -moz-border-radius: 10px; + border-radius: 10px; +} + +#successRate { + width: 140px; + margin-left: 35px; +} + +#successRate .percent { + font-size: 180%; +} + +.success, .success a { + color: #008000; +} + +div.success, #successRate.success { + background-color: #bbd9bb; + border-color: #008000; +} + +.failures, .failures a { + color: #b60808; +} + +.skipped, .skipped a { + color: #c09853; +} + +div.failures, #successRate.failures { + background-color: #ecdada; + border-color: #b60808; +} + +ul.linkList { + padding-left: 0; +} + +ul.linkList li { + list-style: none; + margin-bottom: 5px; +} diff --git a/build/reports/tests/test/index.html b/build/reports/tests/test/index.html new file mode 100644 index 00000000..159781f2 --- /dev/null +++ b/build/reports/tests/test/index.html @@ -0,0 +1,92 @@ + + + + + +Test results - Test Summary + + + + + +
+

Test Summary

+
+ + + + + +
+
+ + + + + + + +
+
+
0
+

tests

+
+
+
+
0
+

failures

+
+
+
+
0
+

ignored

+
+
+
+
-
+

duration

+
+
+
+
+
+
-
+

successful

+
+
+
+
+ +
+

Classes

+ + + + + + + + + + + + +
ClassTestsFailuresIgnoredDurationSuccess rate
+
+
+ +
+ + diff --git a/build/reports/tests/test/js/report.js b/build/reports/tests/test/js/report.js new file mode 100644 index 00000000..83bab4a1 --- /dev/null +++ b/build/reports/tests/test/js/report.js @@ -0,0 +1,194 @@ +(function (window, document) { + "use strict"; + + var tabs = {}; + + function changeElementClass(element, classValue) { + if (element.getAttribute("className")) { + element.setAttribute("className", classValue); + } else { + element.setAttribute("class", classValue); + } + } + + function getClassAttribute(element) { + if (element.getAttribute("className")) { + return element.getAttribute("className"); + } else { + return element.getAttribute("class"); + } + } + + function addClass(element, classValue) { + changeElementClass(element, getClassAttribute(element) + " " + classValue); + } + + function removeClass(element, classValue) { + changeElementClass(element, getClassAttribute(element).replace(classValue, "")); + } + + function initTabs() { + var container = document.getElementById("tabs"); + + tabs.tabs = findTabs(container); + tabs.titles = findTitles(tabs.tabs); + tabs.headers = findHeaders(container); + tabs.select = select; + tabs.deselectAll = deselectAll; + tabs.select(0); + + return true; + } + + function getCheckBox() { + return document.getElementById("line-wrapping-toggle"); + } + + function getLabelForCheckBox() { + return document.getElementById("label-for-line-wrapping-toggle"); + } + + function findCodeBlocks() { + var spans = document.getElementById("tabs").getElementsByTagName("span"); + var codeBlocks = []; + for (var i = 0; i < spans.length; ++i) { + if (spans[i].className.indexOf("code") >= 0) { + codeBlocks.push(spans[i]); + } + } + return codeBlocks; + } + + function forAllCodeBlocks(operation) { + var codeBlocks = findCodeBlocks(); + + for (var i = 0; i < codeBlocks.length; ++i) { + operation(codeBlocks[i], "wrapped"); + } + } + + function toggleLineWrapping() { + var checkBox = getCheckBox(); + + if (checkBox.checked) { + forAllCodeBlocks(addClass); + } else { + forAllCodeBlocks(removeClass); + } + } + + function initControls() { + if (findCodeBlocks().length > 0) { + var checkBox = getCheckBox(); + var label = getLabelForCheckBox(); + + checkBox.onclick = toggleLineWrapping; + checkBox.checked = false; + + removeClass(label, "hidden"); + } + } + + function switchTab() { + var id = this.id.substr(1); + + for (var i = 0; i < tabs.tabs.length; i++) { + if (tabs.tabs[i].id === id) { + tabs.select(i); + break; + } + } + + return false; + } + + function select(i) { + this.deselectAll(); + + changeElementClass(this.tabs[i], "tab selected"); + changeElementClass(this.headers[i], "selected"); + + while (this.headers[i].firstChild) { + this.headers[i].removeChild(this.headers[i].firstChild); + } + + var h2 = document.createElement("H2"); + + h2.appendChild(document.createTextNode(this.titles[i])); + this.headers[i].appendChild(h2); + } + + function deselectAll() { + for (var i = 0; i < this.tabs.length; i++) { + changeElementClass(this.tabs[i], "tab deselected"); + changeElementClass(this.headers[i], "deselected"); + + while (this.headers[i].firstChild) { + this.headers[i].removeChild(this.headers[i].firstChild); + } + + var a = document.createElement("A"); + + a.setAttribute("id", "ltab" + i); + a.setAttribute("href", "#tab" + i); + a.onclick = switchTab; + a.appendChild(document.createTextNode(this.titles[i])); + + this.headers[i].appendChild(a); + } + } + + function findTabs(container) { + return findChildElements(container, "DIV", "tab"); + } + + function findHeaders(container) { + var owner = findChildElements(container, "UL", "tabLinks"); + return findChildElements(owner[0], "LI", null); + } + + function findTitles(tabs) { + var titles = []; + + for (var i = 0; i < tabs.length; i++) { + var tab = tabs[i]; + var header = findChildElements(tab, "H2", null)[0]; + + header.parentNode.removeChild(header); + + if (header.innerText) { + titles.push(header.innerText); + } else { + titles.push(header.textContent); + } + } + + return titles; + } + + function findChildElements(container, name, targetClass) { + var elements = []; + var children = container.childNodes; + + for (var i = 0; i < children.length; i++) { + var child = children.item(i); + + if (child.nodeType === 1 && child.nodeName === name) { + if (targetClass && child.className.indexOf(targetClass) < 0) { + continue; + } + + elements.push(child); + } + } + + return elements; + } + + // Entry point. + + window.onload = function() { + initTabs(); + initControls(); + }; +} (window, window.document)); \ No newline at end of file diff --git a/build/test-results/test/binary/output.bin b/build/test-results/test/binary/output.bin new file mode 100644 index 00000000..e69de29b diff --git a/build/test-results/test/binary/output.bin.idx b/build/test-results/test/binary/output.bin.idx new file mode 100644 index 0000000000000000000000000000000000000000..f76dd238ade08917e6712764a16a22005a50573d GIT binary patch literal 1 IcmZPo000310RR91 literal 0 HcmV?d00001 diff --git a/build/test-results/test/binary/results.bin b/build/test-results/test/binary/results.bin new file mode 100644 index 00000000..e69de29b diff --git a/build/tmp/compileJava/previous-compilation-data.bin b/build/tmp/compileJava/previous-compilation-data.bin new file mode 100644 index 0000000000000000000000000000000000000000..1601ea01561136133676a2971aef668f4c679f9f GIT binary patch literal 40178 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 Date: Sun, 18 Feb 2024 21:00:58 +0000 Subject: [PATCH 02/13] I worked on adding features to my discord bot --- .../features/examples/second_features/HighLowGame.java | 2 +- .../features/student/first_feature/FeatureOne.java | 1 + .../features/student/test/Nicholas/FeatureTest.java | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/jointheleague/features/examples/second_features/HighLowGame.java b/src/main/java/org/jointheleague/features/examples/second_features/HighLowGame.java index b051eb08..1baccfbf 100644 --- a/src/main/java/org/jointheleague/features/examples/second_features/HighLowGame.java +++ b/src/main/java/org/jointheleague/features/examples/second_features/HighLowGame.java @@ -22,7 +22,7 @@ public void handle(MessageCreateEvent event){ String messageContent = event.getMessageContent(); //start the game with the command - if (messageContent.equals(COMMAND)) { + if (messageContent.equals(COMMAND)) { numberToGuess = random.nextInt(10) + 2; event.getChannel().sendMessage("I have picked a number between 1 and 100. Guess by using e.g. !highLow 5"); } diff --git a/src/main/java/org/jointheleague/features/student/first_feature/FeatureOne.java b/src/main/java/org/jointheleague/features/student/first_feature/FeatureOne.java index b1e94ba8..59776380 100644 --- a/src/main/java/org/jointheleague/features/student/first_feature/FeatureOne.java +++ b/src/main/java/org/jointheleague/features/student/first_feature/FeatureOne.java @@ -30,3 +30,4 @@ public void handle(MessageCreateEvent event) { } } + \ No newline at end of file diff --git a/src/test/java/org/jointheleague/features/student/test/Nicholas/FeatureTest.java b/src/test/java/org/jointheleague/features/student/test/Nicholas/FeatureTest.java index 27f6011f..88b9e926 100644 --- a/src/test/java/org/jointheleague/features/student/test/Nicholas/FeatureTest.java +++ b/src/test/java/org/jointheleague/features/student/test/Nicholas/FeatureTest.java @@ -26,7 +26,7 @@ class FeatureTest { private final String testChannelName = "test"; private final FeatureOne featureOne = new FeatureOne(testChannelName); - + private final ByteArrayOutputStream outContent = new ByteArrayOutputStream(); private final PrintStream originalOut = System.out; From a78680860845c142f72959cdfb376deff8d7abde Mon Sep 17 00:00:00 2001 From: root Date: Sun, 25 Feb 2024 20:56:45 +0000 Subject: [PATCH 03/13] I worked on the second feature for my discord bot --- .gradle/7.3.3/checksums/checksums.lock | Bin 17 -> 17 bytes .gradle/7.3.3/checksums/md5-checksums.bin | Bin 27347 -> 27347 bytes .gradle/7.3.3/checksums/sha1-checksums.bin | Bin 40583 -> 85235 bytes .../student/second_feature/FeatureTwo.java | 69 ++++++++++++++++++ 4 files changed, 69 insertions(+) create mode 100644 src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java diff --git a/.gradle/7.3.3/checksums/checksums.lock b/.gradle/7.3.3/checksums/checksums.lock index 94825e36b30dabdfa85aec70a98d2f5ff4acc7fd..67d1d684640904b8c5a55129cc7cebdfc513de7a 100644 GIT binary patch literal 17 VcmZR!H2-v^ZN||%3}C>r2mm|v1)l%_ literal 17 VcmZR!H2-v^ZN||%3}C<%1OPjs1x)|| diff --git a/.gradle/7.3.3/checksums/md5-checksums.bin b/.gradle/7.3.3/checksums/md5-checksums.bin index e321ca7eaf75426ea3b696ba3af2608725b18073..c67181844d997e286958146a60299e5fa06470b7 100644 GIT binary patch delta 1686 zcmXxke`wTo9LMn{YB+0l_jR}3#eSV+xaed?lNK&Ys{Lr2vv%ffZk?Mqcaf5z(WHe$ zN(-+aPg1(bn8Bol%Nkx-q`8o2qS1{RE}Cd)G-=@?rG?skKCiy_&pqz_eSW_8{oLL6 zM#r*7$FdH!SIs^@v0#wSs*u3|zqAGzs#=(N;i=@LoqEDt7ve0fHl3%3sE`DAazaRP zP1whh8XHGw782~X@Xq3xCLyi}IV`F*u{S}JkYtyOBSJrygb znC7A|&Ku1E%IeIPyyH~YnUzk6?Lq|yU7Qn^;izl3S-deX*|tPw8px^RZCgc1I*$gQO4DHG?0XcU6HDtI|8 zB=}9}#@}S)s#d080dQ(>I*LK-J*<0&4s@Xg{y!OO=wbd{eq32^%w6Z_`!kWk9= zLJl7Zg^URm-1@YQOL;&D@~qIx2SS)1Tx6}aagzIlFWDfBuva+4_rfLq6{fj2VprXu z%_1+Gw*?>H3XAz$DCh2G6X%t)R;bVXLhU5N*Fuaxg-w*Sgl@~kJ-66Lw!`sShfOVx zIm1p~Yq1Mcd?5_-yRe5l*V#h@)Cmb*5t4l7PJR{A}c_Abh59KLBY7nvXDCuQBtd&Vy8dFhGO<5QR9Fu}j1xi+*Mu!BX}9qfnuT6= z3wt;w^m9en$D$4!r)cUh8}_HP;hZ@%#vJx{m<{_+b41x`E(;eZ*kBi4rNJWLV~0@4 zkg$x4LMeGM69*on+M=kN?Jf=qy_^%?!P9BtqMfW1_On$O=72E5Ss~5*jW(WOg)qft zVTL}7;tEDLnynQF|Nk!EqA%)D+-0^_T*LA%bB5vwT|%7qg>9U&D0zgNLOEq|6PHA2 dkDGG_3w6$U5wcc09Ev-4WQL2~H_AMR{sYl9&}#qy delta 1686 zcmXxkaY&8@AGC_;+~yecTyER91oc8dV;Vp3qpu(VVg(7 z3hk$C>}N2Gx7W-289`}30XFU9UclBxZkqzKK&Lq8kyCk%DN^^ z>}yiyi=kG$L9?a#DuJL`dBe{Yp@&srfCoZ=rnhYq*k+Cpk@pdIar>Bljg#s%=kw1h3oM&xZ;tiq9R2|=2EI7yu zPM&<<#0!o11qUAq-J}E`zX^UEAsfedO_(DhB>6^IWJg%zUtx=mb9PmZQ6bNqP~cag zL|Lfv%8-pKge<;muKh#Jq=u}}!rww0ZNr^U*ADrfu&<|FZ1uVLc-Uq7t6Uwn3sc+{ z5*!FwUL3K9vIK=qJ`+}16H@#s6lp$h;}UNQRboPgABA%5$zYnahi6AE+UOSid@^b- zG9A)I9=V41l#5?R%|)iC_+8lyjUU*Bab6daToM*p5H`6ltku5KR@`B8KcsW`!gl2z z6GEA!Q01OQrkSeXuH8u{&bSE+9Uyqw7P@#O_-P-raqSr;1W5=X?g$YM>o_)U<7o!R z&4x2EZTOi61}?bBjGGN-;%q8Q@K8wOj@X53^b0%83VGIrBKtyt7cSViLcn4v$CWx( zg*_e!MVcl|yp-ppP-5C*xq&6Y$)3={(TgTt_RuACa9QXkEri&;XtuUI^8au773r{x zm!oED%TZ25?HQ(s3e(IBadH+bJv9N(Uv0NKTayLLyQjNxPDp94kphq>?kS zvD*&q*oATo+xbjw>=5sqCyoF~%J0o_1D4udc1i zwZ__Mhmw17s6SpZhhy8H!{IJT*LT$qx}m&zzk~2xCw&DEZG{QSPIBZu#0vh&&NYk7_MS$5l=D>fLdFo^_t)I6pb=;HJO#fr zQr~uI5C-OoU$Okk-p@57qnr0=3 zS(u(I`UAC^gMG})U5 z)jDEcNZISxlYe8Lf!_yc)RB!}*F9x>>Cw$=(O9I+8m#N#c-N`h?LpozljU;;&G~!U z+-t{?*NRr~J5MD2> zv1vXl&NuL!JNU$xaVXxcq~P1C+iiadDL{Py91@D9>u&~fTqb||3pqE%G+lpNw@t0; zq$=_*<4dhz@Y zM~Ti(|4HqETJ1 zm}VP4Hr(Bi_UAPe2R49)Zai<6=S;soU4h6+iXch%AO7}NRj;-V>*gV8@&;n`LZmyI zFCUrJBD#vCz9Q!$aYjJi{)-opx6*-XJ+Wl2$Cit~`ko{lr&6&1iZ)(2Fm&Brd}5q~ zJ?mLR5``BpZ`-5uY zy5p(MmHs=RnC;~q%0CS1$9zG)BpRCa#XN^oIyUos-Vu !Fw?yS`Y=XKlTQMcD0 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 delta 1044 zcmXw$T}&KR7>0M3;!jdUW9*zM>{Ot;R$6vv3p*5AXtjmil|Lb}6ezMJKm(TI4YG}? z(O9XyC}5rxLQET51=|Zs&7@7#EWI$)D>N~|v>KY2ups5X{Am-YhYKfp^30ht-<u?L5w|DI#-45>uh(Iu3K~=0jHEu`&R(6( zz26eqC(lm{a5GJ3O_J+Uxa<;axK#4pI>T;-Irnu&^bqA9l`EbQJN7Ho><<&0?x!JL zXFT0QZbmz!87i9@0+;tLUc*C=A-HGgypX9A%#=N5dT<@^(|JH4HcQ3GQfSE18I;6j z%UrSr9g;iQAzTMVd}sU5=c_Y*+e+DDsV|{_B8i6+3N2CDM^s@WDyW$h^iPIqm$KIUac^L{>9knb!A<|Ot-4~>fogVJl#j-@csC7ry-0R|qs@h%I_E{Acf2+CJN zL|5d@t04wf6~ diff --git a/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java b/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java new file mode 100644 index 00000000..d3409b2e --- /dev/null +++ b/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java @@ -0,0 +1,69 @@ +package org.jointheleague.features.student.second_feature; + +import java.util.Random; + +import org.javacord.api.event.message.MessageCreateEvent; +import org.jointheleague.features.help_embed.plain_old_java_objects.help_embed.HelpEmbed; +import org.jointheleague.features.templates.FeatureTemplate; + +public class FeatureTwo extends FeatureTemplate{ + public final String COMMAND = "!blackjack"; + private final Random random = new Random(); + int numberToGuess; + + public FeatureTwo(String channelName) { + super(channelName); + helpEmbed = new HelpEmbed(COMMAND, "Get as close to 21 as you can with your cards. 'Hit' means to ask for another card, stand means you are finished. Between us, whoever is closer to 21 wins!"); + } + + @Override + public void handle(MessageCreateEvent event){ + String messageContent = event.getMessageContent(); + + //start the game with the command + if (messageContent.equals(COMMAND)) { + String botCard = cardPicker(); + String yourCard = cardPicker(); + event.getChannel().sendMessage("My Card: " + botCard + "\n Your Card: " + yourCard + "\n !Hit or !Stand ?"); + } + + if(messageContent.equals("!Hit")) { + + } else if(messageContent.equals("!Stand")) { + + } + + + } + public String cardPicker() { + String cardName = ""; + numberToGuess = random.nextInt(10) + 2; + if(numberToGuess == 10) { + numberToGuess = random.nextInt(4); + if(numberToGuess == 0) { + cardName+="10"; + } else if(numberToGuess == 1) { + cardName+="Jack"; + } else if(numberToGuess == 2) { + cardName+="Queen"; + } else if(numberToGuess == 3) { + cardName+="King"; + } + } else if(numberToGuess == 11) { + cardName+="Ace"; + } else { + cardName+=(numberToGuess); + } + numberToGuess = random.nextInt(4); + if(numberToGuess == 0) { + cardName+=" of Hearts"; + } else if(numberToGuess == 1) { + cardName+=" of Diamonds"; + } else if(numberToGuess == 2) { + cardName+=" of Spades"; + } else if(numberToGuess == 3) { + cardName+=" of Clubs"; + } + return cardName; + } +} From 67075c301223a3c7c3b019590128ab2de2838700 Mon Sep 17 00:00:00 2001 From: root Date: Sun, 3 Mar 2024 20:57:52 +0000 Subject: [PATCH 04/13] I finished working on the second feature and started on its test class! --- .gitignore | 1 + .gradle/7.3.3/checksums/checksums.lock | Bin 17 -> 17 bytes .gradle/7.3.3/checksums/md5-checksums.bin | Bin 27347 -> 27347 bytes .gradle/7.3.3/checksums/sha1-checksums.bin | Bin 85235 -> 129887 bytes .gradle/7.3.3/fileHashes/fileHashes.lock | Bin 17 -> 17 bytes .../buildOutputCleanup.lock | Bin 17 -> 17 bytes .../compileJava/previous-compilation-data.bin | Bin 40178 -> 40310 bytes .../previous-compilation-data.bin | Bin 43543 -> 0 bytes .../student/second_feature/FeatureTwo.java | 73 ++++++- .../student/first_feature/FeatureOneTest.java | 2 +- .../second_feature/FeatureTwoTest.java | 185 ++++++++++++++++++ 11 files changed, 255 insertions(+), 6 deletions(-) delete mode 100644 build/tmp/compileTestJava/previous-compilation-data.bin create mode 100644 src/test/java/org/jointheleague/features/student/second_feature/FeatureTwoTest.java diff --git a/.gitignore b/.gitignore index 281d47b4..98ad63f6 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,4 @@ src/main/java/org.jointheleague.Launcher.java run.sh appspec.yml /.gradle/ +/build/ diff --git a/.gradle/7.3.3/checksums/checksums.lock b/.gradle/7.3.3/checksums/checksums.lock index 67d1d684640904b8c5a55129cc7cebdfc513de7a..98a924d741499b1bc5159acfd3eb3b3fd22d43d6 100644 GIT binary patch literal 17 VcmZR!H2-v^ZN||%3}C?a2>?7v1@Qm? literal 17 VcmZR!H2-v^ZN||%3}C>r2mm|v1)l%_ diff --git a/.gradle/7.3.3/checksums/md5-checksums.bin b/.gradle/7.3.3/checksums/md5-checksums.bin index c67181844d997e286958146a60299e5fa06470b7..6ef7c8a6ee042217a7862e8b1c6a1de92aafe93c 100644 GIT binary patch delta 1863 zcmX}se@xVM9LI6lU}0i`SBprN&1>O;jCIY5JK%n_j=Lkkjzl?ylT!||w598swshI7 zrImZyT8kD`o3(OX<6O9G=F&wISB+S(Y|_F-)0QrpwQzQRJ}>Y7xyQY~pXc|!-|yY` zJ35v(I+mAS8!ULGVB!H6-N7m&H$Sf_V=(Br@~I}p2|KTOpG#7Pr443n%`kB*cM)hd z&2h~(a8Zh~BxH*b+O6C{_GmWF5h=q3DaGQjDcn=ET6yx>rP&OJaf=?bx?+w>PX3Zy-2R9u>MB?vwegY^;B(2%AJR^4joKnb zi25zxkt*dPCCpR(g@#3Q~W2L zr)rgHy>sZ03fU_a^OaP}-%E|Kklb97g4ui276IZ?6r>2prA{tN zF_v`MB1XHkfjv@+BhqdzNZVPQutguO33Da<{q{;+S3t{p2k$1#mGEacq?JRQm42Xn zovo*6lKx?bRiKbTX(4B%Vs2V*ia;d|Rt;&kO2;@LWjLLim2{gTyUs6t#};Xl{n9iO z(mCcOZ83vKnq{L^sE`54$!OA?amcCP{xt^T4i@#8GY+{})?@Y)%04%xC~rwIPFjWU q=Cb6Zy4MupAYHv?-;qkY@42hUTkas;yPza{H$+OWeq;9iuKxicA**Bn delta 1863 zcmX}se`u6-0LSqr&2Zx6?rA^nV%zN`!^KW!G-=_Yq}q?RIcsO$=GK0Aa~CNY8ckYA zq_o)j@g~EIj2TQ?xUAuYMVbqVCK}zC;i8F#Mw1pUQd+2;-|wgA{<+tEpYQv*@AKS! zpYe&b@rkrUZ58Q#=cg7A(^*k$G{i5>enu*sTc14ToV4SfFxRCR%PY-XPY+8m;);~Xl4?_U`)QEk>~?iT8sxInOWqT<7^Tk2$zZ3( zrWuiDxhPHYMx&pS8gr%INh)hh?}XSPm2uG3IcWu+T01YyYH2&$q$memot1`ISZ9kk ztE8iBaWx=~F)k%ZUt^0YR!T{_q#2gC`8mACtlPQ3DUHu@)16ULZ~8mu)9&hBDavJZ+029*}}OD>d_h6y^t4Y3pqf=RWC6HcDf>C!OJY=@S1+vlK^c zdxI9MoDANUviVk8%HL8c_cWR!rn$0B?!Mfp?OOkq>;qSSuR>AB6kG8~Rq zJ8W+9-g*k;?Bca1TPOHJ8s>Lt4|i>_M~A49`gui)^O-yLtCS?G*%nhgF3s_hG|eZ{ zOzK%==H+IyxWy`;hh4qUVpg3Sv8%p)HzidL-?W%j=f?O+GrL*vjIDclQ0nJ7X^;=4 zqx>i(Qg_`?UaQ$-xwG8gYWo{>TKR(Pl|r19YPl|jQ+w1DzA&v)8%R-3NIhJWwz90< z7F%hQdg+t)a7-HHinNa<9kxi&&|&U`FJbRQW;*pzhy5MqPWVo9L^DrwS-L>pMq6K{ z&dQ(7PAQ)eX$2RhB66ap@IOYSRY5m9Tpg5pIVZh?r_&S#yI3vlXPY$20cni0Qj&$6 zY%#?uX@)J*90OK?GR8NVD-Hzp+rPy?t3#m6Tyda^m0jjMfe2kvjQ6GOoU$r>gqu<+ lB{5SJMreENoJ%-?X! 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 delta 1899 zcmZWpe^iuJ8ukt{AU2a4@O>k}7uk@K@_kb-qt0;*tMSMaQDiTa|C#bM%Dkf|&ftSNE*ixm*6&xqQg&-@6YD{PvTHyG53KZMX2rQJ)J_ zzWli;m9AELjjh5VyIO@VAKoJz$azSYhxQ1seCZ3}lC56|-ZPc`r780Jy~2ftG!s_0 zS6<)8-2677%D38tfy#8R{L6kGb?p}()Mq&Sof%C+KK>;Oc7?Y2|6sw9?P9HLZ5LbQ zx(;E;t`5N$pR`7f{E9tH{)#*mfAq@Hhls5^MCyZwgd*o1Chd=hS-bO571qi8V<+p< z@h?XAPj<*ex!`WZff&?qx;8q*S&yGmO^+z%zZy2cp!w6(X5h#fg9{JhZ{LCKC z+=}6h+cunhd3O+PUroSS#j~fXi0%q`^)@zXwbLuI)9bdguJcZ@L^j{aj6i6M9YOS! zb*#2;glLnmza!?#z$jj(;4V=uovT&QN_F&X~CgJ94H7T=-DKiyyuq%V#ky zIP(PF*{tErW)-$4|BX%c>4=-P0QQD-|K3?OVc6WL;aIMU7aJ4g>Zh5J!Gn`|3M`G9 z)SnTGKly39K*Cl{PMl46(KDN{^J5MA>}-_LPRv)ZbM_0kymipuPpi*X@%GjPH0J*m zfBHo8Pk)v@F5ag3*F3l0f~(s#WP21G4A~|XfAeg_`%UToKYJGrl~J*Rk5Krltc#&z zD^}!#F(OwkC}bnm#daZ8MQCz+5kJ3sewIbfcZhUXSn$`0d< zvet;es#B2ys5#|>vu7^qdJF`5JSYfoUIkR_3z%^KXH{gLqlC`+VC_|q-OG8@Yr_7^egu9Y_pftd?NgD{ z$648@;3WNt=gECO3j^mfQGa0z$}gI*T{?i^rH|0tZ=&e(64n#!53>9_WO)1T*~QjdjRB?Q8c^C#0gnn&RO_B z?VBO(n<3fj^7UoHN7);4^Q#;zh0CcA%HAtiyv9N245L1BL$a?7BTCtOWoJnC)^N(| zw)V@zMOF*7|Ade!A)!<9K5304ea{=h(?X%o6D^dsCVm&Q5fXFhppG+b*PA1_(F@05JIkuK)l5 literal 17 UcmZQxU9NG9p>*PA1_;On05F&YP5=M^ diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock index 37e076fd73ca73ff0b1330366cf507151a00d8df..4733c4aa5e725cd8ec4531fda9fe571ac720698e 100644 GIT binary patch literal 17 UcmZR!7O2|uu(RL?0|Yn&05awTng9R* literal 17 UcmZR!7O2|uu(RL?0|aOS05Z%3fB*mh diff --git a/build/tmp/compileJava/previous-compilation-data.bin b/build/tmp/compileJava/previous-compilation-data.bin index 1601ea01561136133676a2971aef668f4c679f9f..22004482a1a30e2eb51210362611b98751898469 100644 GIT binary patch literal 40310 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 KvK`MS`o949Ik+zX literal 40178 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 21) { + event.getChannel().sendMessage("Bust! You lose."); + } + else { + if(botValue > yourValue) { + event.getChannel().sendMessage("Bot's Total Card Value: " + botValue); + event.getChannel().sendMessage("Bot wins!"); + } else { + boolean end2 = false; + while(!end2) { + String botCard2 = cardPicker(); + botValue+=findValue(botCard2); + if(botValue == 20 || botValue == 21) { + if(botValue == yourValue) { + event.getChannel().sendMessage("Tie!"); + } else if(botValue > yourValue) { + event.getChannel().sendMessage("Bot wins!"); + } else if(botValue < yourValue) { + event.getChannel().sendMessage("You win!"); + } + end2 = true; + } else if(botValue > yourValue) { + event.getChannel().sendMessage("Bot wins!"); + end2 = true; + } else if(botValue > 21) { + event.getChannel().sendMessage("Bot busted! You win!"); + } + } + } + } + } } @@ -66,4 +104,29 @@ public String cardPicker() { } return cardName; } + public int findValue(String card) { + if(card.substring(0, 1).equals("2")) { + return 2; + } else if(card.substring(0, 1).equals("3")) { + return 3; + } else if(card.substring(0, 1).equals("4")) { + return 4; + } else if(card.substring(0, 1).equals("5")) { + return 5; + } else if(card.substring(0, 1).equals("6")) { + return 6; + } else if(card.substring(0, 1).equals("7")) { + return 7; + } else if(card.substring(0, 1).equals("8")) { + return 8; + } else if(card.substring(0, 1).equals("9")) { + return 9; + } else if(card.substring(0, 1).equals("10")) { + return 10; + } else if(card.substring(0, 3).equals("Ace")) { + return 11; + } else { + return 10; + } + } } diff --git a/src/test/java/org/jointheleague/features/student/first_feature/FeatureOneTest.java b/src/test/java/org/jointheleague/features/student/first_feature/FeatureOneTest.java index a7915549..7341005d 100644 --- a/src/test/java/org/jointheleague/features/student/first_feature/FeatureOneTest.java +++ b/src/test/java/org/jointheleague/features/student/first_feature/FeatureOneTest.java @@ -21,7 +21,7 @@ import static org.mockito.Mockito.never; public class FeatureOneTest { - private final String testChannelName = "test"; + private final String testChannelName = "FeatureOne"; private final FeatureOne featureOne = new FeatureOne(testChannelName); private final ByteArrayOutputStream outContent = new ByteArrayOutputStream(); diff --git a/src/test/java/org/jointheleague/features/student/second_feature/FeatureTwoTest.java b/src/test/java/org/jointheleague/features/student/second_feature/FeatureTwoTest.java new file mode 100644 index 00000000..ec99875d --- /dev/null +++ b/src/test/java/org/jointheleague/features/student/second_feature/FeatureTwoTest.java @@ -0,0 +1,185 @@ +package org.jointheleague.features.student.second_feature; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertNotEquals; +import static org.mockito.ArgumentMatchers.anyString; +import static org.mockito.Mockito.never; +import static org.mockito.Mockito.times; +import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.when; + +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; + +import org.javacord.api.entity.channel.TextChannel; +import org.javacord.api.event.message.MessageCreateEvent; +import org.jointheleague.features.examples.second_features.HighLowGame; +import org.jointheleague.features.help_embed.plain_old_java_objects.help_embed.HelpEmbed; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.mockito.Mock; +import org.mockito.MockitoAnnotations; + +public class FeatureTwoTest { + private final String testChannelName = "FeatureTwo"; + private final FeatureTwo featureTwo = new FeatureTwo(testChannelName); + + private final ByteArrayOutputStream outContent = new ByteArrayOutputStream(); + private final PrintStream originalOut = System.out; + + @Mock + private MessageCreateEvent messageCreateEvent; + + @Mock + private TextChannel textChannel; + + @BeforeEach + void setUp() { + MockitoAnnotations.openMocks(this); + System.setOut(new PrintStream(outContent)); + } + + @AfterEach + public void itShouldNotPrintToSystemOut() { + String expected = ""; + String actual = outContent.toString(); + + assertEquals(expected, actual); + System.out.println(actual); + System.setOut(originalOut); + } + + @Test + void itShouldHaveACommand() { + //Given + + //When + String command = featureTwo.COMMAND; + + //Then + assertNotEquals("", command); + assertNotEquals("!command", command); + assertNotNull(command); + } + + @Test + void itShouldHandleMessagesWithCommand() { + //Given + HelpEmbed helpEmbed = new HelpEmbed(featureTwo.COMMAND, "test"); + when(messageCreateEvent.getMessageContent()).thenReturn(featureTwo.COMMAND); + when(messageCreateEvent.getChannel()).thenReturn((textChannel)); + + //When + featureTwo.handle(messageCreateEvent); + + //Then + verify(textChannel, times(1)).sendMessage(anyString()); + } + + @Test + void itShouldNotHandleMessagesWithoutCommand() { + //Given + String command = ""; + when(messageCreateEvent.getMessageContent()).thenReturn(command); + + //When + featureTwo.handle(messageCreateEvent); + + //Then + verify(textChannel, never()).sendMessage(""); + } + + @Test + void itShouldHaveAHelpEmbed() { + //Given + + //When + HelpEmbed actualHelpEmbed = featureTwo.getHelpEmbed(); + + //Then + assertNotNull(actualHelpEmbed); + } + + @Test + void itShouldHaveTheCommandAsTheTitleOfTheHelpEmbed() { + //Given + + //When + String helpEmbedTitle = featureTwo.getHelpEmbed().getTitle(); + String command = featureTwo.COMMAND; + + //Then + assertEquals(command, helpEmbedTitle); + } + +//FEATURE-SPECIFIC TESTS + + @Test + void itShouldNotAcceptGuessIfGameIsNotStarted() { + //Given + String command = "!highLow 5"; + when(messageCreateEvent.getMessageContent()).thenReturn(command); + when(messageCreateEvent.getChannel()).thenReturn((textChannel)); + + //When + featureTwo.handle(messageCreateEvent); + + //Then + verify(textChannel, times(1)).sendMessage("Please start the game first using just the command"); + + } + + @Test + void itShouldTellTheUserIfTheirGuessIsTooLow() { + //Given + int guess = 1; + String command = "!highLow " + guess; + featureTwo.numberToGuess = 100; + when(messageCreateEvent.getMessageContent()).thenReturn(command); + when(messageCreateEvent.getChannel()).thenReturn((textChannel)); + + //When + featureTwo.handle(messageCreateEvent); + + //Then + verify(textChannel, times(1)).sendMessage(guess + " is too low. Guess again!"); + + } + + @Test + void itShouldTellTheUserIfTheirGuessIsTooHigh() { + //Given + int guess = 100; + String command = "!highLow " + guess; + featureTwo.numberToGuess = 1; + when(messageCreateEvent.getMessageContent()).thenReturn(command); + when(messageCreateEvent.getChannel()).thenReturn((textChannel)); + + //When + featureTwo.handle(messageCreateEvent); + + //Then + verify(textChannel, times(1)).sendMessage(guess + " is too high. Guess again!"); + + } + + @Test + void itShouldTellTheUserIfTheirGuessIsCorrect() { + //Given + int guess = 100; + String command = "!highLow " + guess; + featureTwo.numberToGuess = 100; + when(messageCreateEvent.getMessageContent()).thenReturn(command); + when(messageCreateEvent.getChannel()).thenReturn((textChannel)); + + //When + featureTwo.handle(messageCreateEvent); + + //Then + verify(textChannel, times(1)).sendMessage("Correct! The number I picked was " + guess); + } + + +} From 8d3b78162e858abded97c39905fa137712be6528 Mon Sep 17 00:00:00 2001 From: root Date: Sun, 17 Mar 2024 19:56:25 +0000 Subject: [PATCH 05/13] I finished the second feature --- .gradle/7.3.3/fileHashes/fileHashes.lock | Bin 17 -> 17 bytes .../buildOutputCleanup.lock | Bin 17 -> 17 bytes .../compileJava/previous-compilation-data.bin | Bin 40310 -> 40424 bytes .../student/second_feature/FeatureTwo.java | 28 ++++++---- .../student/third_feature/FeatureThree.java | 52 ++++++++++++++++++ .../second_feature/FeatureTwoTest.java | 41 +++++--------- 6 files changed, 81 insertions(+), 40 deletions(-) create mode 100644 src/main/java/org/jointheleague/features/student/third_feature/FeatureThree.java diff --git a/.gradle/7.3.3/fileHashes/fileHashes.lock b/.gradle/7.3.3/fileHashes/fileHashes.lock index 29a7d792b948f643f79805ab35ae47c598127624..f768bc5a2893e1cc93afa7faebe0549efa8d5b99 100644 GIT binary patch literal 17 VcmZQxU9NG9p>*PA1~6bW1^_T%1Qh@P literal 17 UcmZQxU9NG9p>*PA1_(F@05JIkuK)l5 diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock index 4733c4aa5e725cd8ec4531fda9fe571ac720698e..da2dd5297f35c8e99f9d6dbadbc4ab0cbc74bd5b 100644 GIT binary patch literal 17 UcmZR!7O2|uu(RL?0|dkZ05bptv;Y7A literal 17 UcmZR!7O2|uu(RL?0|Yn&05awTng9R* diff --git a/build/tmp/compileJava/previous-compilation-data.bin b/build/tmp/compileJava/previous-compilation-data.bin index 22004482a1a30e2eb51210362611b98751898469..4b771b782f6891e78784f266d21e4ab0273b45e6 100644 GIT binary patch literal 40424 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 BVaxyk literal 40310 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 KvK`MS`o949Ik+zX diff --git a/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java b/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java index 4f9dae1c..d2b3941c 100644 --- a/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java +++ b/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java @@ -10,7 +10,8 @@ public class FeatureTwo extends FeatureTemplate{ public final String COMMAND = "!blackjack"; private final Random random = new Random(); int numberToGuess; - + int yourValue = 0; + int botValue = 0; public FeatureTwo(String channelName) { super(channelName); helpEmbed = new HelpEmbed(COMMAND, "Get as close to 21 as you can with your cards. 'Hit' means to ask for another card, stand means you are finished. Between us, whoever is closer to 21 wins!"); @@ -19,8 +20,7 @@ public FeatureTwo(String channelName) { @Override public void handle(MessageCreateEvent event){ String messageContent = event.getMessageContent(); - int yourValue = 0; - int botValue = 0; + //start the game with the command if (messageContent.equals(COMMAND)) { String botCard = cardPicker(); @@ -29,15 +29,18 @@ public void handle(MessageCreateEvent event){ yourValue+=findValue(yourCard); event.getChannel().sendMessage("My Card: " + botCard + "\n Your Card: " + yourCard + "\n !Hit or !Stand ?"); } + else if(messageContent.equalsIgnoreCase("!Hit")) { + event.getChannel().sendMessage("Please start the game before using this command."); + } boolean end = false; - while(!end) - if(messageContent.equals("!Hit")) { + while(!end) { + if(messageContent.equalsIgnoreCase("!Hit")) { String yourCard2 = cardPicker(); yourValue+=findValue(yourCard2); event.getChannel().sendMessage("Your Next Card: " + yourCard2); event.getChannel().sendMessage("Your Total Card Value " + yourValue); event.getChannel().sendMessage("!Hit or !Stand ?"); - } else if(messageContent.equals("!Stand")) { + } else if(messageContent.equalsIgnoreCase("!Stand")) { end = true; if(yourValue > 21) { event.getChannel().sendMessage("Bust! You lose."); @@ -45,7 +48,7 @@ public void handle(MessageCreateEvent event){ else { if(botValue > yourValue) { event.getChannel().sendMessage("Bot's Total Card Value: " + botValue); - event.getChannel().sendMessage("Bot wins!"); + event.getChannel().sendMessage("Bot wins! Score: " + botValue); } else { boolean end2 = false; while(!end2) { @@ -53,23 +56,24 @@ public void handle(MessageCreateEvent event){ botValue+=findValue(botCard2); if(botValue == 20 || botValue == 21) { if(botValue == yourValue) { - event.getChannel().sendMessage("Tie!"); + event.getChannel().sendMessage("Tie! You both scored " + yourValue); } else if(botValue > yourValue) { - event.getChannel().sendMessage("Bot wins!"); + event.getChannel().sendMessage("Bot wins! Score: " + botValue); } else if(botValue < yourValue) { - event.getChannel().sendMessage("You win!"); + event.getChannel().sendMessage("You win! Score: " + botValue); } end2 = true; } else if(botValue > yourValue) { - event.getChannel().sendMessage("Bot wins!"); + event.getChannel().sendMessage("Bot wins! Score: " + botValue); end2 = true; } else if(botValue > 21) { - event.getChannel().sendMessage("Bot busted! You win!"); + event.getChannel().sendMessage("Bot busted! You win! Score: " + botValue); } } } } } + } } diff --git a/src/main/java/org/jointheleague/features/student/third_feature/FeatureThree.java b/src/main/java/org/jointheleague/features/student/third_feature/FeatureThree.java new file mode 100644 index 00000000..d4e3a281 --- /dev/null +++ b/src/main/java/org/jointheleague/features/student/third_feature/FeatureThree.java @@ -0,0 +1,52 @@ +package org.jointheleague.features.student.third_feature; + +import org.javacord.api.event.message.MessageCreateEvent; +import org.jointheleague.features.abstract_classes.Feature; +import org.jointheleague.features.examples.third_features.plain_old_java_objects.cat_facts_api.CatWrapper; +import org.jointheleague.features.help_embed.plain_old_java_objects.help_embed.HelpEmbed; +import org.springframework.web.reactive.function.client.WebClient; + +import reactor.core.publisher.Mono; + +public class FeatureThree extends Feature { + + public final String COMMAND = "!catFactApi"; + + private WebClient webClient; + private static final String baseUrl = "https://meowfacts.herokuapp.com/"; + + public FeatureThree(String channelName) { + super(channelName); + helpEmbed = new HelpEmbed(COMMAND, "Example of using an API to get information from another service. This returns a cat fact"); + + //build the WebClient + this.webClient = WebClient + .builder() + .baseUrl(baseUrl) + .build(); + } + + @Override + public void handle(MessageCreateEvent event) { + String messageContent = event.getMessageContent(); + if (messageContent.startsWith(COMMAND)) { + String catFact = getFact(); + event.getChannel().sendMessage(catFact); + } + } + public String getFact() { + + //Make the request, accepting the response as a plain old java object you created + + + //collect the response into a plain old java object + + //get the cat fact from the response + + //send the message + } + + public void setWebClient(WebClient webClient) { + this.webClient = webClient; + } +} diff --git a/src/test/java/org/jointheleague/features/student/second_feature/FeatureTwoTest.java b/src/test/java/org/jointheleague/features/student/second_feature/FeatureTwoTest.java index ec99875d..680deff0 100644 --- a/src/test/java/org/jointheleague/features/student/second_feature/FeatureTwoTest.java +++ b/src/test/java/org/jointheleague/features/student/second_feature/FeatureTwoTest.java @@ -119,7 +119,7 @@ void itShouldHaveTheCommandAsTheTitleOfTheHelpEmbed() { @Test void itShouldNotAcceptGuessIfGameIsNotStarted() { //Given - String command = "!highLow 5"; + String command = "!Hit"; when(messageCreateEvent.getMessageContent()).thenReturn(command); when(messageCreateEvent.getChannel()).thenReturn((textChannel)); @@ -127,33 +127,18 @@ void itShouldNotAcceptGuessIfGameIsNotStarted() { featureTwo.handle(messageCreateEvent); //Then - verify(textChannel, times(1)).sendMessage("Please start the game first using just the command"); + verify(textChannel, times(1)).sendMessage("Please start the game before using this command."); } - @Test - void itShouldTellTheUserIfTheirGuessIsTooLow() { - //Given - int guess = 1; - String command = "!highLow " + guess; - featureTwo.numberToGuess = 100; - when(messageCreateEvent.getMessageContent()).thenReturn(command); - when(messageCreateEvent.getChannel()).thenReturn((textChannel)); - - //When - featureTwo.handle(messageCreateEvent); - - //Then - verify(textChannel, times(1)).sendMessage(guess + " is too low. Guess again!"); - - } + @Test - void itShouldTellTheUserIfTheirGuessIsTooHigh() { + void itShouldTellTheUserIfTheyLose() { //Given - int guess = 100; - String command = "!highLow " + guess; - featureTwo.numberToGuess = 1; + String command = "!Hit"; + featureTwo.yourValue = 20; + featureTwo.botValue = 21; when(messageCreateEvent.getMessageContent()).thenReturn(command); when(messageCreateEvent.getChannel()).thenReturn((textChannel)); @@ -161,16 +146,16 @@ void itShouldTellTheUserIfTheirGuessIsTooHigh() { featureTwo.handle(messageCreateEvent); //Then - verify(textChannel, times(1)).sendMessage(guess + " is too high. Guess again!"); + verify(textChannel, times(1)).sendMessage("You lose! Score: " + featureTwo.botValue); } @Test - void itShouldTellTheUserIfTheirGuessIsCorrect() { + void itShouldTellTheUserIfTheyWin() { //Given - int guess = 100; - String command = "!highLow " + guess; - featureTwo.numberToGuess = 100; + String command = "!Hit"; + featureTwo.yourValue = 21; + featureTwo.botValue = 20; when(messageCreateEvent.getMessageContent()).thenReturn(command); when(messageCreateEvent.getChannel()).thenReturn((textChannel)); @@ -178,7 +163,7 @@ void itShouldTellTheUserIfTheirGuessIsCorrect() { featureTwo.handle(messageCreateEvent); //Then - verify(textChannel, times(1)).sendMessage("Correct! The number I picked was " + guess); + verify(textChannel, times(1)).sendMessage("You win! Score: " + featureTwo.yourValue); } From ac47c7d4b9968a6d4c49b766fb9ef6dbaf4fe304 Mon Sep 17 00:00:00 2001 From: root Date: Sun, 24 Mar 2024 19:57:05 +0000 Subject: [PATCH 06/13] I finished working on my third feature. --- .gradle/7.3.3/checksums/checksums.lock | Bin 17 -> 17 bytes .gradle/7.3.3/checksums/md5-checksums.bin | Bin 27347 -> 27347 bytes .gradle/7.3.3/checksums/sha1-checksums.bin | Bin 129887 -> 149921 bytes .gradle/7.3.3/fileHashes/fileHashes.lock | Bin 17 -> 17 bytes .../buildOutputCleanup.lock | Bin 17 -> 17 bytes .../compileJava/previous-compilation-data.bin | Bin 40424 -> 40756 bytes .../jointheleague/discord_bot/DiscordBot.java | 4 + .../examples/second_features/HighLowGame.java | 2 +- .../student/third_feature/FeatureThree.java | 17 +- .../bored_api/FeatureThreeWrapper.java | 19 +++ .../third_feature/FeatureThreeTest.java | 158 ++++++++++++++++++ 11 files changed, 191 insertions(+), 9 deletions(-) create mode 100644 src/main/java/org/jointheleague/features/student/third_features/plain_old_java_objects/bored_api/FeatureThreeWrapper.java create mode 100644 src/test/java/org/jointheleague/features/student/third_feature/FeatureThreeTest.java diff --git a/.gradle/7.3.3/checksums/checksums.lock b/.gradle/7.3.3/checksums/checksums.lock index 98a924d741499b1bc5159acfd3eb3b3fd22d43d6..46654fd166bec5308a5648a51cca818c47027906 100644 GIT binary patch literal 17 VcmZR!H2-v^ZN||%3}C?N1OPjq1w;S< literal 17 VcmZR!H2-v^ZN||%3}C?a2>?7v1@Qm? diff --git a/.gradle/7.3.3/checksums/md5-checksums.bin b/.gradle/7.3.3/checksums/md5-checksums.bin index 6ef7c8a6ee042217a7862e8b1c6a1de92aafe93c..6f36058fec27dc0d85d2ecad606d11f37295e4f0 100644 GIT binary patch delta 1677 zcmXxje@xVM9LI5ib7@|sJ6c4ru1O0Q@nccZy4ISu?j*RwAkjPJh*J)-#AWN6wsO&= zg^TvoMXS~*R%_*=kxQ4GxNs@zvLQUttbrE4Ys;~JifHwh8WeMGeLjQ!T<61NC&&GzISxqs%j~r@pldWx<^)rD5HQ=O zTpSS=Gh;D1%d(Z`*5pOP!Z^DureYk@$}m@jUY1tdbH-^9uCP-O9<51ot~PqMYv44ve& zS~GO=G-quw?PXEW6w~;E=FW5#n}cTWw2wZ)&!`Y#en{pkzcS68^)}v3ov@uZggE9xV^!|vw2htUS1VS_*z)OZ$cHGXKY;0 z6G9^|3o*VBqWmgs=cd&*j`Nt%#TH=`p9%@agx%cGXya}k7CL!O_?C}^0e;G?WUaCB zEcaVnbF)Fn<2}L4F`s%(Fi?dN^F|;f09D+)eOi#2(bocfyDKDRgniI(w^^8sT+b z6T0~(v+}!ekXzT=c!(#33%nwn;>!%qS)}H1OOuHmJT5HY#U}HRsbW2(YbO;eJq$IO zhfJ08i?T`sHOq_PpEaXB4M}#6~1TV{4Y+OKCsAQM0fYg*A!Y_n$2IWH^QqhD z;ggsdIGx~tvILif9tt=n*%Ubw)L zR@+nmux zvZFlIW>1LICUo$Du$7Y*IYnF-3aDr|agL9cc5|kyTxTv^OV%n61MQy0&Y~~#i=1oe Ee-Hxc*8l(j delta 1677 zcmXxke`wTo9LI4-8_irbIis~48D2PP-5Om#cem|+M0dB}cFXCVZfmFek)_e13yqWv ziJtRHr!^@m%46Y^2g&JyBgdqm@p;R|HX0 zRz1&g3*Qzl3UOA)?9>Da3txnN8ky#Zkl})mW@Wtz`{rn~@aMBfBMThPjhxfSEM*NQ z>@TNTNU=+ZGb*%jR;c5pL@8B`rXPPD(MDUjpY6gR2Xi=+n_AjrGZTcGO!IyQnoQGv z-fc2X`%g1t6E!6)X*P)(e9dO2#>>`bQ|n+@sAE!yQ_!O9T`e{nrmw|jQ&c`&%Apps z!ufR4^rkxw74cecUT}c|_R80U^cLLN9si zY7Is$QSPI`(Q^e(cWt6Utdckx)#Wo8F>K4}-)&!@speig>Jal_@QMqz|! zg%|il*ul@j39j2{!?QdfWO>>m=;lMA!FeH=Ot6A$J1o2eECT0wqQh)5IG|1D@1ZK@ z;`0u($>0vYSAI8(J8j`!s)ZpQ6*9afO!KX9%=tk}DeE#%LomyoU8XXWPmfT-8^Q`s z3O@c5BF=MU!(qCFI0y|K7dp8pBw5{U!$}gt7WN5gjtG0XAnasi%7zDNOPPj4Lu&Y% z0$Mk_cspep4rMs3*cj)8?P_(Gj)_$2cft zIFlP$+GD~_CM0~rlfo?T3G>Vdzp zT8nwPyU(l;bKY7)oHvCer!4Ak=aS&2s^5g`BXswhH5)3l=Hm6_t#L8Z?<#f%OLAZ2 HTs{8-4p>Az diff --git a/.gradle/7.3.3/checksums/sha1-checksums.bin b/.gradle/7.3.3/checksums/sha1-checksums.bin index 4ff82a4c1063debb3f6f8a4c7875d9306826d3d5..313dce73a1d7a4cb76fb24b60b6ac0f4a2775cc9 100644 GIT binary patch delta 13317 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 diff --git a/.gradle/7.3.3/fileHashes/fileHashes.lock b/.gradle/7.3.3/fileHashes/fileHashes.lock index f768bc5a2893e1cc93afa7faebe0549efa8d5b99..f8e4965a40c53e7644cbda91184f3ce10d501b8d 100644 GIT binary patch literal 17 VcmZQxU9NG9p>*PA1~6be2>>wm1gii5 literal 17 VcmZQxU9NG9p>*PA1~6bW1^_T%1Qh@P diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock index da2dd5297f35c8e99f9d6dbadbc4ab0cbc74bd5b..3828fefb6a9ed990036c325bfdc627e70da68de1 100644 GIT binary patch literal 17 UcmZR!7O2|uu(RL?0|d+h05d%V@c;k- literal 17 UcmZR!7O2|uu(RL?0|dkZ05bptv;Y7A diff --git a/build/tmp/compileJava/previous-compilation-data.bin b/build/tmp/compileJava/previous-compilation-data.bin index 4b771b782f6891e78784f266d21e4ab0273b45e6..1933778e36012c846e17d39e29fa8d93992f616f 100644 GIT binary patch literal 40756 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 literal 40424 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 BVaxyk diff --git a/src/main/java/org/jointheleague/discord_bot/DiscordBot.java b/src/main/java/org/jointheleague/discord_bot/DiscordBot.java index ae863505..1f30df0c 100644 --- a/src/main/java/org/jointheleague/discord_bot/DiscordBot.java +++ b/src/main/java/org/jointheleague/discord_bot/DiscordBot.java @@ -11,6 +11,8 @@ import org.jointheleague.features.examples.first_features.RandomNumber; import org.jointheleague.features.help_embed.HelpListener; import org.jointheleague.features.student.first_feature.FeatureOne; +import org.jointheleague.features.student.second_feature.FeatureTwo; +import org.jointheleague.features.student.third_feature.FeatureThree; public class DiscordBot { @@ -50,6 +52,8 @@ public void connect(boolean printInvite) { addFeature(new HighLowGame(channelName)); addFeature(new NewsApi(channelName)); addFeature(new CatFactsApi(channelName)); + addFeature(new FeatureTwo(channelName)); + addFeature(new FeatureThree(channelName)); } private void addFeature(Feature feature){ diff --git a/src/main/java/org/jointheleague/features/examples/second_features/HighLowGame.java b/src/main/java/org/jointheleague/features/examples/second_features/HighLowGame.java index 1baccfbf..aef77b13 100644 --- a/src/main/java/org/jointheleague/features/examples/second_features/HighLowGame.java +++ b/src/main/java/org/jointheleague/features/examples/second_features/HighLowGame.java @@ -8,7 +8,7 @@ public class HighLowGame extends Feature { - public final String COMMAND = "!blackjack"; + public final String COMMAND = "!HighLowGame"; private final Random random = new Random(); int numberToGuess; diff --git a/src/main/java/org/jointheleague/features/student/third_feature/FeatureThree.java b/src/main/java/org/jointheleague/features/student/third_feature/FeatureThree.java index d4e3a281..002f30c8 100644 --- a/src/main/java/org/jointheleague/features/student/third_feature/FeatureThree.java +++ b/src/main/java/org/jointheleague/features/student/third_feature/FeatureThree.java @@ -10,14 +10,14 @@ public class FeatureThree extends Feature { - public final String COMMAND = "!catFactApi"; + public final String COMMAND = "!bored"; private WebClient webClient; - private static final String baseUrl = "https://meowfacts.herokuapp.com/"; + private static final String baseUrl = "https://www.boredapi.com/api/activity"; public FeatureThree(String channelName) { super(channelName); - helpEmbed = new HelpEmbed(COMMAND, "Example of using an API to get information from another service. This returns a cat fact"); + helpEmbed = new HelpEmbed(COMMAND, "This will return an activity you can do when you're bored."); //build the WebClient this.webClient = WebClient @@ -30,20 +30,21 @@ public FeatureThree(String channelName) { public void handle(MessageCreateEvent event) { String messageContent = event.getMessageContent(); if (messageContent.startsWith(COMMAND)) { - String catFact = getFact(); + String catFact = getActivity(); event.getChannel().sendMessage(catFact); } } - public String getFact() { + public String getActivity() { //Make the request, accepting the response as a plain old java object you created - + Mono catWrapperMono = webClient.get().retrieve().bodyToMono(CatWrapper.class); //collect the response into a plain old java object - + CatWrapper catWrapper = catWrapperMono.block(); //get the cat fact from the response - + String message = catWrapper.getData().get(0); //send the message + return message; } public void setWebClient(WebClient webClient) { diff --git a/src/main/java/org/jointheleague/features/student/third_features/plain_old_java_objects/bored_api/FeatureThreeWrapper.java b/src/main/java/org/jointheleague/features/student/third_features/plain_old_java_objects/bored_api/FeatureThreeWrapper.java new file mode 100644 index 00000000..fb6e8c80 --- /dev/null +++ b/src/main/java/org/jointheleague/features/student/third_features/plain_old_java_objects/bored_api/FeatureThreeWrapper.java @@ -0,0 +1,19 @@ +package org.jointheleague.features.student.third_features.plain_old_java_objects.bored_api; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +import java.util.List; +public class FeatureThreeWrapper { + @SerializedName("data") + @Expose + private List data = null; + + public List getData() { + return data; + } + public void setData(List data) { + this.data = data; + } + +} diff --git a/src/test/java/org/jointheleague/features/student/third_feature/FeatureThreeTest.java b/src/test/java/org/jointheleague/features/student/third_feature/FeatureThreeTest.java new file mode 100644 index 00000000..43366b22 --- /dev/null +++ b/src/test/java/org/jointheleague/features/student/third_feature/FeatureThreeTest.java @@ -0,0 +1,158 @@ +package org.jointheleague.features.student.third_feature; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertNotEquals; +import static org.mockito.Mockito.never; +import static org.mockito.Mockito.times; +import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.when; + +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; +import java.util.Collections; +import java.util.List; + +import org.javacord.api.entity.channel.TextChannel; +import org.javacord.api.event.message.MessageCreateEvent; +import org.jointheleague.features.examples.third_features.CatFactsApi; +import org.jointheleague.features.examples.third_features.plain_old_java_objects.cat_facts_api.CatWrapper; +import org.jointheleague.features.help_embed.plain_old_java_objects.help_embed.HelpEmbed; +import org.jointheleague.features.student.second_feature.FeatureTwo; +import org.jointheleague.features.student.third_features.plain_old_java_objects.bored_api.FeatureThreeWrapper; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.mockito.Mock; +import org.mockito.MockitoAnnotations; +import org.springframework.web.reactive.function.client.WebClient; + +import reactor.core.publisher.Mono; + +public class FeatureThreeTest { + + private final String testChannelName = "FeatureThree"; + private FeatureThree featureThree; + + private final ByteArrayOutputStream outContent = new ByteArrayOutputStream(); + private final PrintStream originalOut = System.out; + + @Mock + private MessageCreateEvent messageCreateEvent; + + @Mock + private TextChannel textChannel; + + @Mock + WebClient webClientMock; + + @Mock + WebClient.RequestHeadersUriSpec requestHeadersUriSpecMock; + + @Mock + WebClient.RequestHeadersSpec requestHeadersSpecMock; + + @Mock + WebClient.ResponseSpec responseSpecMock; + + @Mock + Mono featureThreeWrapperMonoMock; + + @BeforeEach + void setUp() { + MockitoAnnotations.openMocks(this); + + featureThree = new FeatureThree(testChannelName); + featureThree.setWebClient(webClientMock); + System.setOut(new PrintStream(outContent)); + } + + @AfterEach + public void itShouldNotPrintToSystemOut() { + String expected = ""; + String actual = outContent.toString(); + + assertEquals(expected, actual); + System.setOut(originalOut); + } + + + @Test + void itShouldHaveACommand() { + //Given + + //When + String command = featureThree.COMMAND; + + //Then + assertNotEquals("", command); + assertNotEquals("!command", command); + assertNotNull(command); + } + + @Test + void itShouldHaveAHelpEmbed() { + //Given + + //When + HelpEmbed actualHelpEmbed = featureThree.getHelpEmbed(); + + //Then + assertNotNull(actualHelpEmbed); + } + + @Test + void itShouldHaveTheCommandAsTheTitleOfTheHelpEmbed() { + //Given + + //When + String helpEmbedTitle = featureThree.getHelpEmbed().getTitle(); + String command = featureThree.COMMAND; + + //Then + assertEquals(command, helpEmbedTitle); + } + + @Test + void givenMessageWithCommand_whenHandle_thenSendCatFact() { + //given + String activity = "Start a garden"; + List data = Collections.singletonList(activity); + + FeatureThreeWrapper featureThreeWrapper = new FeatureThreeWrapper(); + featureThreeWrapper.setData(data); + + when(messageCreateEvent.getMessageContent()).thenReturn(featureThree.COMMAND); + when(messageCreateEvent.getChannel()).thenReturn(textChannel); + + when(webClientMock.get()) + .thenReturn(requestHeadersUriSpecMock); + when(requestHeadersUriSpecMock.retrieve()) + .thenReturn(responseSpecMock); + when(responseSpecMock.bodyToMono(FeatureThreeWrapper.class)) + .thenReturn(featureThreeWrapperMonoMock); + when(featureThreeWrapperMonoMock.block()) + .thenReturn(featureThreeWrapper); + + //when + featureThree.handle(messageCreateEvent); + + //then + verify(webClientMock, times(1)).get(); + verify(textChannel, times(1)).sendMessage(activity); + } + + @Test + void givenMessageWithoutCommand_whenHandle_thenDoNothing() { + //Given + String command = ""; + when(messageCreateEvent.getMessageContent()).thenReturn(command); + + //When + featureThree.handle(messageCreateEvent); + + //Then + verify(textChannel, never()).sendMessage(""); + } + +} From a8f0488bff9ec8586ba1fbc29f5f2b868ab6b7f6 Mon Sep 17 00:00:00 2001 From: root Date: Sun, 7 Apr 2024 19:56:27 +0000 Subject: [PATCH 07/13] I continued testing my discord bot --- .gradle/7.3.3/checksums/checksums.lock | Bin 17 -> 17 bytes .gradle/7.3.3/checksums/md5-checksums.bin | Bin 27347 -> 27347 bytes .gradle/7.3.3/checksums/sha1-checksums.bin | Bin 149921 -> 155051 bytes .gradle/7.3.3/fileHashes/fileHashes.lock | Bin 17 -> 17 bytes .../buildOutputCleanup.lock | Bin 17 -> 17 bytes build.gradle | 2 +- .../student/first_feature/FeatureOne.java | 2 +- .../student/test/Nicholas/FeatureTest.java | 122 ------------------ 8 files changed, 2 insertions(+), 124 deletions(-) delete mode 100644 src/test/java/org/jointheleague/features/student/test/Nicholas/FeatureTest.java diff --git a/.gradle/7.3.3/checksums/checksums.lock b/.gradle/7.3.3/checksums/checksums.lock index 46654fd166bec5308a5648a51cca818c47027906..d3b400e9b40747b96c4e87a4865dc46f88576e6a 100644 GIT binary patch literal 17 VcmZR!H2-v^ZN||%3}C?d7yvv#1?2z$ literal 17 VcmZR!H2-v^ZN||%3}C?N1OPjq1w;S< diff --git a/.gradle/7.3.3/checksums/md5-checksums.bin b/.gradle/7.3.3/checksums/md5-checksums.bin index 6f36058fec27dc0d85d2ecad606d11f37295e4f0..6db0e551693c79684f78f95d2c6a62bba3f41c6d 100644 GIT binary patch delta 464 zcmXBQ!7GDt9LMp-rZ`He)rgWJ4vLF^;3;eKJkLyqXL}B)6^G@tgGg~u6Q3v!+;-SO z^2@=4gB%=IiZx0(+C`|zic)-kpWEyA?fvcd>sKoKN@d^ij^XzLQ4h~f5XxxzKa4i0 zqOn#dYQxw_zaWEkB91e{!7C9#D6E^jiiQ^hQorNI)T0W%i6``0dUA_t!o#M9IfN@B zf=?ogE?Z)A0poT`;NYB-INpdOw8wN)fJq!+mDpCNvAn#)tRR`tQ59Q64cEjEzBH^R zbWciSHDiM4#0JrWOJV>YL_~E=ozzS1;4!J!(r8R+WH3xDVV=n0kSO4e*hgO?h>$Da rY~5qf)te8PBdXXVYA9;hmil#<!2JJElUov674`K{(!fvY&OZfZ0`X(a8M2o4n!PwkiHz8T;${+ zPijI<6xuFYi^JTg6;fs!dtc>!o^NiS=lgtr&-3(TbFOU8b+n^v^LL+KJWaYG^hRe< zToY-1y~fd39wUR@5^vZbo^eXpcqJa;@ykxBSq%9X>Kv87aTAnLxqu%ckIrG0WH3Rb zu&Gc9;F5@;NF1U)B+He3jD}(ovp8d7;QfEAHLN<@2og(JCF0^Fd?4RZ)ew!yQndkF zL<_D6FG_?D9pkFw!x%Au1fk=C2;hS-M4NG3>zru$@DP<_RuAf93VrA&bj%S3_J~E? z6LEA!-0+z4o2?{zO*MIq86uBeqJXr5t%+ZASzc%-u`(swb_#;X;DxvqP1EPvA9Y6H AyZ`_I diff --git a/.gradle/7.3.3/checksums/sha1-checksums.bin b/.gradle/7.3.3/checksums/sha1-checksums.bin index 313dce73a1d7a4cb76fb24b60b6ac0f4a2775cc9..c401ea76d2c0df93c47249dafdd9cd0cc875951c 100644 GIT binary patch delta 3532 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 delta 841 zcmX|9SxA&o8139?bZnW)BIh5AXu`@ivqj4&$SAW1TPCP6ij-CaTcBks3~7-zQ@h${ zgpl=65QTQJTZT4Cj*T?5+elO|71=WFQbXJK_t3-rIOpE;-E;28J%25(R>sv$Hn2gZ z88d|{O{|AnGWdW^btl~w^4Um3*^_NhDWh&d+Q<0it1*U57@IA(@#^4}KF+V~Db-NT zypM?-{xgE7D|E?i4y4%kmk^obpm`A+2H!6NAQ?;^(n^=X;xQD*v)| z4ss=kG_|}yS*dCequHAlZoxiT^`cXiy!2UALf25J`EQCLU%mCIZSTJGyCZq>cjTOE z{$N;S!*VX=CU811`)u42NupVK7 zL+BhUrh;l>P(fL-IIFETTou&O3nxU(~rH67!D_LSVQMl$+pqT!W%P*{m=rlql8X7j-k+n zgs_D!JCLeNPr_@Z-~D0efwd?GMFw!5*3p`_wIVl=Z z58ZwZUUAmb42v$f0UPw87Bh0(O-vxqO+2Q|R^(G-D>ozt;D%n@#zX!0wRB4mGX*8y z=E=0&=AY*Y!Kb4klv`w0=3MH!$9Y`$5d=jaaLQQ^&Dc91aRMFfz$u~IJF!Cu_rZGi S0XuO-JKf2EQ+r-xLH=Jc(o2K@ diff --git a/.gradle/7.3.3/fileHashes/fileHashes.lock b/.gradle/7.3.3/fileHashes/fileHashes.lock index f8e4965a40c53e7644cbda91184f3ce10d501b8d..8ffb20b7b327e8b19d25931aa845d25d5fc45003 100644 GIT binary patch literal 17 VcmZQxU9NG9p>*PA1~6bU1pqK)1Q-AS literal 17 VcmZQxU9NG9p>*PA1~6be2>>wm1gii5 diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock index 3828fefb6a9ed990036c325bfdc627e70da68de1..ceaeff6c0b069e00d4e31bb832be0becb1c53a14 100644 GIT binary patch literal 17 UcmZR!7O2|uu(RL?0|aaV05eww3jhEB literal 17 UcmZR!7O2|uu(RL?0|d+h05d%V@c;k- diff --git a/build.gradle b/build.gradle index bb3a859e..546359da 100644 --- a/build.gradle +++ b/build.gradle @@ -26,7 +26,7 @@ dependencies { group = 'org.jointheleague' version = '2.0' description = 'discordbot' -sourceCompatibility = '1.8' +sourceCompatibility = '1.11' test { diff --git a/src/main/java/org/jointheleague/features/student/first_feature/FeatureOne.java b/src/main/java/org/jointheleague/features/student/first_feature/FeatureOne.java index 59776380..d18eca75 100644 --- a/src/main/java/org/jointheleague/features/student/first_feature/FeatureOne.java +++ b/src/main/java/org/jointheleague/features/student/first_feature/FeatureOne.java @@ -25,7 +25,7 @@ public void handle(MessageCreateEvent event) { String messageContent = event.getMessageContent(); if (messageContent.startsWith(COMMAND)) { //respond to message here - event.getChannel().sendMessage("I am NicholasBot, created by the one and only, Nicholas Falstad. I have all sorts of features such as... (fill in later)"); + event.getChannel().sendMessage("I am NicholasBot, created by the one and only, Nicholas Falstad. I have features such as a blackjack game, and I can suggest an activity for you when you're bored."); } } } diff --git a/src/test/java/org/jointheleague/features/student/test/Nicholas/FeatureTest.java b/src/test/java/org/jointheleague/features/student/test/Nicholas/FeatureTest.java deleted file mode 100644 index 88b9e926..00000000 --- a/src/test/java/org/jointheleague/features/student/test/Nicholas/FeatureTest.java +++ /dev/null @@ -1,122 +0,0 @@ -package org.jointheleague.features.student.test.Nicholas; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertNotEquals; -import static org.mockito.ArgumentMatchers.anyString; -import static org.mockito.Mockito.never; -import static org.mockito.Mockito.times; -import static org.mockito.Mockito.verify; -import static org.mockito.Mockito.when; - -import java.io.ByteArrayOutputStream; -import java.io.PrintStream; - -import org.javacord.api.entity.channel.TextChannel; -import org.javacord.api.event.message.MessageCreateEvent; -import org.jointheleague.features.help_embed.plain_old_java_objects.help_embed.HelpEmbed; -import org.jointheleague.features.student.first_feature.FeatureOne; -import org.jointheleague.features.templates.FeatureTemplate; -import org.junit.jupiter.api.AfterEach; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; -import org.mockito.Mock; -import org.mockito.MockitoAnnotations; - -class FeatureTest { - private final String testChannelName = "test"; - private final FeatureOne featureOne = new FeatureOne(testChannelName); - - private final ByteArrayOutputStream outContent = new ByteArrayOutputStream(); - private final PrintStream originalOut = System.out; - - @Mock - private MessageCreateEvent messageCreateEvent; - - @Mock - private TextChannel textChannel; - - @BeforeEach - void setUp() { - MockitoAnnotations.openMocks(this); - System.setOut(new PrintStream(outContent)); - } - - @AfterEach - public void itShouldNotPrintToSystemOut() { - String expected = ""; - String actual = outContent.toString(); - - assertEquals(expected, actual); - System.setOut(originalOut); - } - - @Test - void itShouldHaveACommand() { - //Given - - //When - String command = featureTemplate.COMMAND; - - //Then - - if(!(featureTemplate instanceof FeatureTemplate)){ - assertNotEquals("!command", command); - } - - assertNotEquals("", command); - assertNotEquals("!", command); - assertEquals('!', command.charAt(0)); - assertNotNull(command); - } - - @Test - void itShouldHandleMessagesWithCommand() { - //Given - HelpEmbed helpEmbed = new HelpEmbed(featureTemplate.COMMAND, "test"); - when(messageCreateEvent.getMessageContent()).thenReturn(featureTemplate.COMMAND); - when(messageCreateEvent.getChannel()).thenReturn((textChannel)); - - //When - featureTemplate.handle(messageCreateEvent); - - //Then - verify(textChannel, times(1)).sendMessage(anyString()); - } - - @Test - void itShouldNotHandleMessagesWithoutCommand() { - //Given - String command = ""; - when(messageCreateEvent.getMessageContent()).thenReturn(command); - - //When - featureTemplate.handle(messageCreateEvent); - - //Then - verify(textChannel, never()).sendMessage(""); - } - - @Test - void itShouldHaveAHelpEmbed() { - //Given - - //When - HelpEmbed actualHelpEmbed = featureTemplate.getHelpEmbed(); - - //Then - assertNotNull(actualHelpEmbed); - } - - @Test - void itShouldHaveTheCommandAsTheTitleOfTheHelpEmbed() { - //Given - - //When - String helpEmbedTitle = featureTemplate.getHelpEmbed().getTitle(); - String command = featureTemplate.COMMAND; - - //Then - assertEquals(command, helpEmbedTitle); - } -} From 95bd061053231e84539fadc94a1148d7dd103ba4 Mon Sep 17 00:00:00 2001 From: BuildTools Date: Sun, 21 Apr 2024 12:58:01 -0700 Subject: [PATCH 08/13] fixed an error --- src/main/java/org/jointheleague/discord_bot/DiscordBot.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/jointheleague/discord_bot/DiscordBot.java b/src/main/java/org/jointheleague/discord_bot/DiscordBot.java index 1f30df0c..cf37c909 100644 --- a/src/main/java/org/jointheleague/discord_bot/DiscordBot.java +++ b/src/main/java/org/jointheleague/discord_bot/DiscordBot.java @@ -32,7 +32,7 @@ public DiscordBot(String token, String channelName) { public void connect(boolean printInvite) { - api = new DiscordApiBuilder().setToken(token).addIntents(Intent.MESSAGE_CONTENT).login().join(); + api = new DiscordApiBuilder().setToken(token).login().join(); //Print the URL to invite the bot if (printInvite) { From d254b0203a482177762989af5b0692479bda2b49 Mon Sep 17 00:00:00 2001 From: BuildTools Date: Sun, 12 May 2024 12:02:21 -0700 Subject: [PATCH 09/13] working on discord bot --- src/main/java/org/jointheleague/discord_bot/DiscordBot.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/jointheleague/discord_bot/DiscordBot.java b/src/main/java/org/jointheleague/discord_bot/DiscordBot.java index cf37c909..b7745a1a 100644 --- a/src/main/java/org/jointheleague/discord_bot/DiscordBot.java +++ b/src/main/java/org/jointheleague/discord_bot/DiscordBot.java @@ -2,7 +2,6 @@ import org.javacord.api.DiscordApi; import org.javacord.api.DiscordApiBuilder; -import org.javacord.api.entity.intent.Intent; import org.jointheleague.features.abstract_classes.Feature; import org.jointheleague.features.examples.second_features.HighLowGame; import org.jointheleague.features.examples.third_features.CatFactsApi; @@ -31,7 +30,6 @@ public DiscordBot(String token, String channelName) { } public void connect(boolean printInvite) { - api = new DiscordApiBuilder().setToken(token).login().join(); //Print the URL to invite the bot @@ -47,11 +45,13 @@ public void connect(boolean printInvite) { api.addMessageCreateListener(helpListener); //add features - addFeature(new FeatureOne(channelName)); + addFeature(new RandomNumber(channelName)); addFeature(new CurrentTime(channelName)); addFeature(new HighLowGame(channelName)); addFeature(new NewsApi(channelName)); addFeature(new CatFactsApi(channelName)); + //MINE + addFeature(new FeatureOne(channelName)); addFeature(new FeatureTwo(channelName)); addFeature(new FeatureThree(channelName)); } From e2091a718093d7a9c02ca18f878f8834a354fd4d Mon Sep 17 00:00:00 2001 From: BuildTools Date: Sun, 19 May 2024 12:58:22 -0700 Subject: [PATCH 10/13] I fixed two features --- .../jointheleague/discord_bot/DiscordBot.java | 3 +- .../student/second_feature/FeatureTwo.java | 280 ++++++++++-------- .../student/third_feature/FeatureThree.java | 13 +- .../bored_api/FeatureThreeWrapper.java | 14 +- 4 files changed, 180 insertions(+), 130 deletions(-) diff --git a/src/main/java/org/jointheleague/discord_bot/DiscordBot.java b/src/main/java/org/jointheleague/discord_bot/DiscordBot.java index b7745a1a..dfc8582e 100644 --- a/src/main/java/org/jointheleague/discord_bot/DiscordBot.java +++ b/src/main/java/org/jointheleague/discord_bot/DiscordBot.java @@ -2,6 +2,7 @@ import org.javacord.api.DiscordApi; import org.javacord.api.DiscordApiBuilder; +import org.javacord.api.entity.intent.Intent; import org.jointheleague.features.abstract_classes.Feature; import org.jointheleague.features.examples.second_features.HighLowGame; import org.jointheleague.features.examples.third_features.CatFactsApi; @@ -30,7 +31,7 @@ public DiscordBot(String token, String channelName) { } public void connect(boolean printInvite) { - api = new DiscordApiBuilder().setToken(token).login().join(); + api = new DiscordApiBuilder().setToken(token).addIntents(Intent.MESSAGE_CONTENT).login().join(); //Print the URL to invite the bot if (printInvite) { diff --git a/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java b/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java index d2b3941c..2ba3db4d 100644 --- a/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java +++ b/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java @@ -6,131 +6,167 @@ import org.jointheleague.features.help_embed.plain_old_java_objects.help_embed.HelpEmbed; import org.jointheleague.features.templates.FeatureTemplate; -public class FeatureTwo extends FeatureTemplate{ - public final String COMMAND = "!blackjack"; - private final Random random = new Random(); - int numberToGuess; - int yourValue = 0; - int botValue = 0; - public FeatureTwo(String channelName) { - super(channelName); - helpEmbed = new HelpEmbed(COMMAND, "Get as close to 21 as you can with your cards. 'Hit' means to ask for another card, stand means you are finished. Between us, whoever is closer to 21 wins!"); - } +public class FeatureTwo extends FeatureTemplate { + public final String COMMAND = "!blackjack"; + private final Random random = new Random(); + int numberToGuess; + int yourValue = 0; + int botValue = 0; - @Override - public void handle(MessageCreateEvent event){ - String messageContent = event.getMessageContent(); - - //start the game with the command - if (messageContent.equals(COMMAND)) { - String botCard = cardPicker(); - String yourCard = cardPicker(); - botValue+=findValue(botCard); - yourValue+=findValue(yourCard); - event.getChannel().sendMessage("My Card: " + botCard + "\n Your Card: " + yourCard + "\n !Hit or !Stand ?"); - } - else if(messageContent.equalsIgnoreCase("!Hit")) { - event.getChannel().sendMessage("Please start the game before using this command."); - } - boolean end = false; - while(!end) { - if(messageContent.equalsIgnoreCase("!Hit")) { - String yourCard2 = cardPicker(); - yourValue+=findValue(yourCard2); - event.getChannel().sendMessage("Your Next Card: " + yourCard2); - event.getChannel().sendMessage("Your Total Card Value " + yourValue); - event.getChannel().sendMessage("!Hit or !Stand ?"); - } else if(messageContent.equalsIgnoreCase("!Stand")) { - end = true; - if(yourValue > 21) { - event.getChannel().sendMessage("Bust! You lose."); - } - else { - if(botValue > yourValue) { - event.getChannel().sendMessage("Bot's Total Card Value: " + botValue); - event.getChannel().sendMessage("Bot wins! Score: " + botValue); - } else { - boolean end2 = false; - while(!end2) { - String botCard2 = cardPicker(); - botValue+=findValue(botCard2); - if(botValue == 20 || botValue == 21) { - if(botValue == yourValue) { - event.getChannel().sendMessage("Tie! You both scored " + yourValue); - } else if(botValue > yourValue) { - event.getChannel().sendMessage("Bot wins! Score: " + botValue); - } else if(botValue < yourValue) { - event.getChannel().sendMessage("You win! Score: " + botValue); - } - end2 = true; - } else if(botValue > yourValue) { - event.getChannel().sendMessage("Bot wins! Score: " + botValue); - end2 = true; - } else if(botValue > 21) { - event.getChannel().sendMessage("Bot busted! You win! Score: " + botValue); - } - } - } - } - } - } - - - } - public String cardPicker() { - String cardName = ""; - numberToGuess = random.nextInt(10) + 2; - if(numberToGuess == 10) { - numberToGuess = random.nextInt(4); - if(numberToGuess == 0) { - cardName+="10"; - } else if(numberToGuess == 1) { - cardName+="Jack"; - } else if(numberToGuess == 2) { - cardName+="Queen"; - } else if(numberToGuess == 3) { - cardName+="King"; - } - } else if(numberToGuess == 11) { - cardName+="Ace"; + public FeatureTwo(String channelName) { + super(channelName); + helpEmbed = new HelpEmbed(COMMAND, "Get as close to 21 as you can with your cards. 'Hit' means to ask for another card, stand means you are finished. Between us, whoever is closer to 21 wins!"); + } + + @Override + public void handle(MessageCreateEvent event) { + String messageContent = event.getMessageContent(); + + //start the game with the command + if (messageContent.equals(COMMAND)) { + String botCard = cardPicker(); + String yourCard = cardPicker(); + botValue += findValue(botCard); + yourValue += findValue(yourCard); + System.out.println("starting game"); + event.getChannel().sendMessage("My Card: " + botCard + "\n Your Card: " + yourCard + "\n !Blackjack hit or !Blackjack stand ?"); + } else if (messageContent.contains(COMMAND) && messageContent.contains("hit")) { + if(botValue == 0) { + event.getChannel().sendMessage("Please start the game before using this command."); + } else { + System.out.println("hitting"); + String yourCard2 = cardPicker(); + yourValue += findValue(yourCard2); + event.getChannel().sendMessage("Your Next Card: " + yourCard2); + event.getChannel().sendMessage("Your Total Card Value " + yourValue); + if(yourValue > 21) { + event.getChannel().sendMessage("Bot wins! You busted!"); + botValue = 0; + yourValue = 0; + } else { + event.getChannel().sendMessage("!Blackjack hit or !Blackjack stand ?"); + } + } + } else if(messageContent.contains(COMMAND) && messageContent.contains("stand")) { + if(botValue == 0) { + event.getChannel().sendMessage("Please start the game before using this command."); } else { - cardName+=(numberToGuess); + while(botValue < 17) { + String botCard2 = cardPicker(); + botValue += findValue(botCard2); + } + if(yourValue > 21) { + event.getChannel().sendMessage("Bot wins! You busted!"); + } else if(botValue > 21) { + event.getChannel().sendMessage("You win! Bot busted!"); + } + if (botValue == yourValue) { + event.getChannel().sendMessage("Tie! You both scored " + yourValue); + } else if (botValue > yourValue) { + event.getChannel().sendMessage("Bot wins! Score: " + botValue); + } else if (botValue < yourValue) { + event.getChannel().sendMessage("You win! Score: " + botValue); + } + botValue = 0; + yourValue = 0; + } + } + boolean end = false; + while (!end) { + if (messageContent.equalsIgnoreCase("!Hit")) { + + } else if (messageContent.equalsIgnoreCase("!Stand")) { + end = true; + if (yourValue > 21) { + event.getChannel().sendMessage("Bust! You lose."); + } else { + if (botValue > yourValue) { + event.getChannel().sendMessage("Bot's Total Card Value: " + botValue); + event.getChannel().sendMessage("Bot wins! Score: " + botValue); + } else { + boolean end2 = false; + while (!end2) { + String botCard2 = cardPicker(); + botValue += findValue(botCard2); + if (botValue == 20 || botValue == 21) { + if (botValue == yourValue) { + event.getChannel().sendMessage("Tie! You both scored " + yourValue); + } else if (botValue > yourValue) { + event.getChannel().sendMessage("Bot wins! Score: " + botValue); + } else if (botValue < yourValue) { + event.getChannel().sendMessage("You win! Score: " + botValue); + } + end2 = true; + } else if (botValue > yourValue) { + event.getChannel().sendMessage("Bot wins! Score: " + botValue); + end2 = true; + } else if (botValue > 21) { + event.getChannel().sendMessage("Bot busted! You win! Score: " + botValue); + } + } + } + } } + } + + + } + + public String cardPicker() { + String cardName = ""; + numberToGuess = random.nextInt(10) + 2; + if (numberToGuess == 10) { numberToGuess = random.nextInt(4); - if(numberToGuess == 0) { - cardName+=" of Hearts"; - } else if(numberToGuess == 1) { - cardName+=" of Diamonds"; - } else if(numberToGuess == 2) { - cardName+=" of Spades"; - } else if(numberToGuess == 3) { - cardName+=" of Clubs"; + if (numberToGuess == 0) { + cardName += "10"; + } else if (numberToGuess == 1) { + cardName += "Jack"; + } else if (numberToGuess == 2) { + cardName += "Queen"; + } else if (numberToGuess == 3) { + cardName += "King"; } - return cardName; - } - public int findValue(String card) { - if(card.substring(0, 1).equals("2")) { - return 2; - } else if(card.substring(0, 1).equals("3")) { - return 3; - } else if(card.substring(0, 1).equals("4")) { - return 4; - } else if(card.substring(0, 1).equals("5")) { - return 5; - } else if(card.substring(0, 1).equals("6")) { - return 6; - } else if(card.substring(0, 1).equals("7")) { - return 7; - } else if(card.substring(0, 1).equals("8")) { - return 8; - } else if(card.substring(0, 1).equals("9")) { - return 9; - } else if(card.substring(0, 1).equals("10")) { - return 10; - } else if(card.substring(0, 3).equals("Ace")) { - return 11; - } else { - return 10; - } - } + } else if (numberToGuess == 11) { + cardName += "Ace"; + } else { + cardName += (numberToGuess); + } + numberToGuess = random.nextInt(4); + if (numberToGuess == 0) { + cardName += " of Hearts"; + } else if (numberToGuess == 1) { + cardName += " of Diamonds"; + } else if (numberToGuess == 2) { + cardName += " of Spades"; + } else if (numberToGuess == 3) { + cardName += " of Clubs"; + } + return cardName; + } + + public int findValue(String card) { + if (card.substring(0, 1).equals("2")) { + return 2; + } else if (card.substring(0, 1).equals("3")) { + return 3; + } else if (card.substring(0, 1).equals("4")) { + return 4; + } else if (card.substring(0, 1).equals("5")) { + return 5; + } else if (card.substring(0, 1).equals("6")) { + return 6; + } else if (card.substring(0, 1).equals("7")) { + return 7; + } else if (card.substring(0, 1).equals("8")) { + return 8; + } else if (card.substring(0, 1).equals("9")) { + return 9; + } else if (card.substring(0, 1).equals("10")) { + return 10; + } else if (card.substring(0, 3).equals("Ace")) { + return 11; + } else { + return 10; + } + } } diff --git a/src/main/java/org/jointheleague/features/student/third_feature/FeatureThree.java b/src/main/java/org/jointheleague/features/student/third_feature/FeatureThree.java index 002f30c8..c4386eef 100644 --- a/src/main/java/org/jointheleague/features/student/third_feature/FeatureThree.java +++ b/src/main/java/org/jointheleague/features/student/third_feature/FeatureThree.java @@ -2,8 +2,8 @@ import org.javacord.api.event.message.MessageCreateEvent; import org.jointheleague.features.abstract_classes.Feature; -import org.jointheleague.features.examples.third_features.plain_old_java_objects.cat_facts_api.CatWrapper; import org.jointheleague.features.help_embed.plain_old_java_objects.help_embed.HelpEmbed; +import org.jointheleague.features.student.third_features.plain_old_java_objects.bored_api.FeatureThreeWrapper; import org.springframework.web.reactive.function.client.WebClient; import reactor.core.publisher.Mono; @@ -30,20 +30,21 @@ public FeatureThree(String channelName) { public void handle(MessageCreateEvent event) { String messageContent = event.getMessageContent(); if (messageContent.startsWith(COMMAND)) { - String catFact = getActivity(); - event.getChannel().sendMessage(catFact); + String activity = getActivity(); + event.getChannel().sendMessage(activity); } } public String getActivity() { //Make the request, accepting the response as a plain old java object you created - Mono catWrapperMono = webClient.get().retrieve().bodyToMono(CatWrapper.class); + Mono wrapperMono = webClient.get().retrieve().bodyToMono(FeatureThreeWrapper.class); //collect the response into a plain old java object - CatWrapper catWrapper = catWrapperMono.block(); + FeatureThreeWrapper wrapper = wrapperMono.block(); //get the cat fact from the response - String message = catWrapper.getData().get(0); + String message = wrapper.getActivity(); //send the message + System.out.println(message); return message; } diff --git a/src/main/java/org/jointheleague/features/student/third_features/plain_old_java_objects/bored_api/FeatureThreeWrapper.java b/src/main/java/org/jointheleague/features/student/third_features/plain_old_java_objects/bored_api/FeatureThreeWrapper.java index fb6e8c80..8baa3d48 100644 --- a/src/main/java/org/jointheleague/features/student/third_features/plain_old_java_objects/bored_api/FeatureThreeWrapper.java +++ b/src/main/java/org/jointheleague/features/student/third_features/plain_old_java_objects/bored_api/FeatureThreeWrapper.java @@ -15,5 +15,17 @@ public List getData() { public void setData(List data) { this.data = data; } - + + @SerializedName("activity") + @Expose + private String activity; + + public String getActivity() { + return activity; + } + + public void setActivity(String activity) { + this.activity = activity; + } + } From 37f4fb8be48664801cdb14370a1b28471870e697 Mon Sep 17 00:00:00 2001 From: BuildTools Date: Sun, 26 May 2024 12:58:58 -0700 Subject: [PATCH 11/13] I worked on the second feature --- .gradle/7.3.3/fileHashes/fileHashes.lock | Bin 17 -> 17 bytes .../buildOutputCleanup.lock | Bin 17 -> 17 bytes .../compileJava/previous-compilation-data.bin | Bin 40756 -> 40767 bytes .../examples/first_features/RandomNumber.java | 1 + .../student/second_feature/FeatureTwo.java | 74 +++++------------- 5 files changed, 20 insertions(+), 55 deletions(-) diff --git a/.gradle/7.3.3/fileHashes/fileHashes.lock b/.gradle/7.3.3/fileHashes/fileHashes.lock index 8ffb20b7b327e8b19d25931aa845d25d5fc45003..e98bb25831f968bcabd7f2622bd4ed715595531d 100644 GIT binary patch literal 17 VcmZQxU9NG9p>*PA1~6cD001y?1S9|e literal 17 VcmZQxU9NG9p>*PA1~6bU1pqK)1Q-AS diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock index ceaeff6c0b069e00d4e31bb832be0becb1c53a14..554cdac6e6da6f98ed2ef34544c401e3ca9f7fca 100644 GIT binary patch literal 17 VcmZR!7O2|uu(RL?0~jzm0RS@R1eyQ< literal 17 UcmZR!7O2|uu(RL?0|aaV05eww3jhEB diff --git a/build/tmp/compileJava/previous-compilation-data.bin b/build/tmp/compileJava/previous-compilation-data.bin index 1933778e36012c846e17d39e29fa8d93992f616f..6cfea2aa8a9065e4d240d704100eeba0eacdbb13 100644 GIT binary patch delta 1900 zcmXw2ZBSEZ7Jg4Y38>`8L>pbv0&0bDFkygB9CV7b@BsZvsD!}Ztd=()~>sC&rQ02-uIsKJm;L} zIrHAYCDD7AMEkiFX|I)h{_?tMvXOJTjNHa^H#N2yc{AzfXt|c`_0&4tRpr$z<7sxY zlxn&%Rxzdb+u-=PVX1ZXyCX9b`fesFNA4xv{N303X9rT0vCgBTHCz-VcdSs}`P=eO zbR)edyAC|;)Ka>VBoj?1(+d`py>`Y^Ud`A&P326ZgVGZ(<54Te?|iIEIid}0JFMDQ z_nW(wDaQCz(&P3x?Deej@Qj5g{xS7I&CVx@W^3g4mL(-G=B63r(}}myv6S?*F`F9e zS+(*%2|4N)wBz@0^mbe?%K7t^%^5k%%$f9ZTCsxcu5vWl8_-Qe*ucpE&* zQ`bK79(^p<({H@rul;87v?0$(=g<)*(#KRbdE6+q++NQ#HL*>UN_qRA^Ir@c{Bp|E z&I#Y4s5Q}MV{TraX(hdo(&v*d!B)C*LC3(?S3hvpitUfKG3q$Gam_!!@bY)JSM~igOl3cgmT()zvC1=F%<+y_{Av4#Me)*U!>3H#esOH-;y3eN zx%GI_?7t-VuRgpy^hS%Z)v~gU>|k4Q9Wlo@Ztb2qYfA2sIY0I9sJS-32nb|w_ry$! z!CXLQfnt4`rrO!qVlEIB8Au$WDZ~fHonYPtbO)7{F7Qbs5RtQhYm?N0nY$}7Of>*x zL=*|NSjy?8i7Epj02)G0K#mW73y5>I()bQDAt?YYgqSfy$okM(7CNg#=V{0}CGf?X z7UcTDbOvlZ6bFDl3-l2f1>&>UGApPZ$DG2F^bZrgy;> zfO8N8hzzNdhOBXsvPGz8i7Y=NWeFiVKo?!IWjY*K5EAh@SZ+h{RTu}di*-AgdPh53 z#e$T?>4bs|04sN2ro*!5n z2*d&WcsLdNj`4NTb`Xz2kh`VaAQkvQUQbPf=l~2#NDo`nT+g@#*rGa*Y{hg1U@%=h zD8{w$0rjI$F@JJKk~q}mEA6LKd6<-vE)P?~4vT`^=&VvKjGnz6q&!Lu@~{3%1vm-o zxsf@&_$9D1V`y~ejL8l4Jrnal81v@5xmbF6-UcxSbK(;t&%!AQH7F7E6vbDBoA6`t zX9TiyfzUB-VX-s-U&({~mWA(N8K0O~CQK82?a{>m__>owPku?fMPCu2D8#r%eFBmX z>GuGZ3o4URw+d5FqzU=kY1c$3Zy@7C462qH!y6mUybb}raru8`kj1%7+feJ@@yQ@% zIJZK$6e}+Y*NyyPLCNOAXF{~u5+lNE{~A`T3c$r^;={McRMxX0U%cGLhF99K&JS>& zf4-y*aLPdG42KA>zp7KiaSAtmP#?9LQdz=r0cRa#vR6=9+2J^&M??EG zww;>1U7F-xP4YFhi&8a&G3Ra#y+>2BSChL>gB{bC{vu-u_rqXpq={06X$Efg5$*o~ DEJ~rJ delta 1920 zcmXw1eN26!q8KXXFIk^t?a{Y_8i+&wd-85I9HFBvG*qKpZ9%#&+~hp z=l6T=y?B8dy+HNgSK4pv-FW&N^;22#3v(^ZIAeIg8|feiMg5lGhbh`n0cN zY1hh$f3|$_ryIURef%oa?r>Qxb-e1!8}s<+KaM=U{KLM%vXvL3*{w;&)oe1mJOy=I zI9EkAXK^_zIJ=cjMLy1@Q4P*~W$I}<(~sx24ThYWs#~*lZFZVIJ{|e&)(q6{;da~W zc#Z01H3$#xJFlNz}#wd3w2jp9ZoX)|7P{bXX8~*M@wbB@tJ+L6FG|ME0Z3B-e}rj%w|{6sV3Aa z>P%Pl-cp$EMnyfoopJh2>x=Uz%%&VKyO9maMZH|5)8!zn3QHa5bn;GGt$Od?SN7w& za`ocBw?thrn4aVr@;AKB7O=`q=FV^rofE})yJVT_qqb$8?y|kkz3}PU($MB>xJR-qb&2uc`2N+&JLWYcGma^Zsa=#ERIkWxD<+vh1kcaO`xD=hijG{sLMmbYm zYj^7mRFN6Qk!&LB0DUKHH~_4dE=(8s$PS3A)nSix7Z~u@(yVYZKwe0ZSZjA1aI!36 zkr{meh7LFmB!g|Tc&`DWL;yEJ1`PU`K&{7sdc} zSZX+%jjyB61F_+8`2n>DBM=&x8PJQ+I2b>Kk_jjlU=mOp?{M>u^WX=d%y|eek-tQg zWXW@s>>7kvpcn)0k*|}IiFtTh9vdQtb)wq;$PmjY6Is(DE=JI634`)n?!`GicEk>ELZM}8iQX@?^CGFU2nDU^dy|3 zP^?MkbB01cY{4ycGmwXUNxu`NDwOO1xmL|q; zr(LFqypx$%2&iAD4{l6Y|3?snCf&Ro3h~d4ZxO9O7$=DqLCD@AUK;ZS@tVmwB`Rso zUl37qftDgye<3eX3osRlI>>*>Ro3wVUxK=X53Y32mSKQlA#tk*$dr?%vlLS($W;r? zxnGCKVxK&;wW@u;KWrEmep|*;FecnApQ1p(eLKj<#kt%d(L2k13!}o{Do3RxbZF?*GIpeKIoXx)xu-%Dk-2A=xVe)} z>k0U>DMm(8^DToUg^%w$OwP4F4+)*|ofDf^v<*ll<1jqZ#mGr+ac?83?e3jXj>ARS zr3f?^hV^eH3;l0;QonUaHyshdeU#3WtT*l2Zqu%;G28CVvVORIy>{7Z&?htdCv PDY&cgJd@!Dq8I%S#M-O< diff --git a/src/main/java/org/jointheleague/features/examples/first_features/RandomNumber.java b/src/main/java/org/jointheleague/features/examples/first_features/RandomNumber.java index 13a59481..61ecc7b3 100644 --- a/src/main/java/org/jointheleague/features/examples/first_features/RandomNumber.java +++ b/src/main/java/org/jointheleague/features/examples/first_features/RandomNumber.java @@ -20,6 +20,7 @@ public void handle(MessageCreateEvent event) { String messageContent = event.getMessageContent(); if (messageContent.startsWith(COMMAND)) { Random r = new Random(); + System.out.println("test"); event.getChannel().sendMessage("Your random number is " + r.nextInt(1001)); } } diff --git a/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java b/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java index 2ba3db4d..93623425 100644 --- a/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java +++ b/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java @@ -21,7 +21,7 @@ public FeatureTwo(String channelName) { @Override public void handle(MessageCreateEvent event) { String messageContent = event.getMessageContent(); - + //divide into methods //start the game with the command if (messageContent.equals(COMMAND)) { String botCard = cardPicker(); @@ -38,78 +38,42 @@ public void handle(MessageCreateEvent event) { String yourCard2 = cardPicker(); yourValue += findValue(yourCard2); event.getChannel().sendMessage("Your Next Card: " + yourCard2); - event.getChannel().sendMessage("Your Total Card Value " + yourValue); + event.getChannel().sendMessage("Your Total Card Value: " + yourValue); if(yourValue > 21) { event.getChannel().sendMessage("Bot wins! You busted!"); botValue = 0; yourValue = 0; } else { - event.getChannel().sendMessage("!Blackjack hit or !Blackjack stand ?"); + event.getChannel().sendMessage("!blackjack hit or !blackjack stand ?"); } } } else if(messageContent.contains(COMMAND) && messageContent.contains("stand")) { - if(botValue == 0) { + if (botValue == 0) { event.getChannel().sendMessage("Please start the game before using this command."); } else { - while(botValue < 17) { + /* + while (botValue < 17) { String botCard2 = cardPicker(); botValue += findValue(botCard2); } - if(yourValue > 21) { - event.getChannel().sendMessage("Bot wins! You busted!"); - } else if(botValue > 21) { - event.getChannel().sendMessage("You win! Bot busted!"); - } - if (botValue == yourValue) { - event.getChannel().sendMessage("Tie! You both scored " + yourValue); - } else if (botValue > yourValue) { - event.getChannel().sendMessage("Bot wins! Score: " + botValue); - } else if (botValue < yourValue) { - event.getChannel().sendMessage("You win! Score: " + botValue); - } - botValue = 0; - yourValue = 0; - } - } - boolean end = false; - while (!end) { - if (messageContent.equalsIgnoreCase("!Hit")) { + */ - } else if (messageContent.equalsIgnoreCase("!Stand")) { - end = true; if (yourValue > 21) { - event.getChannel().sendMessage("Bust! You lose."); - } else { - if (botValue > yourValue) { - event.getChannel().sendMessage("Bot's Total Card Value: " + botValue); - event.getChannel().sendMessage("Bot wins! Score: " + botValue); - } else { - boolean end2 = false; - while (!end2) { - String botCard2 = cardPicker(); - botValue += findValue(botCard2); - if (botValue == 20 || botValue == 21) { - if (botValue == yourValue) { - event.getChannel().sendMessage("Tie! You both scored " + yourValue); - } else if (botValue > yourValue) { - event.getChannel().sendMessage("Bot wins! Score: " + botValue); - } else if (botValue < yourValue) { - event.getChannel().sendMessage("You win! Score: " + botValue); - } - end2 = true; - } else if (botValue > yourValue) { - event.getChannel().sendMessage("Bot wins! Score: " + botValue); - end2 = true; - } else if (botValue > 21) { - event.getChannel().sendMessage("Bot busted! You win! Score: " + botValue); - } - } - } + event.getChannel().sendMessage("Bot wins! You busted!"); + } else if (botValue > 21) { + event.getChannel().sendMessage("You win! Bot busted!"); } + if (botValue == yourValue) { + event.getChannel().sendMessage("Tie! You both scored " + yourValue); + } else if (botValue > yourValue) { + event.getChannel().sendMessage("Bot wins! Score: " + botValue); + } else if (botValue < yourValue) { + event.getChannel().sendMessage("You win! Score: " + botValue); + } + botValue = 0; + yourValue = 0; } } - - } public String cardPicker() { From ed1d57106e3cebad3d7030ecab0da60157f101dd Mon Sep 17 00:00:00 2001 From: BuildTools Date: Sun, 26 May 2024 12:59:24 -0700 Subject: [PATCH 12/13] I worked on the second feature --- .../features/student/second_feature/FeatureTwo.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java b/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java index 93623425..905f81b8 100644 --- a/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java +++ b/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java @@ -22,6 +22,7 @@ public FeatureTwo(String channelName) { public void handle(MessageCreateEvent event) { String messageContent = event.getMessageContent(); //divide into methods + //start the game with the command if (messageContent.equals(COMMAND)) { String botCard = cardPicker(); From a625399c0f83280d341d855adb06f4050a432cd9 Mon Sep 17 00:00:00 2001 From: BuildTools Date: Sun, 9 Jun 2024 11:53:00 -0700 Subject: [PATCH 13/13] I worked on the second feature --- .../student/second_feature/FeatureTwo.java | 71 ++++++++++--------- 1 file changed, 38 insertions(+), 33 deletions(-) diff --git a/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java b/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java index 905f81b8..bd92713e 100644 --- a/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java +++ b/src/main/java/org/jointheleague/features/student/second_feature/FeatureTwo.java @@ -30,53 +30,58 @@ public void handle(MessageCreateEvent event) { botValue += findValue(botCard); yourValue += findValue(yourCard); System.out.println("starting game"); - event.getChannel().sendMessage("My Card: " + botCard + "\n Your Card: " + yourCard + "\n !Blackjack hit or !Blackjack stand ?"); + event.getChannel().sendMessage("My Card: " + botCard + "\n Your Card: " + yourCard + "\n Stand or hit?"); } else if (messageContent.contains(COMMAND) && messageContent.contains("hit")) { if(botValue == 0) { event.getChannel().sendMessage("Please start the game before using this command."); } else { System.out.println("hitting"); - String yourCard2 = cardPicker(); - yourValue += findValue(yourCard2); - event.getChannel().sendMessage("Your Next Card: " + yourCard2); - event.getChannel().sendMessage("Your Total Card Value: " + yourValue); - if(yourValue > 21) { - event.getChannel().sendMessage("Bot wins! You busted!"); - botValue = 0; - yourValue = 0; - } else { - event.getChannel().sendMessage("!blackjack hit or !blackjack stand ?"); - } + hit(event); } } else if(messageContent.contains(COMMAND) && messageContent.contains("stand")) { if (botValue == 0) { event.getChannel().sendMessage("Please start the game before using this command."); } else { - /* - while (botValue < 17) { - String botCard2 = cardPicker(); - botValue += findValue(botCard2); - } - */ - - if (yourValue > 21) { - event.getChannel().sendMessage("Bot wins! You busted!"); - } else if (botValue > 21) { - event.getChannel().sendMessage("You win! Bot busted!"); - } - if (botValue == yourValue) { - event.getChannel().sendMessage("Tie! You both scored " + yourValue); - } else if (botValue > yourValue) { - event.getChannel().sendMessage("Bot wins! Score: " + botValue); - } else if (botValue < yourValue) { - event.getChannel().sendMessage("You win! Score: " + botValue); - } - botValue = 0; - yourValue = 0; + stand(event); } } } + public void hit(MessageCreateEvent event) { + String yourCard2 = cardPicker(); + yourValue += findValue(yourCard2); + event.getChannel().sendMessage("Your Next Card: " + yourCard2); + event.getChannel().sendMessage("Your Total Card Value: " + yourValue); + if(yourValue > 21) { + event.getChannel().sendMessage("Bot wins! You busted!"); + botValue = 0; + yourValue = 0; + } else { + event.getChannel().sendMessage("Hit or stand?"); + } + } + public void stand(MessageCreateEvent event) { + + while (botValue < 17) { + String botCard2 = cardPicker(); + botValue += findValue(botCard2); + } + + if (yourValue > 21) { + event.getChannel().sendMessage("Bot wins! You busted!"); + } else if (botValue > 21) { + event.getChannel().sendMessage("You win! Bot busted!"); + } + if (botValue == yourValue) { + event.getChannel().sendMessage("Tie! You both scored " + yourValue); + } else if (botValue > yourValue) { + event.getChannel().sendMessage("Bot wins! Score: " + botValue); + } else if (botValue < yourValue) { + event.getChannel().sendMessage("You win! Score: " + botValue); + } + botValue = 0; + yourValue = 0; + } public String cardPicker() { String cardName = ""; numberToGuess = random.nextInt(10) + 2;