Теперь тесты точно работают
This commit is contained in:
@@ -1,4 +1,5 @@
|
|||||||
import gleam/int
|
import gleam/int
|
||||||
|
import gleam/io
|
||||||
import gleam/list
|
import gleam/list
|
||||||
import gleam/option
|
import gleam/option
|
||||||
import gleam/order
|
import gleam/order
|
||||||
@@ -28,23 +29,25 @@ fn string_equal(a: String, b: String) -> Bool {
|
|||||||
|
|
||||||
// Генерация случайных данных
|
// Генерация случайных данных
|
||||||
fn gk() -> Int {
|
fn gk() -> Int {
|
||||||
int.random(1000) - 500
|
int.random(10_000) - 5000
|
||||||
}
|
}
|
||||||
|
|
||||||
fn gv() -> String {
|
fn gv() -> String {
|
||||||
let length = int.random(32)
|
let length = int.random(64)
|
||||||
let generator: random.Generator(Int) = random.int(97, 122)
|
let generator: random.Generator(Int) = random.int(97, 122)
|
||||||
let seed = seed.new(42)
|
|
||||||
// random string of given length
|
// random string of given length
|
||||||
string.join(
|
let string =
|
||||||
list.repeat("", length)
|
string.join(
|
||||||
|> list.map(fn(_) {
|
list.repeat("", length)
|
||||||
let code = random.sample(generator, seed)
|
|> list.map(fn(_) {
|
||||||
let assert Ok(cp) = string.utf_codepoint(code)
|
let code = random.sample(generator, seed.random())
|
||||||
string.from_utf_codepoints([cp])
|
let assert Ok(cp) = string.utf_codepoint(code)
|
||||||
}),
|
string.from_utf_codepoints([cp])
|
||||||
"",
|
}),
|
||||||
)
|
"",
|
||||||
|
)
|
||||||
|
io.println("Generating rnd s:" <> string)
|
||||||
|
string
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Тест создания пустого дерева
|
/// Тест создания пустого дерева
|
||||||
@@ -239,7 +242,7 @@ pub fn monoid_left_identity_test() {
|
|||||||
|
|
||||||
let result = lab2.concat(lab2.empty(), tree, int_compare)
|
let result = lab2.concat(lab2.empty(), tree, int_compare)
|
||||||
|
|
||||||
lab2.equal(tree, result, int_equal, string_equal) |> should.be_true
|
lab2.semantic_equal(tree, result, int_compare, string_equal) |> should.be_true
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Тест нейтрального элемента (правая единица)
|
/// Тест нейтрального элемента (правая единица)
|
||||||
@@ -255,7 +258,7 @@ pub fn monoid_right_identity_test() {
|
|||||||
|
|
||||||
let result = lab2.concat(tree, lab2.empty(), int_compare)
|
let result = lab2.concat(tree, lab2.empty(), int_compare)
|
||||||
|
|
||||||
lab2.equal(tree, result, int_equal, string_equal) |> should.be_true
|
lab2.semantic_equal(tree, result, int_compare, string_equal) |> should.be_true
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Тест ассоциативности
|
/// Тест ассоциативности
|
||||||
|
|||||||
Reference in New Issue
Block a user