cloud-8.x-2.0-beta1/modules/cloud_service_providers/k8s/tests/src/Traits/K8sTestMockTrait.php
modules/cloud_service_providers/k8s/tests/src/Traits/K8sTestMockTrait.php
<?php
namespace Drupal\Tests\k8s\Traits;
use Drupal\Component\Utility\Random;
/**
* The trait creating mock data for k8s testing.
*/
trait K8sTestMockTrait {
/**
* Update getNodes in mock data.
*
* @param array $data
* The mock data.
*/
protected function updateNodesMockData(array $data) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$nodes = [];
foreach ($data as $node_data) {
$nodes[] = [
'metadata' => [
'name' => $node_data['name'],
'creationTimestamp' => date('Y/m/d H:i:s'),
'labels' => [
'label1' => 'label-' . $random->string(8, TRUE),
],
'annotations' => [
'annotation1' => 'annotation-' . $random->string(8, TRUE),
],
],
'spec' => [
'podCIDR' => $random->name(8, TRUE),
'providerID' => $random->name(8, TRUE),
'unschedulable' => FALSE,
],
'status' => [
'capacity' => [
'cpu' => 2,
'memory' => '2Gi',
'pods' => 110,
],
'conditions' => [
[
'type' => 'Ready',
],
],
'addresses' => [
[
'type' => 'type-' . $random->name(8, TRUE),
'address' => implode(
'.',
[rand(0, 254), rand(0, 255), rand(0, 255), rand(1, 255)]
),
],
],
'nodeInfo' => [
'machineID' => 'machine-' . $random->name(16, TRUE),
'systemUUID' => 'system-' . $random->name(16, TRUE),
'bootID' => 'boot-' . $random->name(16, TRUE),
'kernelVersion' => 'kernel-' . $random->name(8, TRUE),
'osImage' => 'os-' . $random->name(8, TRUE),
'containerRuntimeVersion' => 'version-' . $random->name(8, TRUE),
'kubeletVersion' => 'kubelet-' . $random->name(8, TRUE),
'kubeProxyVersion' => 'kubeProxy-' . $random->name(8, TRUE),
'operatingSystem' => 'linux',
'architecture' => 'arc-' . $random->name(8, TRUE),
],
],
];
}
$mock_data['getNodes'] = $nodes;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update createNamespace in mock data.
*
* @param array $namespace
* The namespace mock data.
*/
protected function addNamespaceMockData(array $namespace) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$create_namespace = [
'metadata' => [
'name' => $namespace['name'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
'status' => [
'phase' => 'Active',
],
];
$mock_data['createNamespace'] = $create_namespace;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update getNamespace in mock data.
*
* @param array $namespace
* The namespace mock data.
*/
protected function getNamespaceMockData(array $namespace) {
$get_namespaces[] = [
'metadata' => [
'name' => $namespace['name'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
];
$mock_data['getNamespaces'] = $get_namespaces;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update updateNamespace in mock data.
*
* @param array $namespace
* The namespace mock data.
*/
protected function updateNamespaceMockData(array $namespace) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$update_namespace = [
'metadata' => [
'name' => $namespace['name'],
],
'status' => [
'phase' => 'Active',
],
];
$mock_data['updateNamespace'] = $update_namespace;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update deleteNamespace in mock data.
*
* @param array $namespace
* The namespace mock data.
*/
protected function deleteNamespaceMockData(array $namespace) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$delete_namespace = [
'metadata' => [
'name' => $namespace['name'],
],
'status' => [
'phase' => 'Active',
],
];
$mock_data['deleteNamespace'] = $delete_namespace;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update deletePod in mock data.
*
* @param array $pod
* The pod mock data.
*/
protected function deletePodMockData(array $pod) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$delete_pod = [
'metadata' => [
'name' => $pod['name'],
],
'status' => [
'phase' => 'Active',
],
];
$mock_data['deletePod'] = $delete_pod;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update createPod in mock data.
*
* @param array $pod
* The pod mock data.
*/
protected function addPodMockData(array $pod) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$create_pod = [
'metadata' => [
'name' => $pod['name'],
'namespace' => $pod['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
'status' => [
'phase' => 'Active',
],
];
$mock_data['createPod'] = $create_pod;
$get_namespaces[] = [
'metadata' => [
'name' => $pod['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
];
$mock_data['getNamespaces'] = $get_namespaces;
$get_pods = [];
$get_pods[] = $create_pod;
$get_pods[0]['spec'] = [
'containers' => [],
'nodeName' => 'node-name' . $random->name(8, TRUE),
];
$get_pods[0]['status'] = [
'containerStatuses' => [],
'phase' => 'Active',
'qosClass' => 'BestEffort',
'podIP' => '10.0.0.1',
];
$mock_data['getPods'] = $get_pods;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update updatePod in mock data.
*
* @param array $pod
* The pod mock data.
*/
protected function updatePodMockData(array $pod) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$update_pod = [
'metadata' => [
'name' => $pod['name'],
'namespace' => $pod['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
'status' => [
'phase' => 'Active',
],
];
$mock_data['updatePod'] = $update_pod;
$get_pods = [];
$get_pods[] = $update_pod;
$get_pods[0]['spec'] = [
'containers' => [],
'nodeName' => 'node-name' . $random->name(8, TRUE),
];
$get_pods[0]['status'] = [
'containerStatuses' => [],
'phase' => 'Active',
'qosClass' => 'BestEffort',
'podIP' => '10.0.0.1',
];
$mock_data['getPods'] = $get_pods;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update getPodLogs in mock data.
*
* @param string $logs
* The pod mock data.
*/
protected function getPodLogsMockData($logs) {
$mock_data = $this->getMockDataFromConfig();
$mock_data['getPodLogs'] = $logs;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update getMetricsPod in mock data.
*
* @param string $metrics
* The pod mock data.
*/
protected function getMetricsPodMockData($metrics) {
$mock_data = $this->getMockDataFromConfig();
$mock_data['getMetricsPods'] = $metrics;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update createDeployment in mock data.
*
* @param array $deployment
* The pod mock data.
*/
protected function addDeploymentMockData(array $deployment) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$create_deployment = [
'metadata' => [
'name' => $deployment['name'],
'namespace' => $deployment['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
'status' => [
'phase' => 'Active',
],
];
$mock_data['createDeployment'] = $create_deployment;
$get_namespaces[] = [
'metadata' => [
'name' => $deployment['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
];
$mock_data['getNamespaces'] = $get_namespaces;
$get_deployments = [];
$get_deployments[] = $create_deployment;
$get_deployments[0]['spec'] = [
'strategy' => ['type' => 'rollingUpdate'],
'revisionHistoryLimit' => 10,
];
$get_deployments[0]['status'] = [
'availableReplicas' => 3,
'collisionCount' => 1,
'observedGeneration' => 5,
'readyReplicas' => 2,
'replicas' => 2,
'unavailableReplicas' => 1,
'updatedReplicas' => 2,
];
$mock_data['getDeployments'] = $get_deployments;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update updateDeployment in mock data.
*
* @param array $deployment
* The deployment mock data.
*/
protected function updateDeploymentMockData(array $deployment) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$update_deployment = [
'metadata' => [
'name' => $deployment['name'],
'namespace' => $deployment['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
];
$mock_data['updateDeployment'] = $update_deployment;
$get_deployments = [];
$get_deployments[] = $update_deployment;
$get_deployments[0]['spec'] = [
'strategy' => ['type' => 'rollingUpdate'],
'revisionHistoryLimit' => 10,
];
$get_deployments[0]['status'] = [
'availableReplicas' => 3,
'collisionCount' => 1,
'observedGeneration' => 5,
'readyReplicas' => 2,
'replicas' => 2,
'unavailableReplicas' => 1,
'updatedReplicas' => 2,
];
$mock_data['getDeployments'] = $get_deployments;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update deleteDeployment in mock data.
*
* @param array $deployment
* The deployment mock data.
*/
protected function deleteDeploymentMockData(array $deployment) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$delete_deployment = [
'metadata' => [
'name' => $deployment['name'],
],
];
$mock_data['deleteDeployment'] = $delete_deployment;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update createReplicaSet in mock data.
*
* @param array $replica_set
* The pod mock data.
*/
protected function addReplicaSetMockData(array $replica_set) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$create_replica_set = [
'metadata' => [
'name' => $replica_set['name'],
'namespace' => $replica_set['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
'status' => [
'phase' => 'Active',
],
];
$mock_data['createReplicaSet'] = $create_replica_set;
$get_namespaces[] = [
'metadata' => [
'name' => $replica_set['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
];
$mock_data['getNamespaces'] = $get_namespaces;
$get_replica_sets = [];
$get_replica_sets[] = $create_replica_set;
$get_replica_sets[0]['spec'] = [
'replicas' => 10,
];
$get_replica_sets[0]['status'] = [
'availableReplicas' => 5,
'observedGeneration' => 2,
'readyReplicas' => 2,
'fullyLabeledReplicas' => 1,
];
$mock_data['getReplicaSets'] = $get_replica_sets;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update updateReplicaSet in mock data.
*
* @param array $replica_set
* The replica set mock data.
*/
protected function updateReplicaSetMockData(array $replica_set) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$update_replica_set = [
'metadata' => [
'name' => $replica_set['name'],
'namespace' => $replica_set['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
];
$mock_data['updateReplicaSet'] = $update_replica_set;
$get_replica_sets = [];
$get_replica_sets[] = $update_replica_set;
$get_replica_sets[0]['spec'] = [
'replicas' => 15,
];
$get_replica_sets[0]['status'] = [
'availableReplicas' => 5,
'observedGeneration' => 3,
'readyReplicas' => 2,
'fullyLabeledReplicas' => 2,
];
$mock_data['getReplicaSets'] = $get_replica_sets;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update deleteReplicaSet in mock data.
*
* @param array $replica_set
* The replica set mock data.
*/
protected function deleteReplicaSetMockData(array $replica_set) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$delete_replica_set = [
'metadata' => [
'name' => $replica_set['name'],
],
];
$mock_data['deleteReplicaSet'] = $delete_replica_set;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update createService in mock data.
*
* @param array $service
* The pod mock data.
*/
protected function addServiceMockData(array $service) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$create_service = [
'metadata' => [
'name' => $service['name'],
'namespace' => $service['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
'spec' => [
'ports' => [],
'selector' => [],
'clusterIP' => '10.10.0.1',
'type' => 'ClusterIP',
'sessionAffinity' => 'None',
],
];
$mock_data['createService'] = $create_service;
$get_namespaces[] = [
'metadata' => [
'name' => $service['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
];
$mock_data['getNamespaces'] = $get_namespaces;
$get_services = [];
$get_services[] = $create_service;
$mock_data['getServices'] = $get_services;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update updateService in mock data.
*
* @param array $service
* The service mock data.
*/
protected function updateServiceMockData(array $service) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$update_service = [
'metadata' => [
'name' => $service['name'],
'namespace' => $service['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
'spec' => [
'ports' => [],
'selector' => [],
'clusterIP' => '10.10.0.1',
'type' => 'ClusterIP',
'sessionAffinity' => 'None',
],
];
$mock_data['updateService'] = $update_service;
$get_services = [];
$get_services[] = $update_service;
$mock_data['getServices'] = $get_services;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update deleteService in mock data.
*
* @param array $service
* The service mock data.
*/
protected function deleteServiceMockData(array $service) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$delete_service = [
'metadata' => [
'name' => $service['name'],
],
];
$mock_data['deleteService'] = $delete_service;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update createCronJob in mock data.
*
* @param array $cron_job
* The pod mock data.
*/
protected function addCronJobMockData(array $cron_job) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$create_cron_job = [
'metadata' => [
'name' => $cron_job['name'],
'namespace' => $cron_job['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
'spec' => [
'schedule' => '* * */1 * *',
'suspend' => FALSE,
'concurrencyPolicy' => 'Allow',
'startingDeadlineSeconds' => 10,
],
'status' => [
'lastScheduleTime' => date('Y/m/d H:i:s'),
'active' => [],
],
];
$mock_data['createCronJob'] = $create_cron_job;
$get_namespaces[] = [
'metadata' => [
'name' => $cron_job['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
];
$mock_data['getNamespaces'] = $get_namespaces;
$get_cron_jobs = [];
$get_cron_jobs[] = $create_cron_job;
$mock_data['getCronJobs'] = $get_cron_jobs;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update updateCronJob in mock data.
*
* @param array $cron_job
* The cron job mock data.
*/
protected function updateCronJobMockData(array $cron_job) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$update_cron_job = [
'metadata' => [
'name' => $cron_job['name'],
'namespace' => $cron_job['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
'spec' => [
'schedule' => '* * */1 * *',
'suspend' => FALSE,
'concurrencyPolicy' => 'Allow',
'startingDeadlineSeconds' => 10,
],
'status' => [
'lastScheduleTime' => date('Y/m/d H:i:s'),
'active' => [],
],
];
$mock_data['updateCronJob'] = $update_cron_job;
$get_cron_jobs = [];
$get_cron_jobs[] = $update_cron_job;
$mock_data['getCronJobs'] = $get_cron_jobs;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update deleteCronJob in mock data.
*
* @param array $cron_job
* The cron job mock data.
*/
protected function deleteCronJobMockData(array $cron_job) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$delete_cron_job = [
'metadata' => [
'name' => $cron_job['name'],
],
];
$mock_data['deleteCronJob'] = $delete_cron_job;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update createJob in mock data.
*
* @param array $job
* The pod mock data.
*/
protected function addJobMockData(array $job) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$create_job = [
'metadata' => [
'name' => $job['name'],
'namespace' => $job['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
'spec' => [
'completions' => 1,
'parallelism' => 1,
'template' => [
'spec' => [
'containers' => [
[
'image' => 'perl',
],
],
],
],
],
'status' => [
'active' => 0,
'succeeded' => 1,
'failed' => 0,
],
];
$mock_data['createJob'] = $create_job;
$get_namespaces[] = [
'metadata' => [
'name' => $job['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
];
$mock_data['getNamespaces'] = $get_namespaces;
$get_jobs = [];
$get_jobs[] = $create_job;
$mock_data['getJobs'] = $get_jobs;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update updateJob in mock data.
*
* @param array $job
* The job mock data.
*/
protected function updateJobMockData(array $job) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$update_job = [
'metadata' => [
'name' => $job['name'],
'namespace' => $job['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
'spec' => [
'completions' => 1,
'parallelism' => 1,
'template' => [
'spec' => [
'containers' => [
[
'image' => 'perl',
],
],
],
],
],
'status' => [
'active' => 0,
'succeeded' => 1,
'failed' => 0,
],
];
$mock_data['updateJob'] = $update_job;
$get_jobs = [];
$get_jobs[] = $update_job;
$mock_data['getJobs'] = $get_jobs;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update deleteJob in mock data.
*
* @param array $job
* The job mock data.
*/
protected function deleteJobMockData(array $job) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$delete_job = [
'metadata' => [
'name' => $job['name'],
],
];
$mock_data['deleteJob'] = $delete_job;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update createResourceQuota in mock data.
*
* @param array $resource_quota
* The pod mock data.
*/
protected function addResourceQuotaMockData(array $resource_quota) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$create_resource_quota = [
'metadata' => [
'name' => $resource_quota['name'],
'namespace' => $resource_quota['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
'status' => [
'hard' => [
'cpu' => '10',
'memory' => '20Gi',
'pods' => '10',
],
'used' => [
'cpu' => '100m',
'memory' => '1Gi',
'pods' => '1',
],
],
];
$mock_data['createResourceQuota'] = $create_resource_quota;
$get_namespaces[] = [
'metadata' => [
'name' => $resource_quota['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
];
$mock_data['getNamespaces'] = $get_namespaces;
$get_resource_quotas = [];
$get_resource_quotas[] = $create_resource_quota;
$mock_data['getResourceQuotas'] = $get_resource_quotas;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update updateResourceQuota in mock data.
*
* @param array $resource_quota
* The resource quota mock data.
*/
protected function updateResourceQuotaMockData(array $resource_quota) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$update_resource_quota = [
'metadata' => [
'name' => $resource_quota['name'],
'namespace' => $resource_quota['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
'spec' => [
'completions' => 1,
'parallelism' => 1,
'template' => [
'spec' => [
'containers' => [
[
'image' => 'perl',
],
],
],
],
],
'status' => [
'active' => 0,
'succeeded' => 1,
'failed' => 0,
],
];
$mock_data['updateResourceQuota'] = $update_resource_quota;
$get_resource_quotas = [];
$get_resource_quotas[] = $update_resource_quota;
$mock_data['getResourceQuotas'] = $get_resource_quotas;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update deleteResourceQuota in mock data.
*
* @param array $resource_quota
* The resource quota mock data.
*/
protected function deleteResourceQuotaMockData(array $resource_quota) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$delete_resource_quota = [
'metadata' => [
'name' => $resource_quota['name'],
],
];
$mock_data['deleteResourceQuota'] = $delete_resource_quota;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update createLimitRange in mock data.
*
* @param array $limit_range
* The limit range mock data.
*/
protected function addLimitRangeMockData(array $limit_range) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$create_limit_range = [
'metadata' => [
'name' => $limit_range['name'],
'namespace' => $limit_range['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
'spec' => [
'limits' => [
[
'type' => 'Pod',
'maxLimitRequestRatio' => [
'memory' => '3',
],
],
],
],
];
$mock_data['createLimitRange'] = $create_limit_range;
$get_namespaces[] = [
'metadata' => [
'name' => $limit_range['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
];
$mock_data['getNamespaces'] = $get_namespaces;
$get_limit_ranges = [];
$get_limit_ranges[] = $create_limit_range;
$mock_data['getLimitRanges'] = $get_limit_ranges;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update updateLimitRange in mock data.
*
* @param array $limit_range
* The limit range mock data.
*/
protected function updateLimitRangeMockData(array $limit_range) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$update_limit_range = [
'metadata' => [
'name' => $limit_range['name'],
'namespace' => $limit_range['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
'spec' => [
'limits' => [
[
'type' => 'Pod',
'maxLimitRequestRatio' => [
'memory' => '3',
],
],
],
],
];
$mock_data['updateLimitRange'] = $update_limit_range;
$get_limit_ranges = [];
$get_limit_ranges[] = $update_limit_range;
$mock_data['getLimitRanges'] = $get_limit_ranges;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update deleteLimitRange in mock data.
*
* @param array $limit_range
* The limit range mock data.
*/
protected function deleteLimitRangeMockData(array $limit_range) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$delete_limit_range = [
'metadata' => [
'name' => $limit_range['name'],
],
];
$mock_data['deleteLimitRange'] = $delete_limit_range;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update createSecret in mock data.
*
* @param array $secret
* The secret mock data.
*/
protected function addSecretMockData(array $secret) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$create_secret = [
'metadata' => [
'name' => $secret['name'],
'namespace' => $secret['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
'data' => [
'username' => 'YWRtaW4=',
'password' => 'MWYyZDFlMmU2N2Rm',
],
'type' => 'Opaque',
];
$mock_data['createSecret'] = $create_secret;
$get_namespaces[] = [
'metadata' => [
'name' => $secret['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
];
$mock_data['getNamespaces'] = $get_namespaces;
$get_secrets = [];
$get_secrets[] = $create_secret;
$mock_data['getSecrets'] = $get_secrets;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update updateSecret in mock data.
*
* @param array $secret
* The secret mock data.
*/
protected function updateSecretMockData(array $secret) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$update_secret = [
'metadata' => [
'name' => $secret['name'],
'namespace' => $secret['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
'data' => [
'username' => 'YWRtaW4=',
'password' => 'MWYyZDFlMmU2N2Rm',
],
'type' => 'Opaque',
];
$mock_data['updateSecret'] = $update_secret;
$get_secrets = [];
$get_secrets[] = $update_secret;
$mock_data['getSecrets'] = $get_secrets;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update deleteSecret in mock data.
*
* @param array $secret
* The secret mock data.
*/
protected function deleteSecretMockData(array $secret) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$delete_secret = [
'metadata' => [
'name' => $secret['name'],
],
];
$mock_data['deleteSecret'] = $delete_secret;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update createConfigMap in mock data.
*
* @param array $config_map
* The config map mock data.
*/
protected function addConfigMapMockData(array $config_map) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$create_config_map = [
'metadata' => [
'name' => $config_map['name'],
'namespace' => $config_map['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
'data' => [
'property1' => 'hello',
'property2' => 'world',
],
];
$mock_data['createConfigMap'] = $create_config_map;
$get_namespaces[] = [
'metadata' => [
'name' => $config_map['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
];
$mock_data['getNamespaces'] = $get_namespaces;
$get_config_maps = [];
$get_config_maps[] = $create_config_map;
$mock_data['getConfigMaps'] = $get_config_maps;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update updateConfigMap in mock data.
*
* @param array $config_map
* The config map mock data.
*/
protected function updateConfigMapMockData(array $config_map) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$update_config_map = [
'metadata' => [
'name' => $config_map['name'],
'namespace' => $config_map['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
'data' => [
'property1' => 'hello',
'property2' => 'world',
],
'type' => 'Opaque',
];
$mock_data['updateConfigMap'] = $update_config_map;
$get_config_maps = [];
$get_config_maps[] = $update_config_map;
$mock_data['getConfigMaps'] = $get_config_maps;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update deleteConfigMap in mock data.
*
* @param array $config_map
* The config map mock data.
*/
protected function deleteConfigMapMockData(array $config_map) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$delete_config_map = [
'metadata' => [
'name' => $config_map['name'],
],
];
$mock_data['deleteConfigMap'] = $delete_config_map;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update createNetworkPolicy in mock data.
*
* @param array $network_policy
* The network policy mock data.
*/
protected function addNetworkPolicyMockData(array $network_policy) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$create_network_policy = [
'metadata' => [
'name' => $network_policy['name'],
'namespace' => $network_policy['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
'spec' => [
'egress' => NULL,
'ingress' => NULL,
'pod_selector' => NULL,
'policy_types' => NULL,
],
];
$mock_data['createNetworkPolicy'] = $create_network_policy;
$get_namespaces[] = [
'metadata' => [
'name' => $network_policy['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
];
$mock_data['getNamespaces'] = $get_namespaces;
$get_network_policies = [];
$get_network_policies[] = $create_network_policy;
$mock_data['getNetworkPolicies'] = $get_network_policies;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update updateNetworkPolicy in mock data.
*
* @param array $network_policy
* The network policy mock data.
*/
protected function updateNetworkPolicyMockData(array $network_policy) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$update_network_policy = [
'metadata' => [
'name' => $network_policy['name'],
'namespace' => $network_policy['post_data']['namespace'],
'creationTimestamp' => date('Y/m/d H:i:s'),
],
'spec' => [
'egress' => NULL,
'ingress' => NULL,
'pod_selector' => NULL,
'policy_types' => NULL,
],
];
$mock_data['updateNetworkPolicy'] = $update_network_policy;
$get_network_policies = [];
$get_network_policies[] = $update_network_policy;
$mock_data['getNetworkPolicies'] = $get_network_policies;
$this->updateMockDataToConfig($mock_data);
}
/**
* Update deleteNetworkPolicy in mock data.
*
* @param array $network_policy
* The network policy mock data.
*/
protected function deleteNetworkPolicyMockData(array $network_policy) {
$mock_data = $this->getMockDataFromConfig();
$random = new Random();
$delete_network_policy = [
'metadata' => [
'name' => $network_policy['name'],
],
];
$mock_data['deleteNetworkPolicy'] = $delete_network_policy;
$this->updateMockDataToConfig($mock_data);
}
}
