@@ -186,6 +186,50 @@ public void autoBuilder_getters() {
186
186
.doTest ();
187
187
}
188
188
189
+ @ Test
190
+ public void autoBuilder_buildIsntCrv () {
191
+ helper
192
+ .addSourceLines (
193
+ "Named.java" ,
194
+ "import com.google.auto.value.AutoBuilder;" ,
195
+ "import java.time.LocalTime;" ,
196
+ "@AutoBuilder(callMethod = \" of\" , ofClass = LocalTime.class)" ,
197
+ "interface LocalTimeBuilder {" ,
198
+ " LocalTimeBuilder setHour(int hour);" ,
199
+ " LocalTimeBuilder setMinute(int minute);" ,
200
+ " LocalTimeBuilder setSecond(int second);" ,
201
+ " LocalTimeBuilder setNanoOfSecond(int nanoOfSecond);" ,
202
+ " int getHour();" ,
203
+ " int getMinute();" ,
204
+ " int getSecond();" ,
205
+ " int getNanoOfSecond();" ,
206
+ " LocalTime build();" , // calls: LocalTime.of(...)
207
+ "}" )
208
+ .addSourceLines (
209
+ "B.java" ,
210
+ "class B {" ,
211
+ " void test(LocalTimeBuilder builder) {" ,
212
+ // the setters are treated as CIRV:
213
+ " builder.setHour(12);" ,
214
+ " builder.setMinute(12);" ,
215
+ " builder.setSecond(12);" ,
216
+ // the getters are treated as CRV:
217
+ " // BUG: Diagnostic contains: IgnoredPureGetter" ,
218
+ " builder.getHour();" ,
219
+ " // BUG: Diagnostic contains: IgnoredPureGetter" ,
220
+ " builder.getMinute();" ,
221
+ " // BUG: Diagnostic contains: IgnoredPureGetter" ,
222
+ " builder.getSecond();" ,
223
+ " // BUG: Diagnostic contains: IgnoredPureGetter" ,
224
+ " builder.getNanoOfSecond();" ,
225
+ // TODO(b/229107551): this shouldn't be treated as CRV
226
+ " // BUG: Diagnostic contains: IgnoredPureGetter" ,
227
+ " builder.build();" ,
228
+ " }" ,
229
+ "}" )
230
+ .doTest ();
231
+ }
232
+
189
233
@ Test
190
234
public void refactoringHelper () {
191
235
refactoringHelper
0 commit comments