aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrad Corso <bcorso@google.com>2024-01-09 15:01:19 -0800
committerDagger Team <dagger-dev+copybara@google.com>2024-01-09 15:05:09 -0800
commit662d823597f8695c0e7af94a9eb3cdd5c1b7298e (patch)
tree38c65cc6f54793af9f724a8592f4257595911225
parent2705c2842b4ceb133fa00db6dc60fe114cdec0fa (diff)
downloaddagger2-662d823597f8695c0e7af94a9eb3cdd5c1b7298e.tar.gz
Update Dagger XProcessing jars.
The fix for https://github.com/google/dagger/issues/4199 is included in the new XProcessing jars (aosp/2891694), so this CL also adds a regression test for that issue. Fixes #4199 RELNOTES=Fixed #4199 PiperOrigin-RevId: 597054515
-rw-r--r--java/dagger/internal/codegen/xprocessing/xprocessing.jarbin2420508 -> 2420617 bytes
-rw-r--r--javatests/dagger/functional/kotlinsrc/membersinject/MembersInjectionWithTypeAliasSuperclassTest.kt55
2 files changed, 55 insertions, 0 deletions
diff --git a/java/dagger/internal/codegen/xprocessing/xprocessing.jar b/java/dagger/internal/codegen/xprocessing/xprocessing.jar
index 3189a28e3..24590f84d 100644
--- a/java/dagger/internal/codegen/xprocessing/xprocessing.jar
+++ b/java/dagger/internal/codegen/xprocessing/xprocessing.jar
Binary files differ
diff --git a/javatests/dagger/functional/kotlinsrc/membersinject/MembersInjectionWithTypeAliasSuperclassTest.kt b/javatests/dagger/functional/kotlinsrc/membersinject/MembersInjectionWithTypeAliasSuperclassTest.kt
new file mode 100644
index 000000000..e45f63e84
--- /dev/null
+++ b/javatests/dagger/functional/kotlinsrc/membersinject/MembersInjectionWithTypeAliasSuperclassTest.kt
@@ -0,0 +1,55 @@
+/*
+ * Copyright (C) 2024 The Dagger Authors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package dagger.functional.kotlinsrc.membersinject
+
+import com.google.common.truth.Truth.assertThat
+import dagger.Component
+import javax.inject.Inject
+import org.junit.Before
+import org.junit.Test
+import org.junit.runner.RunWith
+import org.junit.runners.JUnit4
+
+/** This is a regression test for https://github.com/google/dagger/issues/4199 */
+@RunWith(JUnit4::class)
+class MembersInjectionWithTypeAliasSuperclassTest {
+ @Test
+ fun testMembersInjection() {
+ val myClass = MyClass()
+ DaggerTestComponent.create().inject(myClass)
+ assertThat(myClass.foo).isNotNull()
+ assertThat(myClass.bar).isNotNull()
+ }
+}
+
+@Component
+interface TestComponent {
+ fun inject(myClass: MyClass)
+}
+
+class MyClass: MyBaseClassAlias() {
+ @Inject lateinit var foo: Foo
+}
+
+typealias MyBaseClassAlias = MyBaseClass
+
+abstract class MyBaseClass {
+ @Inject lateinit var bar: Bar
+}
+
+class Foo @Inject constructor()
+class Bar @Inject constructor()