Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ;; -*- coding: utf-8; mode: common-lisp -*-
- ;; num-roman-test.lisp
- (asdf:load-system :fiveam)
- (defpackage :num-roman-test
- (:use :cl :fiveam))
- (in-package :num-roman-test)
- (load "num-roman.lisp")
- (def-suite num-roman-suite :description "Suite de pruebas unitarias.")
- (in-suite num-roman-suite)
- (test prueba-unidades
- (let ((pruebas '(("I" 1)
- ("II" 2)
- ("III" 3)
- ("IV" 4)
- ("V" 5)
- ("IX" 9)) ))
- (loop for elem in pruebas do
- (is (string-equal (car elem) (num-roman (cadr elem)))) ) ) )
- (test prueba-decenas
- (let ((pruebas '(("XI" 11)
- ("XXVIII" 28)
- ("XXXVII" 37)
- ("XLII" 42)
- ("XCIX" 99)) ))
- (loop for elem in pruebas do
- (is (string-equal (car elem) (num-roman (cadr elem)))) ) ) )
- (test prueba-centenas
- (let ((pruebas '(("C" 100)
- ("CXXIII" 123)
- ("CCXLV" 245)) ))
- (loop for elem in pruebas do
- (is (string-equal (car elem) (num-roman (cadr elem)))) ) ) )
- (test prueba-millares
- (let ((pruebas '(("MCMLXXIV" 1974)
- ("MCMLXXXV" 1985)
- ("MMXII" 2012)) ))
- (loop for elem in pruebas do
- (is (string-equal (car elem) (num-roman (cadr elem)))) ) ) )
- ;; (fail "Prueba no implementada")
- (run! 'num-roman-suite)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement