1+ <?php
2+
3+ use Gravity \DataVerify ;
4+
5+ class ErrorCreationBench
6+ {
7+ private object $ validData ;
8+ private object $ invalidData ;
9+
10+ public function setUp (): void
11+ {
12+ $ this ->validData = new stdClass ();
13+ $ this ->validData ->email = "test@example.com " ;
14+ $ this ->validData ->age = 25 ;
15+
16+ $ this ->invalidData = new stdClass ();
17+ $ this ->invalidData ->email = "invalid " ;
18+ $ this ->invalidData ->age = -5 ;
19+ }
20+
21+ /**
22+ * @BeforeMethods({"setUp"})
23+ * @Revs(1000)
24+ * @Iterations(10)
25+ */
26+ public function benchNoErrors (): void
27+ {
28+ $ verifier = new DataVerify ($ this ->validData );
29+ $ verifier
30+ ->field ('email ' )->required ->email
31+ ->field ('age ' )->required ->int ->between (18 , 100 );
32+
33+ $ verifier ->verify ();
34+ }
35+
36+ /**
37+ * @BeforeMethods({"setUp"})
38+ * @Revs(1000)
39+ * @Iterations(10)
40+ */
41+ public function benchWithErrors (): void
42+ {
43+ $ verifier = new DataVerify ($ this ->invalidData );
44+ $ verifier
45+ ->field ('email ' )->required ->email
46+ ->field ('age ' )->required ->int ->between (18 , 100 );
47+
48+ $ verifier ->verify ();
49+ }
50+
51+ /**
52+ * @BeforeMethods({"setUp"})
53+ * @Revs(1000)
54+ * @Iterations(10)
55+ */
56+ public function benchWithErrorsAndGetErrors (): void
57+ {
58+ $ verifier = new DataVerify ($ this ->invalidData );
59+ $ verifier
60+ ->field ('email ' )->required ->email
61+ ->field ('age ' )->required ->int ->between (18 , 100 );
62+
63+ $ verifier ->verify ();
64+ $ verifier ->getErrors ();
65+ }
66+
67+ /**
68+ * @BeforeMethods({"setUp"})
69+ * @Revs(1000)
70+ * @Iterations(10)
71+ */
72+ public function benchCustomErrorMessage (): void
73+ {
74+ $ data = new stdClass ();
75+ $ data ->email = "invalid " ;
76+
77+ $ verifier = new DataVerify ($ data );
78+ $ verifier
79+ ->field ('email ' )
80+ ->required
81+ ->email
82+ ->errorMessage ('Custom error ' );
83+
84+ $ verifier ->verify ();
85+ }
86+
87+ /**
88+ * @BeforeMethods({"setUp"})
89+ * @Revs(1000)
90+ * @Iterations(10)
91+ */
92+ public function benchNoTranslation (): void
93+ {
94+ $ verifier = new DataVerify ($ this ->invalidData );
95+ $ verifier
96+ ->field ('email ' )->required ->email
97+ ->field ('age ' )->required ->int ->between (18 , 100 );
98+
99+ $ verifier ->verify ();
100+ }
101+
102+ /**
103+ * @BeforeMethods({"setUp"})
104+ * @Revs(1000)
105+ * @Iterations(10)
106+ */
107+ public function benchWithTranslation (): void
108+ {
109+ $ verifier = new DataVerify ($ this ->invalidData );
110+ $ verifier ->setLocale ('fr ' );
111+ $ verifier
112+ ->field ('email ' )->required ->email
113+ ->field ('age ' )->required ->int ->between (18 , 100 );
114+
115+ $ verifier ->verify ();
116+ }
117+
118+ }
0 commit comments