-
  In order to test find nearest Partner functionality and assign to opportunity ,
-
  I Set Geo Lattitude and Longitude according to partner address.
-
  !python {model: res.partner}: |
    self.geo_localize(cr, uid, [ref('base.res_partner_2')], context)
-
 I check Geo Latitude and Longitude of partner after set
-
  !python {model: res.partner}: |
    partner = self.browse(cr, uid, ref('base.res_partner_2'))
    assert 50 < partner.partner_latitude < 51, "Latitude is wrong: 50 < %s < 51" % partner.partner_latitude
    assert 3 < partner.partner_longitude < 5, "Longitude is wrong: 3 < %s < 5" % partner.partner_longitude
-
  I assign nearest partner to opportunity.
-
  !python {model: crm.lead}: |
    self.assign_partner(cr, uid, [ref('crm.crm_case_21')], context=context)
-
  I check assigned partner of opportunity who is nearest Geo Latitude and Longitude of opportunity.
-
  !python {model: crm.lead}: |
    lead = self.browse(cr, uid, ref('crm.crm_case_21'))
    assert lead.partner_assigned_id.id == ref('base.res_partner_18') , "Opportuniy is not assigned nearest partner"
    assert 50 < lead.partner_latitude < 55, "Latitude is wrong: 50 < %s < 55" % lead.partner_latitude
    assert -4 < lead.partner_longitude < -1, "Longitude is wrong: -4 < %s < -1" % lead.partner_longitude 
-
  I forward this opportunity to its nearest partner.
-
  !python {model: crm.lead.forward.to.partner}: |
    context.update({'default_model': 'crm.lead', 'default_res_id': ref('crm.crm_case_21'), 'active_ids': [ref('crm.crm_case_21')]})
    forward_id = self.create(cr, uid, {}, context=context)
    try:
      self.action_forward(cr, uid, [forward_id], context=context)
    except:
      pass
