diff options
author | Brad Corso <bcorso@google.com> | 2024-01-09 15:01:19 -0800 |
---|---|---|
committer | Dagger Team <dagger-dev+copybara@google.com> | 2024-01-09 15:05:09 -0800 |
commit | 662d823597f8695c0e7af94a9eb3cdd5c1b7298e (patch) | |
tree | 38c65cc6f54793af9f724a8592f4257595911225 | |
parent | 2705c2842b4ceb133fa00db6dc60fe114cdec0fa (diff) | |
download | dagger2-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.jar | bin | 2420508 -> 2420617 bytes | |||
-rw-r--r-- | javatests/dagger/functional/kotlinsrc/membersinject/MembersInjectionWithTypeAliasSuperclassTest.kt | 55 |
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 Binary files differindex 3189a28e3..24590f84d 100644 --- a/java/dagger/internal/codegen/xprocessing/xprocessing.jar +++ b/java/dagger/internal/codegen/xprocessing/xprocessing.jar 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() |