test/unit/test_contact.rb (1197B) - raw
1 require 'test_helper'
2 require 'sup'
3 require 'sup/contact'
4
5 module Redwood
6
7 class TestContact < Minitest::Test
8 def setup
9 @contact = ContactManager.init(File.expand_path("../../fixtures/contacts.txt", __FILE__))
10 @person = Person.new (+"Terrible Name"), (+"terrible@name.com")
11 end
12
13 def teardown
14 runner = Redwood.const_get "ContactManager".to_sym
15 runner.deinstantiate!
16 end
17
18 def test_contact_manager
19 assert @contact
20
21 ## 2 contacts are imported from the fixture file.
22 assert_equal 2, @contact.contacts.count
23
24 rc = @contact.contact_for "RC"
25 assert_equal "Random Contact", rc.name
26 assert @contact.is_aliased_contact? rc
27 assert_equal "RC", @contact.alias_for(rc)
28
29 uc = @contact.person_for "unaliased@example.invalid"
30 refute @contact.is_aliased_contact? uc
31 assert_nil @contact.alias_for uc
32 assert_equal [rc, uc], @contact.contacts
33 assert_equal [rc], @contact.contacts_with_aliases
34
35 assert_nil @contact.contact_for "TN"
36 @contact.update_alias @person, "TN"
37
38 assert @contact.is_aliased_contact?(@person)
39 assert_equal @person, @contact.contact_for("TN")
40
41 assert_equal "TN", @contact.alias_for(@person)
42 end
43 end
44
45 end