/**
  * Verify expected behavior when the website id is not set
  */
 public function testUpdateCustomerNoWebsiteId()
 {
     $customerData = $this->customerHelper->createSampleCustomer();
     $existingCustomerDataObject = $this->_getCustomerData($customerData[Customer::ID]);
     $lastName = $existingCustomerDataObject->getLastname();
     $customerData[Customer::LASTNAME] = $lastName . 'Updated';
     $newCustomerDataObject = $this->customerDataFactory->create();
     $this->dataObjectHelper->populateWithArray($newCustomerDataObject, $customerData, '\\Magento\\Customer\\Api\\Data\\CustomerInterface');
     $serviceInfo = ['rest' => ['resourcePath' => self::RESOURCE_PATH . "/{$customerData[Customer::ID]}", 'httpMethod' => \Magento\Framework\Webapi\Rest\Request::HTTP_METHOD_PUT], 'soap' => ['service' => self::SERVICE_NAME, 'serviceVersion' => self::SERVICE_VERSION, 'operation' => self::SERVICE_NAME . 'Save']];
     $newCustomerDataObject = $this->dataObjectProcessor->buildOutputDataArray($newCustomerDataObject, 'Magento\\Customer\\Api\\Data\\CustomerInterface');
     unset($newCustomerDataObject['website_id']);
     $requestData = ['customer' => $newCustomerDataObject];
     $expectedMessage = '"Associate to Website" is a required value.';
     try {
         $this->_webApiCall($serviceInfo, $requestData);
         $this->fail("Expected exception.");
     } catch (\SoapFault $e) {
         $this->assertContains($expectedMessage, $e->getMessage(), "SoapFault does not contain expected message.");
     } catch (\Exception $e) {
         $errorObj = $this->customerHelper->processRestExceptionResult($e);
         $this->assertEquals($expectedMessage, $errorObj['message'], 'Invalid message: "' . $e->getMessage() . '"');
         $this->assertEquals(HTTPExceptionCodes::HTTP_BAD_REQUEST, $e->getCode());
     }
 }