sup

A curses threads-with-tags style email client

sup.git

git clone https://supmua.dev/git/sup/

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