diff --git a/exercises/practice/allergies/.meta/config.json b/exercises/practice/allergies/.meta/config.json index 0d9be16d..1d6ae64a 100644 --- a/exercises/practice/allergies/.meta/config.json +++ b/exercises/practice/allergies/.meta/config.json @@ -18,5 +18,5 @@ }, "blurb": "Given a person's allergy score, determine whether or not they're allergic to a given item, and their full list of allergies.", "source": "Exercise by the JumpstartLab team for students at The Turing School of Software and Design.", - "source_url": "https://turing.edu" + "source_url": "https://www.turing.edu/" } diff --git a/exercises/practice/bob/.meta/config.json b/exercises/practice/bob/.meta/config.json index 8fd223c5..623341ec 100644 --- a/exercises/practice/bob/.meta/config.json +++ b/exercises/practice/bob/.meta/config.json @@ -19,5 +19,5 @@ }, "blurb": "Bob is a lackadaisical teenager. In conversation, his responses are very limited.", "source": "Inspired by the 'Deaf Grandma' exercise in Chris Pine's Learn to Program tutorial.", - "source_url": "https://pine.fm/LearnToProgram/?Chapter=06" + "source_url": "https://pine.fm/LearnToProgram/chap_06.html" } diff --git a/exercises/practice/etl/.meta/config.json b/exercises/practice/etl/.meta/config.json index f243032b..c053ba87 100644 --- a/exercises/practice/etl/.meta/config.json +++ b/exercises/practice/etl/.meta/config.json @@ -18,5 +18,5 @@ }, "blurb": "Change the data format for scoring a game to more easily add other languages.", "source": "Based on an exercise by the JumpstartLab team for students at The Turing School of Software and Design.", - "source_url": "https://turing.edu" + "source_url": "https://www.turing.edu/" } diff --git a/exercises/practice/kindergarten-garden/.meta/config.json b/exercises/practice/kindergarten-garden/.meta/config.json index 7b0ec1e9..94042d2f 100644 --- a/exercises/practice/kindergarten-garden/.meta/config.json +++ b/exercises/practice/kindergarten-garden/.meta/config.json @@ -15,5 +15,5 @@ }, "blurb": "Given a diagram, determine which plants each child in the kindergarten class is responsible for.", "source": "Exercise by the JumpstartLab team for students at The Turing School of Software and Design.", - "source_url": "https://turing.edu" + "source_url": "https://www.turing.edu/" } diff --git a/exercises/practice/matrix/.meta/config.json b/exercises/practice/matrix/.meta/config.json index fbde0c5f..28ccb859 100644 --- a/exercises/practice/matrix/.meta/config.json +++ b/exercises/practice/matrix/.meta/config.json @@ -15,5 +15,5 @@ }, "blurb": "Given a string representing a matrix of numbers, return the rows and columns of that matrix.", "source": "Exercise by the JumpstartLab team for students at The Turing School of Software and Design.", - "source_url": "https://turing.edu" + "source_url": "https://www.turing.edu/" } diff --git a/exercises/practice/perfect-numbers/.meta/tests.toml b/exercises/practice/perfect-numbers/.meta/tests.toml index ec288891..81d48408 100644 --- a/exercises/practice/perfect-numbers/.meta/tests.toml +++ b/exercises/practice/perfect-numbers/.meta/tests.toml @@ -27,6 +27,9 @@ description = "Abundant numbers -> Medium abundant number is classified correctl [ec7792e6-8786-449c-b005-ce6dd89a772b] description = "Abundant numbers -> Large abundant number is classified correctly" +[05f15b93-849c-45e9-9c7d-1ea131ef7d10] +description = "Abundant numbers -> Perfect square abundant number is classified correctly" + [e610fdc7-2b6e-43c3-a51c-b70fb37413ba] description = "Deficient numbers -> Smallest prime deficient number is classified correctly" diff --git a/exercises/practice/perfect-numbers/perfect_numbers.vader b/exercises/practice/perfect-numbers/perfect_numbers.vader index 823b3109..93fec55e 100644 --- a/exercises/practice/perfect-numbers/perfect_numbers.vader +++ b/exercises/practice/perfect-numbers/perfect_numbers.vader @@ -1,67 +1,71 @@ - Execute (Smallest perfect number is classified correctly): let g:number = 6 - let g:expected = "perfect" + let g:expected = 'perfect' AssertEqual g:expected, Classify(g:number) Execute (Medium perfect number is classified correctly): let g:number = 28 - let g:expected = "perfect" + let g:expected = 'perfect' AssertEqual g:expected, Classify(g:number) Execute (Large perfect number is classified correctly): let g:number = 33550336 - let g:expected = "perfect" + let g:expected = 'perfect' AssertEqual g:expected, Classify(g:number) Execute (Smallest abundant number is classified correctly): let g:number = 12 - let g:expected = "abundant" + let g:expected = 'abundant' AssertEqual g:expected, Classify(g:number) Execute (Medium abundant number is classified correctly): let g:number = 30 - let g:expected = "abundant" + let g:expected = 'abundant' AssertEqual g:expected, Classify(g:number) Execute (Large abundant number is classified correctly): let g:number = 33550335 - let g:expected = "abundant" + let g:expected = 'abundant' + AssertEqual g:expected, Classify(g:number) + +Execute (Perfect square abundant number is classified correctly): + let g:number = 196 + let g:expected = 'abundant' AssertEqual g:expected, Classify(g:number) Execute (Smallest prime deficient number is classified correctly): let g:number = 2 - let g:expected = "deficient" + let g:expected = 'deficient' AssertEqual g:expected, Classify(g:number) Execute (Smallest non-prime deficient number is classified correctly): let g:number = 4 - let g:expected = "deficient" + let g:expected = 'deficient' AssertEqual g:expected, Classify(g:number) Execute (Medium deficient number is classified correctly): let g:number = 32 - let g:expected = "deficient" + let g:expected = 'deficient' AssertEqual g:expected, Classify(g:number) Execute (Large deficient number is classified correctly): let g:number = 33550337 - let g:expected = "deficient" + let g:expected = 'deficient' AssertEqual g:expected, Classify(g:number) Execute (Edge case (no factors other than itself) is classified correctly): let g:number = 1 - let g:expected = "deficient" + let g:expected = 'deficient' AssertEqual g:expected, Classify(g:number) Execute (Zero is rejected (as it is not a positive integer)): let g:number = 0 - let g:expected = "Classification is only possible for positive integers." + let g:expected = 'Classification is only possible for positive integers.' AssertThrows call Classify(g:number) AssertEqual g:expected, g:vader_exception Execute (Negative integer is rejected (as it is not a positive integer)): let g:number = -1 - let g:expected = "Classification is only possible for positive integers." + let g:expected = 'Classification is only possible for positive integers.' AssertThrows call Classify(g:number) AssertEqual g:expected, g:vader_exception diff --git a/exercises/practice/phone-number/.meta/config.json b/exercises/practice/phone-number/.meta/config.json index 0c800c9d..cb78d227 100644 --- a/exercises/practice/phone-number/.meta/config.json +++ b/exercises/practice/phone-number/.meta/config.json @@ -19,5 +19,5 @@ }, "blurb": "Clean up user-entered phone numbers so that they can be sent SMS messages.", "source": "Exercise by the JumpstartLab team for students at The Turing School of Software and Design.", - "source_url": "https://turing.edu" + "source_url": "https://www.turing.edu/" } diff --git a/exercises/practice/pig-latin/.meta/config.json b/exercises/practice/pig-latin/.meta/config.json index a8b3c621..d8277c0c 100644 --- a/exercises/practice/pig-latin/.meta/config.json +++ b/exercises/practice/pig-latin/.meta/config.json @@ -18,5 +18,5 @@ }, "blurb": "Implement a program that translates from English to Pig Latin.", "source": "The Pig Latin exercise at Test First Teaching by Ultrasaurus", - "source_url": "https://github.com/ultrasaurus/test-first-teaching/blob/master/learn_ruby/pig_latin/" + "source_url": "https://github.com/ultrasaurus/test-first-teaching/tree/master/learn_ruby/pig_latin" } diff --git a/exercises/practice/relative-distance/.docs/instructions.md b/exercises/practice/relative-distance/.docs/instructions.md index 9046aee7..64ca4e43 100644 --- a/exercises/practice/relative-distance/.docs/instructions.md +++ b/exercises/practice/relative-distance/.docs/instructions.md @@ -36,4 +36,4 @@ Isla and Tariq are siblings and have a separation of 1. Similarly, this implementation would report a separation of 2 from you to your father's brother. ~~~~ -[six-bacons]: https://en.m.wikipedia.org/wiki/Six_Degrees_of_Kevin_Bacon +[six-bacons]: https://en.wikipedia.org/wiki/Six_Degrees_of_Kevin_Bacon diff --git a/exercises/practice/reverse-string/.meta/config.json b/exercises/practice/reverse-string/.meta/config.json index cae7d4bb..048c151a 100644 --- a/exercises/practice/reverse-string/.meta/config.json +++ b/exercises/practice/reverse-string/.meta/config.json @@ -15,5 +15,5 @@ }, "blurb": "Reverse a given string.", "source": "Introductory challenge to reverse an input string", - "source_url": "https://medium.freecodecamp.org/how-to-reverse-a-string-in-javascript-in-3-different-ways-75e4763c68cb" + "source_url": "https://www.freecodecamp.org/news/how-to-reverse-a-string-in-javascript-in-3-different-ways-75e4763c68cb" } diff --git a/exercises/practice/space-age/.meta/config.json b/exercises/practice/space-age/.meta/config.json index 75fea0c5..0e886bbe 100644 --- a/exercises/practice/space-age/.meta/config.json +++ b/exercises/practice/space-age/.meta/config.json @@ -15,5 +15,5 @@ }, "blurb": "Given an age in seconds, calculate how old someone is in terms of a given planet's solar years.", "source": "Partially inspired by Chapter 1 in Chris Pine's online Learn to Program tutorial.", - "source_url": "https://pine.fm/LearnToProgram/?Chapter=01" + "source_url": "https://pine.fm/LearnToProgram/chap_01.html" } diff --git a/exercises/practice/triangle/.meta/config.json b/exercises/practice/triangle/.meta/config.json index 54611e8b..d2c416a8 100644 --- a/exercises/practice/triangle/.meta/config.json +++ b/exercises/practice/triangle/.meta/config.json @@ -18,5 +18,5 @@ }, "blurb": "Determine if a triangle is equilateral, isosceles, or scalene.", "source": "The Ruby Koans triangle project, parts 1 & 2", - "source_url": "https://web.archive.org/web/20220831105330/http://rubykoans.com" + "source_url": "https://www.rubykoans.com/" }