Skip to content

Commit

Permalink
Doing the Erlang way, extracted item into separate file as include.
Browse files Browse the repository at this point in the history
  • Loading branch information
mdbergmann committed Jan 23, 2022
1 parent 8821162 commit c092826
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 14 deletions.
4 changes: 4 additions & 0 deletions lfe/include/gilded-rose-item.lfe
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
;;; Item

(defrecord item
name sellin quality)
11 changes: 1 addition & 10 deletions lfe/src/gilded-rose.lfe
Original file line number Diff line number Diff line change
Expand Up @@ -46,16 +46,7 @@
(defmodule gilded-rose
(export all))

;;; Item

(defrecord item
name sellin quality)

;; for external use by 'import'
(defun make-item (name sellin quality)
(make-item name name sellin sellin quality quality))
(defun item-name (item)
(item-name item))
(include-lib "include/gilded-rose-item.lfe")

;; update-quality

Expand Down
8 changes: 4 additions & 4 deletions lfe/test/gilded-rose-test.lfe
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@
(behaviour ltest-unit)
(export all)
(import (from gilded-rose
(update-quality 1)
(make-item 3)
(item-name 1))))
(update-quality 1))))

(include-lib "ltest/include/ltest-macros.lfe")

(include-lib "include/gilded-rose-item.lfe")

(deftest update-quality-test
(is-equal "foo" (item-name (car (update-quality
(list (make-item "foo" 0 0)))))))
(list (make-item name "foo" sellin 0 quality 0)))))))

0 comments on commit c092826

Please sign in to comment.