summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorTim King <kingtim@gmail.com>2012-04-25 08:19:47 -0700
committerTim King <kingtim@gmail.com>2012-04-25 08:19:47 -0700
commitdb6a0c15850bbb7a2658c5af55dedc24cd219f1f (patch)
treee2b243393858cee935b8ca2fd746cdd6b8072594 /test
parentaf2e0118294aa5af65aac38bc5cf48a41b193150 (diff)
bdecode
Diffstat (limited to 'test')
-rw-r--r--test/nrepl-tests.el59
1 files changed, 59 insertions, 0 deletions
diff --git a/test/nrepl-tests.el b/test/nrepl-tests.el
new file mode 100644
index 00000000..82763a50
--- /dev/null
+++ b/test/nrepl-tests.el
@@ -0,0 +1,59 @@
+;;; nrepl-tests.el
+
+;; Copyright (C) 2007, 2008, 2010 Free Software Foundation, Inc.
+
+;; Author: Tim King
+
+;; This file is NOT part of GNU Emacs.
+
+;; This program is free software: you can redistribute it and/or
+;; modify it under the terms of the GNU General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+;;
+;; This program is distributed in the hope that it will be useful, but
+;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+;; General Public License for more details.
+;;
+;; You should have received a copy of the GNU General Public License
+;; along with this program. If not, see `http://www.gnu.org/licenses/'.
+
+;;; Commentary:
+
+;; This file is part of nrepl
+
+;;; Code:
+
+(eval-when-compile
+ (require 'cl))
+(require 'ert)
+(require 'nrepl)
+
+(ert-deftest nrepl-foo ()
+ (assert (equal "foo" "foo")))
+
+;; ({:ns "user",
+;; :value "2",
+;; :session "a5bf4c75-e32e-4bf5-a7be-65e70cd7da57",
+;; :id "48e4d93c-0c96-4f6e-bb4e-22a1fabe7143"}
+;; {:status ["done"],
+;; :session "a5bf4c75-e32e-4bf5-a7be-65e70cd7da57",
+;; :id "48e4d93c-0c96-4f6e-bb4e-22a1fabe7143"})
+
+(ert-deftest test-nrepl-read-bencode-string ()
+ (assert (equal "spam" (nrepl-read-bencode "4:spam"))))
+
+(ert-deftest test-nrepl-read-bencode-integer ()
+ (assert (equal 3 (nrepl-read-bencode "i3e"))))
+
+(ert-deftest test-nrepl-read-bencode-list ()
+ (assert (equal '(spam eggs) (nrepl-read-bencode "l4:spam4:eggse"))))
+
+(ert-deftest test-nrepl-read-bencode-dict ()
+ (assert (equal '((cow . moo) (spam . eggs)) (nrepl-read-bencode "d3:cow3:moo4:spam4:eggse"))))
+
+(ert-deftest test-nrepl-read-bencode-nrepl-response ()
+ (assert (equal '((("ns" . "user") ("session" . "20c51458-911e-47ec-97c2-c509aed95b125") ("value" . "2"))
+ (("session" . "20c51458-911e-47ec-97c2-c509aed95b125") ("status" . ("done"))))
+ (nrepl-read-bencode "d2:ns4:user7:session36:20c51458-911e-47ec-97c2-c509aed95b125:value1:2ed7:session36:20c51458-911e-47ec-97c2-c509aed95b126:statusl4:doneee"))))