File: context_with_options_test.rb

package info (click to toggle)
ruby-riot 0.12.7-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bullseye, buster, forky, sid, trixie
  • size: 512 kB
  • sloc: ruby: 2,557; makefile: 2
file content (36 lines) | stat: -rw-r--r-- 982 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
require 'teststrap'

context "Context with options" do
  setup do
    Riot::Context.new("Foo") do
      set :foo, "bar"
      set "bar", 2
    end
  end

  asserts_topic.responds_to(:option)

  asserts("option :foo") { topic.option(:foo) }.equals("bar")
  asserts("option \"foo\"") { topic.option("foo") }.nil
  asserts("option \"bar\"") { topic.option("bar") }.equals(2)

  context "and with a nested context" do
    setup do
      Riot::Context.new("Foo", topic) do
        set :goo, "car"
        set "car", 3
      end
    end

    asserts_topic.responds_to(:option)

    asserts("option :foo") { topic.option(:foo) }.equals("bar")
    asserts("option \"bar\"") { topic.option("bar") }.equals(2)

    asserts("option :goo") { topic.option(:goo) }.equals("car")
    asserts("option \"car\"") { topic.option("car") }.equals(3)
    asserts("option :goo on parent") do
      topic.parent.option(:goo)
    end.equals(nil)
  end # and with a nested context
end # Context with options