summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuillermo Ramos2014-07-02 22:15:26 +0200
committerGuillermo Ramos2014-07-02 22:15:26 +0200
commit4022f2401399c0911103eaf7988fde4372b7f727 (patch)
treecfe2aa02063aea02f5e5790778d4e4fd2f6fdeed
parentf3c354d396a38033dac28ece6f6220e75cef5aec (diff)
download7l-4022f2401399c0911103eaf7988fde4372b7f727.tar.gz
[Factor] Día 2 (sin terminar)
-rw-r--r--factor/examples/greeter/greeter-tests.factor4
-rw-r--r--factor/examples/greeter/greeter.factor4
-rw-r--r--factor/examples/hello/hello.factor7
-rw-r--r--factor/examples/sequences/sequences.factor8
-rw-r--r--factor/examples/strings/strig-tests.factor5
-rw-r--r--factor/examples/strings/strings.factor5
-rw-r--r--factor/examples/test-suite/test-suite.factor13
7 files changed, 46 insertions, 0 deletions
diff --git a/factor/examples/greeter/greeter-tests.factor b/factor/examples/greeter/greeter-tests.factor
new file mode 100644
index 0000000..2c86a79
--- /dev/null
+++ b/factor/examples/greeter/greeter-tests.factor
@@ -0,0 +1,4 @@
+USING: examples.greeter tools.test ;
+IN: examples.greeter.tests
+
+{ "Hello, test" } [ "test" greeting ] unit-test
diff --git a/factor/examples/greeter/greeter.factor b/factor/examples/greeter/greeter.factor
new file mode 100644
index 0000000..825cb43
--- /dev/null
+++ b/factor/examples/greeter/greeter.factor
@@ -0,0 +1,4 @@
+USING: kernel sequences ;
+IN: examples.greeter
+
+: greeting ( name -- greeting ) "Hello, " swap append ;
diff --git a/factor/examples/hello/hello.factor b/factor/examples/hello/hello.factor
new file mode 100644
index 0000000..15b31fb
--- /dev/null
+++ b/factor/examples/hello/hello.factor
@@ -0,0 +1,7 @@
+USE: io
+USE: examples.greeter
+IN: examples.hello
+
+: hello-world ( -- ) "world" greeting print ;
+
+MAIN: hello-world
diff --git a/factor/examples/sequences/sequences.factor b/factor/examples/sequences/sequences.factor
new file mode 100644
index 0000000..b07b4e6
--- /dev/null
+++ b/factor/examples/sequences/sequences.factor
@@ -0,0 +1,8 @@
+USING: kernel ;
+IN: examples.sequences
+
+: find-first ( seq p -- x )
+ SYMBOL: p
+ p set
+
+ f [ p ] reduce ;
diff --git a/factor/examples/strings/strig-tests.factor b/factor/examples/strings/strig-tests.factor
new file mode 100644
index 0000000..714c4ca
--- /dev/null
+++ b/factor/examples/strings/strig-tests.factor
@@ -0,0 +1,5 @@
+USING: examples.strings tools.test ;
+IN: examples.strings.tests
+
+{ f } [ "hola" palindrome ] unit-test ;
+{ t } [ "blrlb" palindrome ] unit-test ;
diff --git a/factor/examples/strings/strings.factor b/factor/examples/strings/strings.factor
new file mode 100644
index 0000000..cf9bd6d
--- /dev/null
+++ b/factor/examples/strings/strings.factor
@@ -0,0 +1,5 @@
+USING: kernel sequences ;
+IN: examples.strings
+
+: palindrome ( s -- bool )
+ dup reverse equal? ;
diff --git a/factor/examples/test-suite/test-suite.factor b/factor/examples/test-suite/test-suite.factor
new file mode 100644
index 0000000..42d0f28
--- /dev/null
+++ b/factor/examples/test-suite/test-suite.factor
@@ -0,0 +1,13 @@
+USING: tools.test io io.streams.null kernel namespaces sequences ;
+
+USE: examples.greeter
+USE: examples.strings
+
+IN: examples.test-suite
+
+: test-all-examples ( -- )
+ [ "examples" test ] with-null-writer
+ test-failures get empty?
+ [ "All tests passed" print ] [ :test-failures ] if ;
+
+MAIN: test-all-examples