summaryrefslogtreecommitdiff
path: root/billing/test/unit/customer_test.rb
blob: abcf96a3101798655a628c17649d813e0648cd1f (plain)
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
37
38
39
40
41
42
43
require 'test_helper'

class CustomerTest < ActiveSupport::TestCase

  setup do
    @customer = FactoryGirl.build(:customer)
  end

  test "test set of attributes should be valid" do
    @customer.valid?
    assert_equal Hash.new, @customer.errors.messages
  end

  test "customer belongs to user" do
    assert_equal User, @customer.user.class
  end

  test "user validation" do
    @customer.user = nil
    assert !@customer.valid?
  end

  test "has no payment info" do
    assert !@customer.braintree_customer_id
    assert !@customer.has_payment_info?
  end

  test "with no braintree data" do
    skip "this is currently commented out in the model"
    assert_equal @customer, @customer.with_braintree_data!
  end

  test "without default credit card" do
    assert_nil @customer.default_credit_card
  end

  test "user with braintree id" do
    @customer = FactoryGirl.build(:braintree_customer)
    assert @customer.braintree_customer_id
    assert @customer.has_payment_info?
  end

end