trackler 2.2.1.152 → 2.2.1.153

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1c92326d9fcc16f5c7f1c114e23bbd4e97f5b815
4
- data.tar.gz: 62c9231ce728d5a5fe873d0d5b1d863493bbfb96
3
+ metadata.gz: e991216d9ea33bd87ff86e3588f1cf95947a7897
4
+ data.tar.gz: e97ed241757d28be0a367f79cef2dd736c706bfd
5
5
  SHA512:
6
- metadata.gz: 0c0c210cbed5bf3517bfb51c95ff89ba786609e2242bbff5d55428e391f301e703276f9bae08f1924b06b29ce1684e884ac3dae915627943cdbc8aa428380bee
7
- data.tar.gz: 20e1fe85966e275e56fb87f5fe614f98fce8b59b35071e514430e1b74bfdb5a40e5b312dea7bc5ad3cfc347db32818d03d699b0d05904509f12279569f8241fa
6
+ metadata.gz: dde1e87b24a0de86ea3d2de1bb5ac31f6e33c2d45cc907682a8518e76c65aa9cd611a09c35603feee4df96a5550a2bd146817ab61f161f71357c63cfdaab69da
7
+ data.tar.gz: 7551620e5417926310541ccb3c2f711610a817149d068a2b5c28df0f1f2e2c2b608272fc6cab46ae71801f239adf74b1a6ebd684225f907763f3a0880e4d035a
@@ -1,3 +1,3 @@
1
1
  module Trackler
2
- VERSION = "2.2.1.152"
2
+ VERSION = "2.2.1.153"
3
3
  end
@@ -816,6 +816,16 @@
816
816
  ],
817
817
  "unlocked_by": null,
818
818
  "uuid": "7ed99829-acd8-4724-b92f-85146f1709f9"
819
+ },
820
+ {
821
+ "core": false,
822
+ "difficulty": 1,
823
+ "slug": "two-fer",
824
+ "topics": [
825
+ "strings"
826
+ ],
827
+ "unlocked_by": null,
828
+ "uuid": "e7f3280e-0bef-4fac-8a69-cbfa2e5f818a"
819
829
  }
820
830
  ],
821
831
  "foregone": [
@@ -0,0 +1,52 @@
1
+ # Two Fer
2
+
3
+ Two-fer or 2-fer is short for two for one. One for you and one for me.
4
+
5
+ ````bash
6
+ $ elixir "One for X, one for me."
7
+ ```
8
+
9
+ When X is a name or "you".
10
+
11
+ If the given name is "Dunk", the result should be "One for Dunk, one for me." If no name is given, the result should be "One for you, one for me."
12
+
13
+ ## Running tests
14
+
15
+ Execute the tests with:
16
+
17
+ ```bash
18
+ $ elixir two_fer_test.exs
19
+ ```
20
+
21
+ ### Pending tests
22
+
23
+ In the test suites, all but the first test have been skipped.
24
+
25
+ Once you get a test passing, you can unskip the next one by
26
+ commenting out the relevant `@tag :pending` with a `#` symbol.
27
+
28
+ For example:
29
+
30
+ ```elixir
31
+ # @tag :pending
32
+ test "shouting" do
33
+ assert Bob.hey("WATCH OUT!") == "Whoa, chill out!"
34
+ end
35
+ ```
36
+
37
+ Or, you can enable all the tests by commenting out the
38
+ `ExUnit.configure` line in the test suite.
39
+
40
+ ```elixir
41
+ # ExUnit.configure exclude: :pending, trace: true
42
+ ```
43
+
44
+ For more detailed information about the Elixir track, please
45
+ see the [help page](http://exercism.io/languages/elixir).
46
+
47
+ ## Source
48
+
49
+ This is an exercise to introduce users to basic programming constructs, just after Hello World. https://en.wikipedia.org/wiki/Two-fer
50
+
51
+ ## Submitting Incomplete Solutions
52
+ It's possible to submit an incomplete solution so you can see how others have completed the exercise.
@@ -0,0 +1,8 @@
1
+ defmodule TwoFer do
2
+ @doc """
3
+ Two-fer or 2-fer is short for two for one. One for you and one for me.
4
+ """
5
+ @spec two_fer(String.t()) :: String.t()
6
+ def two_fer(name \\ "you") when is_bitstring(name),
7
+ do: "One for #{name}, one for me"
8
+ end
@@ -0,0 +1,8 @@
1
+ defmodule TwoFer do
2
+ @doc """
3
+ Two-fer or 2-fer is short for two for one. One for you and one for me.
4
+ """
5
+ @spec two_fer(String.t()) :: String.t()
6
+ def two_fer(name) do
7
+ end
8
+ end
@@ -0,0 +1,40 @@
1
+ if !System.get_env("EXERCISM_TEST_EXAMPLES") do
2
+ Code.load_file("two_fer.exs", __DIR__)
3
+ end
4
+
5
+ ExUnit.start()
6
+ ExUnit.configure(exclude: :pending, trace: true)
7
+
8
+ defmodule TwoFerTest do
9
+ use ExUnit.Case
10
+
11
+ test "no name given" do
12
+ assert TwoFer.two_fer() == "One for you, one for me"
13
+ end
14
+
15
+ @tag :pending
16
+ test "a name given" do
17
+ assert TwoFer.two_fer("Gilberto Barros") == "One for Gilberto Barros, one for me"
18
+ end
19
+
20
+ @tag :pending
21
+ test "when the parameter is a number" do
22
+ assert_raise FunctionClauseError, fn ->
23
+ TwoFer.two_fer(10)
24
+ end
25
+ end
26
+
27
+ @tag :pending
28
+ test "when the parameter is an atom" do
29
+ assert_raise FunctionClauseError, fn ->
30
+ TwoFer.two_fer(:bob)
31
+ end
32
+ end
33
+
34
+ @tag :pending
35
+ test "when the parameter is a charlist" do
36
+ assert_raise FunctionClauseError, fn ->
37
+ refute TwoFer.two_fer('Jon Snow')
38
+ end
39
+ end
40
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: trackler
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.1.152
4
+ version: 2.2.1.153
5
5
  platform: ruby
6
6
  authors:
7
7
  - Katrina Owen
@@ -4555,6 +4555,10 @@ files:
4555
4555
  - tracks/elixir/exercises/twelve-days/example.exs
4556
4556
  - tracks/elixir/exercises/twelve-days/twelve_days.exs
4557
4557
  - tracks/elixir/exercises/twelve-days/twelve_days_test.exs
4558
+ - tracks/elixir/exercises/two-fer/README.md
4559
+ - tracks/elixir/exercises/two-fer/example.exs
4560
+ - tracks/elixir/exercises/two-fer/two_fer.exs
4561
+ - tracks/elixir/exercises/two-fer/two_fer_test.exs
4558
4562
  - tracks/elixir/exercises/word-count/README.md
4559
4563
  - tracks/elixir/exercises/word-count/example.exs
4560
4564
  - tracks/elixir/exercises/word-count/word_count.exs