exercism / exercism/haskell

Satellite requires unnatural edge case checking

Ouverte
#1,259 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Haskell
Étoiles
529
Forks
201
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

I feel like the first test of "satellite"
```
Case { description = "Empty tree"
, preorder = ""
, inorder = ""
, expected = Nothing
}
```
should be
```
Case { description = "Empty tree"
, preorder = ""
, inorder = ""
, expected = Just Leaf
}
```
Reasons:
1) the `BinaryTree` type already supports empty trees, so expecting `Nothing` is redundant
2) empty list is a valid inorder and preorder traversal for an empty tree, so expecting `Nothing` is misleading, as it indicates that an error has occured.
3) A recursive implementation of `treeFromTraversals` naturally outputs `Just Leaf` on empty inputs, thus, satisfying the tests requires an awkward wrapper function.

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.