From 0d9fdc0f4f491785285138f40f89945a612a18f3 Mon Sep 17 00:00:00 2001 From: varnie Date: Sun, 9 Feb 2025 19:51:52 +0300 Subject: [PATCH] update challenge68 tests --- test/challenge68_test.exs | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/test/challenge68_test.exs b/test/challenge68_test.exs index a24ebf4..c6a9255 100644 --- a/test/challenge68_test.exs +++ b/test/challenge68_test.exs @@ -40,6 +40,33 @@ defmodule Challenge68Test do }} end + test "preorder_sequence_to_tree", state do + assert Challenge68.preorder_sequence_to_tree(nil) == nil + assert Challenge68.preorder_sequence_to_tree("") == nil + assert Challenge68.preorder_sequence_to_tree("a l r") == state[:alr_tree] + assert Challenge68.preorder_sequence_to_tree("a l") == state[:al_tree] + + assert Challenge68.preorder_sequence_to_tree("a r") == %TreeNode{ + symbol: "a", + left: %TreeNode{symbol: "r", left: nil, right: nil, weight: nil}, + right: nil + } + + assert Challenge68.preorder_sequence_to_tree("a b d e c f g") == %TreeNode{ + symbol: "a", + left: %TreeNode{symbol: "b", left: nil, right: nil}, + right: %TreeNode{ + symbol: "d", + left: %TreeNode{symbol: "e", left: nil, right: nil}, + right: %TreeNode{ + symbol: "c", + left: %TreeNode{symbol: "f", left: nil, right: nil}, + right: %TreeNode{symbol: "g", left: nil, right: nil} + } + } + } + end + test "preorder", state do assert Challenge68.preorder(nil) == nil