~dyams/unity-2d/update-launcher-context-menu

« back to all changes in this revision

Viewing changes to tests/misc/lib/xdo/test/test_clipboard.rb

  • Committer: LDS
  • Date: 2012-01-26 11:26:24 UTC
  • mfrom: (792.1.76 unity-2d)
  • Revision ID: lohith.shivamurthy@canonical.com-20120126112624-mscp0inijuzt0kxf
[launcher] merged with trunk

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/usr/bin/env ruby
 
2
#Encoding: UTF-8
 
3
 
 
4
require "test/unit"
 
5
require File.join(File.dirname(__FILE__), '../clipboard')
 
6
 
 
7
class ClipboardTest < Test::Unit::TestCase
 
8
  
 
9
  def test_read
 
10
    #Write something to the clipboard first
 
11
    IO.popen("#{XDo::XSEL} -i", "w"){|io| io.write("Some primary test text")}
 
12
    IO.popen("#{XDo::XSEL} -b -i", "w"){|io| io.write("Some clipboard \ntest text")}
 
13
    IO.popen("#{XDo::XSEL} -s -i", "w"){|io| io.write("Some secondary test text")}
 
14
    
 
15
    clip = XDo::Clipboard.read
 
16
    assert_equal("Some primary test text", XDo::Clipboard.read_primary)
 
17
    assert_equal(XDo::Clipboard.read_primary, clip[:primary])
 
18
    assert_equal("Some clipboard \ntest text", XDo::Clipboard.read_clipboard)
 
19
    assert_equal(XDo::Clipboard.read_clipboard, clip[:clipboard])
 
20
    assert_equal("Some secondary test text", XDo::Clipboard.read_secondary)
 
21
    assert_equal(XDo::Clipboard.read_secondary, clip[:secondary])
 
22
  end
 
23
  
 
24
  def test_write
 
25
    XDo::Clipboard.write_primary "Primary!"
 
26
    XDo::Clipboard.write_clipboard "Clipboard!\nNewline"
 
27
    XDo::Clipboard.write_secondary "Secondary!"
 
28
    
 
29
    assert_equal("Primary!", `#{XDo::XSEL}`)
 
30
    assert_equal("Secondary!", `#{XDo::XSEL} -s`)
 
31
    assert_equal("Clipboard!\nNewline", `#{XDo::XSEL} -b`)
 
32
    
 
33
    XDo::Clipboard.write("XYZ", :primary, :secondary, :clipboard)
 
34
    assert_equal({ :primary => "XYZ", :secondary => "XYZ", :clipboard => "XYZ"}, XDo::Clipboard.read)
 
35
  end
 
36
  
 
37
  def test_append
 
38
    ["primary", "secondary", "clipboard"].each{|m| XDo::Clipboard.send(:"write_#{m}", "This is... ")}
 
39
    XDo::Clipboard.append("a Test!", :primary, :secondary, :clipboard)
 
40
    ["primary", "secondary", "clipboard"].each{|m| assert_equal(XDo::Clipboard.send(:"read_#{m}"), "This is... a Test!")}
 
41
  end
 
42
  
 
43
  def test_clear
 
44
    XDo::Clipboard.write("ABC", :primary, :secondary, :clipboard)
 
45
    ["primary", "secondary", "clipboard"].each{|m| XDo::Clipboard.send("clear_#{m}")}
 
46
    ["primary", "secondary", "clipboard"].each{|m| assert_equal("", XDo::Clipboard.send("read_#{m}"))}
 
47
  end
 
48
  
 
49
end