Class: EyServicesFake::TresfiestasFake

Inherits:
Object
  • Object
show all
Defined in:
lib/ey_services_fake/tresfiestas_fake.rb

Instance Method Summary collapse

Instance Method Details

#appObject



19
20
21
# File 'lib/ey_services_fake/tresfiestas_fake.rb', line 19

def app
  TresfiestasFakeRackApp
end

#base_urlObject



15
16
17
# File 'lib/ey_services_fake/tresfiestas_fake.rb', line 15

def base_url
  BASE_URL
end

#create_awsm(awsm_base_url, awsm_app) ⇒ Object



32
33
34
35
36
37
# File 'lib/ey_services_fake/tresfiestas_fake.rb', line 32

def create_awsm(awsm_base_url, awsm_app)
  Awsm.create(:auth_id => "789eef", :auth_key => "009abb")
  app.awsm_connection = EY::ApiHMAC::AuthedConnection.new("789eef", "009abb")
  app.awsm_connection.backend = awsm_app
  find_awsm
end

#create_partner(sso_user, partner_base_url, partner_app) ⇒ Object



50
51
52
53
54
55
# File 'lib/ey_services_fake/tresfiestas_fake.rb', line 50

def create_partner(sso_user, partner_base_url, partner_app)
  Partner.create(:auth_id => "123edf", :auth_key => "abc456", :name => "Some-Partner")
  app.partner_connection = EY::ApiHMAC::AuthedConnection.new("123edf", "abc456")
  app.partner_connection.backend = partner_app
  find_partner(sso_user)
end

#find_awsmObject



23
24
25
26
27
28
29
30
# File 'lib/ey_services_fake/tresfiestas_fake.rb', line 23

def find_awsm
  awsm_object = Awsm.first
  awsm_object && {
    :id => awsm_object.id,
    :auth_id => awsm_object.auth_id,
    :auth_key => awsm_object.auth_key,
  }
end

#find_partner(sso_user) ⇒ Object



39
40
41
42
43
44
45
46
47
48
# File 'lib/ey_services_fake/tresfiestas_fake.rb', line 39

def find_partner(sso_user)
  partner_object = Partner.first
  partner_object && {
    :id => partner_object.id,
    :name => partner_object.name,
    :auth_id => partner_object.auth_id,
    :auth_key => partner_object.auth_key,
    :registration_url => URL_GEN.service_registration(partner_object),
  }
end

#find_provisioned_service(service_account_id, app_deployment_id) ⇒ Object



97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
# File 'lib/ey_services_fake/tresfiestas_fake.rb', line 97

def find_provisioned_service(, app_deployment_id)
   = ServiceAccount.get()
  provisioned_service = .provisioned_services.first(:app_deployment_id => app_deployment_id)
  provisioned_service && {
    :id => provisioned_service.id,
    :url => URL_GEN.partner_provisioned_service(, provisioned_service),
    :messages_url => URL_GEN.messages(.service, , provisioned_service),
    :pushed_provisioned_service => {
      :vars => provisioned_service.vars,
      :configuration_url => provisioned_service.configuration_url,
      :configuration_required => provisioned_service.configuration_required,
      :url => provisioned_service.url
    }
  }
end

#find_service(partner_id) ⇒ Object



57
58
59
60
61
62
63
64
65
66
67
68
69
# File 'lib/ey_services_fake/tresfiestas_fake.rb', line 57

def find_service(partner_id)
  partner_object = Partner.get!(partner_id)
  service_object = partner_object.services.first
  service_object && {
    :id => service_object.id,
    :name => service_object.name,
    :description => service_object.description,
    :home_url => service_object.home_url,
    :label => service_object.label,
    :revenue_share => service_object.revenue_share,
    :service_accounts_url => service_object.service_accounts_url,
  }
end

#find_service_account(service_id, sso_account_id) ⇒ Object



79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
# File 'lib/ey_services_fake/tresfiestas_fake.rb', line 79

def (service_id, )
  service_object = Service.get(service_id)
   = service_object.service_accounts.first(:sso_account_id => .to_s)
   && {
    :id             => .id,
    :url            => URL_GEN.(service_object, ),
    :messages_url   => URL_GEN.messages(service_object, ),
    :invoices_url   => URL_GEN.invoices(service_object, ),
    :pushed_service_account => {
      :provisioned_services_url => .provisioned_services_url,
      :configuration_url => .configuration_url,
      :url => .url,
      :users_url => .users_url,
      :configuration_required => .configuration_required,
    }
  }
end

#latest_invoiceObject



113
114
115
116
117
118
119
120
# File 'lib/ey_services_fake/tresfiestas_fake.rb', line 113

def latest_invoice
  invoice = Invoice.last
  {
    :total_amount_cents  => invoice.total_amount_cents,
    :line_item_description => invoice.line_item_description,
    :service_account_id => invoice.,
  }
end

#latest_status_messageObject



122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'lib/ey_services_fake/tresfiestas_fake.rb', line 122

def latest_status_message
  if message = Message.last(:message_type => "status")
    to_return = {
      :id => message.id,
      :subject => message.subject,
      :body => message.body
    }
    if message.respond_to?(:service_account) && message.
      to_return[:service_account_id] = message..id
    end
    if message.respond_to?(:provisioned_service) && message.provisioned_service
      to_return[:provisioned_service_id] = message.provisioned_service.id
    end
    to_return
  end
end

#make_service_available_for_account(service_id, sso_account_id, reason = "test") ⇒ Object



75
76
77
# File 'lib/ey_services_fake/tresfiestas_fake.rb', line 75

def (service_id, , reason = "test")
  ServiceEnablement.create(:service_id => service_id.to_i, :sso_account_id => .to_s, :reason => reason)
end

#reset!Object



11
12
13
# File 'lib/ey_services_fake/tresfiestas_fake.rb', line 11

def reset!
  Model.nuke_all
end

#service_available_for_account?(service_id, sso_account_id) ⇒ Boolean

Returns:

  • (Boolean)


71
72
73
# File 'lib/ey_services_fake/tresfiestas_fake.rb', line 71

def service_available_for_account?(service_id, )
  Service.get(service_id).service_enablements.first(:sso_account_id => .to_s)
end

#trigger_mock_user_delete(sso_user) ⇒ Object



154
155
156
157
158
159
160
161
162
163
164
165
# File 'lib/ey_services_fake/tresfiestas_fake.rb', line 154

def trigger_mock_user_delete(sso_user)
  sso_user.accounts.each do ||
    ServiceAccount.all(:sso_account_id => .id).each do ||
      if .users_url
        users = app.partner_connection.get(.users_url){|json,_| json }
        users.each do |user|
          app.partner_connection.delete(user["url"])
        end
      end
    end
  end
end

#trigger_mock_user_update(sso_user, new_email) ⇒ Object



139
140
141
142
143
144
145
146
147
148
149
150
151
152
# File 'lib/ey_services_fake/tresfiestas_fake.rb', line 139

def trigger_mock_user_update(sso_user, new_email)
  sso_user.accounts.each do ||
    ServiceAccount.all(:sso_account_id => .id).each do ||
      if .users_url
        users = app.partner_connection.get(.users_url){|json,_| json }
        users.each do |user|
          unless user["user"]["ey_user_email"] == new_email
            app.partner_connection.put(user["url"], :user => {:ey_user_email => new_email})
          end
        end
      end
    end
  end
end