@@ -106,4 +106,33 @@ class GeneratorServiceTest {
106106 assertEquals(" masked@example.com" , result[" email" ])
107107 assertEquals(1 , result[" id" ])
108108 }
109+
110+ @Test
111+ fun `generateRows produces the requested number of rows` () {
112+ val generators = listOf (
113+ ColumnGenerator (tableConfigurationId = 1L , columnName = " name" , generatorType = GeneratorType .NAME ),
114+ ColumnGenerator (tableConfigurationId = 1L , columnName = " email" , generatorType = GeneratorType .EMAIL )
115+ )
116+ val rows = service.generateRows(generators, 3 )
117+ assertEquals(3 , rows.size)
118+ rows.forEach { row ->
119+ assertTrue((row[" name" ] as String ).isNotBlank())
120+ assertTrue((row[" email" ] as String ).contains(" @" ))
121+ }
122+ }
123+
124+ @Test
125+ fun `generateRows returns empty list when count is zero` () {
126+ val generators = listOf (
127+ ColumnGenerator (tableConfigurationId = 1L , columnName = " name" , generatorType = GeneratorType .NAME )
128+ )
129+ val rows = service.generateRows(generators, 0 )
130+ assertTrue(rows.isEmpty())
131+ }
132+
133+ @Test
134+ fun `CUSTOM falls back to originalValue when no params provided` () {
135+ val result = service.generateValue(GeneratorType .CUSTOM , " fallback" , null )
136+ assertEquals(" fallback" , result)
137+ }
109138}
0 commit comments