Skip to content

Commit 6232031

Browse files
committed
Generate tests for all types in kubevirt/models
Use the tests for V1AcceessCredential and V1ACPI as examples. Generated with claude-4.5-opus-high. Signed-off-by: Radoslaw Szwajkowski <[email protected]>
1 parent 00efa6d commit 6232031

File tree

357 files changed

+4402
-1
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

357 files changed

+4402
-1
lines changed
Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
import { K8sIoApiCoreV1Affinity } from '../models/K8sIoApiCoreV1Affinity';
2+
import { K8sIoApiCoreV1NodeSelectorRequirementOperatorEnum } from '../models/K8sIoApiCoreV1NodeSelectorRequirement';
3+
4+
export const testObject: K8sIoApiCoreV1Affinity = {
5+
nodeAffinity: {
6+
preferredDuringSchedulingIgnoredDuringExecution: [
7+
{
8+
preference: {
9+
matchExpressions: [
10+
{
11+
key: 'test-key',
12+
operator: K8sIoApiCoreV1NodeSelectorRequirementOperatorEnum.In,
13+
values: ['test-value'],
14+
},
15+
],
16+
matchFields: [
17+
{
18+
key: 'test-field-key',
19+
operator: K8sIoApiCoreV1NodeSelectorRequirementOperatorEnum.Exists,
20+
},
21+
],
22+
},
23+
weight: 100,
24+
},
25+
],
26+
requiredDuringSchedulingIgnoredDuringExecution: {
27+
nodeSelectorTerms: [
28+
{
29+
matchExpressions: [
30+
{
31+
key: 'test-required-key',
32+
operator: K8sIoApiCoreV1NodeSelectorRequirementOperatorEnum.NotIn,
33+
values: ['test-excluded-value'],
34+
},
35+
],
36+
},
37+
],
38+
},
39+
},
40+
podAffinity: {
41+
preferredDuringSchedulingIgnoredDuringExecution: [
42+
{
43+
podAffinityTerm: {
44+
topologyKey: 'kubernetes.io/hostname',
45+
labelSelector: {
46+
matchLabels: { app: 'test-app' },
47+
matchExpressions: [
48+
{
49+
key: 'environment',
50+
operator: 'In',
51+
values: ['production'],
52+
},
53+
],
54+
},
55+
matchLabelKeys: ['pod-template-hash'],
56+
mismatchLabelKeys: ['version'],
57+
namespaceSelector: {
58+
matchLabels: { team: 'test-team' },
59+
},
60+
namespaces: ['test-namespace'],
61+
},
62+
weight: 50,
63+
},
64+
],
65+
requiredDuringSchedulingIgnoredDuringExecution: [
66+
{
67+
topologyKey: 'topology.kubernetes.io/zone',
68+
labelSelector: {
69+
matchLabels: { service: 'test-service' },
70+
},
71+
},
72+
],
73+
},
74+
podAntiAffinity: {
75+
preferredDuringSchedulingIgnoredDuringExecution: [
76+
{
77+
podAffinityTerm: {
78+
topologyKey: 'kubernetes.io/hostname',
79+
labelSelector: {
80+
matchLabels: { app: 'test-app' },
81+
},
82+
},
83+
weight: 75,
84+
},
85+
],
86+
requiredDuringSchedulingIgnoredDuringExecution: [
87+
{
88+
topologyKey: 'topology.kubernetes.io/zone',
89+
labelSelector: {
90+
matchLabels: { app: 'test-app' },
91+
},
92+
},
93+
],
94+
},
95+
};
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
import { K8sIoApiCoreV1DownwardAPIVolumeFile } from '../models/K8sIoApiCoreV1DownwardAPIVolumeFile';
2+
3+
export const testObject: K8sIoApiCoreV1DownwardAPIVolumeFile = {
4+
fieldRef: {
5+
apiVersion: 'v1',
6+
fieldPath: 'metadata.name',
7+
},
8+
mode: 420,
9+
path: 'test-path',
10+
resourceFieldRef: {
11+
containerName: 'test-container',
12+
divisor: '1Mi',
13+
resource: 'limits.memory',
14+
},
15+
};
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
import { K8sIoApiCoreV1ExecAction } from '../models/K8sIoApiCoreV1ExecAction';
2+
3+
export const testObject: K8sIoApiCoreV1ExecAction = {
4+
command: ['/bin/sh', '-c', 'echo hello'],
5+
};
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
import {
2+
K8sIoApiCoreV1HTTPGetAction,
3+
K8sIoApiCoreV1HTTPGetActionSchemeEnum,
4+
} from '../models/K8sIoApiCoreV1HTTPGetAction';
5+
6+
export const testObject: K8sIoApiCoreV1HTTPGetAction = {
7+
host: 'test-host',
8+
httpHeaders: [
9+
{
10+
name: 'Content-Type',
11+
value: 'application/json',
12+
},
13+
],
14+
path: '/healthz',
15+
scheme: K8sIoApiCoreV1HTTPGetActionSchemeEnum.Https,
16+
};
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import { K8sIoApiCoreV1HTTPHeader } from '../models/K8sIoApiCoreV1HTTPHeader';
2+
3+
export const testObject: K8sIoApiCoreV1HTTPHeader = {
4+
name: 'Content-Type',
5+
value: 'application/json',
6+
};
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
import { K8sIoApiCoreV1LocalObjectReference } from '../models/K8sIoApiCoreV1LocalObjectReference';
2+
3+
export const testObject: K8sIoApiCoreV1LocalObjectReference = {
4+
name: 'test-object-reference',
5+
};
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
import { K8sIoApiCoreV1NodeAffinity } from '../models/K8sIoApiCoreV1NodeAffinity';
2+
import { K8sIoApiCoreV1NodeSelectorRequirementOperatorEnum } from '../models/K8sIoApiCoreV1NodeSelectorRequirement';
3+
4+
export const testObject: K8sIoApiCoreV1NodeAffinity = {
5+
preferredDuringSchedulingIgnoredDuringExecution: [
6+
{
7+
preference: {
8+
matchExpressions: [
9+
{
10+
key: 'test-key',
11+
operator: K8sIoApiCoreV1NodeSelectorRequirementOperatorEnum.In,
12+
values: ['test-value'],
13+
},
14+
],
15+
matchFields: [
16+
{
17+
key: 'test-field-key',
18+
operator: K8sIoApiCoreV1NodeSelectorRequirementOperatorEnum.Exists,
19+
},
20+
],
21+
},
22+
weight: 100,
23+
},
24+
],
25+
requiredDuringSchedulingIgnoredDuringExecution: {
26+
nodeSelectorTerms: [
27+
{
28+
matchExpressions: [
29+
{
30+
key: 'test-required-key',
31+
operator: K8sIoApiCoreV1NodeSelectorRequirementOperatorEnum.NotIn,
32+
values: ['test-excluded-value'],
33+
},
34+
],
35+
},
36+
],
37+
},
38+
};
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
import { K8sIoApiCoreV1NodeSelector } from '../models/K8sIoApiCoreV1NodeSelector';
2+
import { K8sIoApiCoreV1NodeSelectorRequirementOperatorEnum } from '../models/K8sIoApiCoreV1NodeSelectorRequirement';
3+
4+
export const testObject: K8sIoApiCoreV1NodeSelector = {
5+
nodeSelectorTerms: [
6+
{
7+
matchExpressions: [
8+
{
9+
key: 'test-key',
10+
operator: K8sIoApiCoreV1NodeSelectorRequirementOperatorEnum.In,
11+
values: ['test-value'],
12+
},
13+
],
14+
},
15+
],
16+
};
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import {
2+
K8sIoApiCoreV1NodeSelectorRequirement,
3+
K8sIoApiCoreV1NodeSelectorRequirementOperatorEnum,
4+
} from '../models/K8sIoApiCoreV1NodeSelectorRequirement';
5+
6+
export const testObject: K8sIoApiCoreV1NodeSelectorRequirement = {
7+
key: 'test-key',
8+
operator: K8sIoApiCoreV1NodeSelectorRequirementOperatorEnum.In,
9+
values: ['test-value-1', 'test-value-2'],
10+
};
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
import { K8sIoApiCoreV1NodeSelectorTerm } from '../models/K8sIoApiCoreV1NodeSelectorTerm';
2+
import { K8sIoApiCoreV1NodeSelectorRequirementOperatorEnum } from '../models/K8sIoApiCoreV1NodeSelectorRequirement';
3+
4+
export const testObject: K8sIoApiCoreV1NodeSelectorTerm = {
5+
matchExpressions: [
6+
{
7+
key: 'test-key',
8+
operator: K8sIoApiCoreV1NodeSelectorRequirementOperatorEnum.In,
9+
values: ['test-value'],
10+
},
11+
],
12+
matchFields: [
13+
{
14+
key: 'test-field-key',
15+
operator: K8sIoApiCoreV1NodeSelectorRequirementOperatorEnum.Exists,
16+
},
17+
],
18+
};

0 commit comments

Comments
 (0)