MCPcopy Index your code
hub / github.com/php/frankenphp / TestValidateClass

Function TestValidateClass

internal/extgen/validator_test.go:411–482  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

409}
410
411func TestValidateClass(t *testing.T) {
412 tests := []struct {
413 name string
414 class phpClass
415 expectError bool
416 }{
417 {
418 name: "valid class",
419 class: phpClass{
420 Name: "ValidClass",
421 GoStruct: "ValidStruct",
422 Properties: []phpClassProperty{
423 {Name: "name", PhpType: phpString},
424 {Name: "age", PhpType: phpInt},
425 },
426 },
427 expectError: false,
428 },
429 {
430 name: "valid class with nullable properties",
431 class: phpClass{
432 Name: "NullableClass",
433 GoStruct: "NullableStruct",
434 Properties: []phpClassProperty{
435 {Name: "required", PhpType: phpString, IsNullable: false},
436 {Name: "optional", PhpType: phpString, IsNullable: true},
437 },
438 },
439 expectError: false,
440 },
441 {
442 name: "empty class name",
443 class: phpClass{
444 Name: "",
445 GoStruct: "ValidStruct",
446 },
447 expectError: true,
448 },
449 {
450 name: "invalid class name",
451 class: phpClass{
452 Name: "123InvalidClass",
453 GoStruct: "ValidStruct",
454 },
455 expectError: true,
456 },
457 {
458 name: "invalid property",
459 class: phpClass{
460 Name: "ValidClass",
461 GoStruct: "ValidStruct",
462 Properties: []phpClassProperty{
463 {Name: "123invalid", PhpType: phpString},
464 },
465 },
466 expectError: true,
467 },
468 }

Callers

nothing calls this directly

Calls 2

validateClassMethod · 0.95
ErrorMethod · 0.45

Tested by

no test coverage detected