feat(scala): m01–m06 port with shared fixtures
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
045029639e
commit
1e186733d1
23 files changed
+771
-2
No files matched your search
@@ -0,0 +1,23 @@
|
||||
package snake
|
||||
|
||||
class M01UtilSuite extends munit.FunSuite:
|
||||
test("range(0) is empty") { assertEquals(Util.range(0), Nil) }
|
||||
test("range(3) counts from zero up to n-1") { assertEquals(Util.range(3), List(0, 1, 2)) }
|
||||
|
||||
test("dropLast of an empty list is empty") { assertEquals(Util.dropLast(List.empty[Int]), Nil) }
|
||||
test("dropLast removes only the last element") { assertEquals(Util.dropLast(List(1, 2, 3)), List(1, 2)) }
|
||||
test("dropLast leaves its input untouched") {
|
||||
val xs = List(1, 2, 3)
|
||||
assertEquals(Util.dropLast(xs), List(1, 2))
|
||||
assertEquals(xs, List(1, 2, 3))
|
||||
}
|
||||
|
||||
private val sameParity = (a: Int, b: Int) => a % 2 == b % 2
|
||||
test("contains finds an element using the supplied equality") {
|
||||
assertEquals(Util.contains(List(1, 2, 3), 5, sameParity), true)
|
||||
}
|
||||
test("contains is false when no element is equal") { assertEquals(Util.contains(List(2, 4), 3, sameParity), false) }
|
||||
test("contains is false for an empty list") { assertEquals(Util.contains(List.empty[Int], 1, _ == _), false) }
|
||||
test("contains compares structurally when given a structural equality") {
|
||||
assertEquals(Util.contains(List(Point(1, 2)), Point(1, 2), _ == _), true)
|
||||
}
|
||||
Reference in new issue
Block a user