diff --git a/shared/src/main/java/gov/hhs/cdc/trustedintermediary/context/ApplicationContext.java b/shared/src/main/java/gov/hhs/cdc/trustedintermediary/context/ApplicationContext.java
index 809f6108a..740bc66e3 100644
--- a/shared/src/main/java/gov/hhs/cdc/trustedintermediary/context/ApplicationContext.java
+++ b/shared/src/main/java/gov/hhs/cdc/trustedintermediary/context/ApplicationContext.java
@@ -108,9 +108,6 @@ private static void injectIntoField(Field field) {
 
         Object declaringClassImplementation =
                 getDeclaringClassImplementation(declaringClassesToTry);
-        if (declaringClassImplementation == null) {
-            return;
-        }
 
         field.trySetAccessible();
 
diff --git a/shared/src/test/groovy/gov/hhs/cdc/trustedintermediary/context/ApplicationContextTest.groovy b/shared/src/test/groovy/gov/hhs/cdc/trustedintermediary/context/ApplicationContextTest.groovy
index 8d8c767f6..4bb8f349c 100644
--- a/shared/src/test/groovy/gov/hhs/cdc/trustedintermediary/context/ApplicationContextTest.groovy
+++ b/shared/src/test/groovy/gov/hhs/cdc/trustedintermediary/context/ApplicationContextTest.groovy
@@ -1,5 +1,6 @@
 package gov.hhs.cdc.trustedintermediary.context
 
+import gov.hhs.cdc.trustedintermediary.wrappers.Logger
 import spock.lang.Specification
 
 import javax.inject.Inject
@@ -12,6 +13,12 @@ class ApplicationContextTest extends Specification {
         void test()
     }
 
+    class NonSingletonClazz {
+        @Inject
+        Logger logger
+        void test() {}
+    }
+
     static class DogCow implements TestingInterface {
 
         @Override
@@ -55,6 +62,36 @@ class ApplicationContextTest extends Specification {
         implementors == ApplicationContext.getImplementors(TestingInterface)
     }
 
+    def "injectIntoNonSingleton unhappy path"() {
+        given:
+        def nonSingletonClass = new NonSingletonClazz()
+        def object = new Object()
+        ApplicationContext.register(Logger, object)
+        when:
+        ApplicationContext.injectIntoNonSingleton(nonSingletonClass)
+        then:
+        thrown(IllegalArgumentException)
+    }
+
+    def "injectIntoNonSingleton unhappy path when fieldImplementation runs into an error"() {
+        given:
+        def nonSingletonClass = new NonSingletonClazz()
+        when:
+        ApplicationContext.injectIntoNonSingleton(nonSingletonClass)
+        then:
+        thrown(IllegalArgumentException)
+    }
+
+    def "injectIntoNonSingleton unhappy path when fieldImplementation is null"() {
+        given:
+        def nonSingletonClass = new NonSingletonClazz()
+        when:
+        ApplicationContext.skipMissingImplementations = true
+        ApplicationContext.injectIntoNonSingleton(nonSingletonClass)
+        then:
+        noExceptionThrown()
+    }
+
     def "implementation injection test"() {
         given:
         def injectedValue = "DogCow"
@@ -167,6 +204,25 @@ class ApplicationContextTest extends Specification {
         Files.deleteIfExists(directoryPath)
     }
 
+    def "registering an unsupported injection class"() {
+        given:
+        def injectedValue = "DogCow"
+        def injectionInstantiation = new InjectionDeclaringClass()
+
+        TestApplicationContext.register(List.class, injectionInstantiation)
+        // notice above that I'm registering the injectionInstantiation object as a List class.
+        // injectionInstantiation is of class InjectionDeclaringClass,
+        // and InjectionDeclaringClass doesn't implement List (it only implements AFieldInterface).
+        TestApplicationContext.register(String.class, injectedValue)
+
+        when:
+        TestApplicationContext.injectRegisteredImplementations()
+        injectionInstantiation.getAField()
+
+        then:
+        thrown(NullPointerException)
+    }
+
     class InjectionDeclaringClass {
         @Inject
         private String aField
diff --git a/shared/src/testFixtures/groovy/gov/hhs/cdc/trustedintermediary/context/TestApplicationContext.groovy b/shared/src/testFixtures/groovy/gov/hhs/cdc/trustedintermediary/context/TestApplicationContext.groovy
index ac036be5a..735e78fc7 100644
--- a/shared/src/testFixtures/groovy/gov/hhs/cdc/trustedintermediary/context/TestApplicationContext.groovy
+++ b/shared/src/testFixtures/groovy/gov/hhs/cdc/trustedintermediary/context/TestApplicationContext.groovy
@@ -19,9 +19,9 @@ class TestApplicationContext extends ApplicationContext {
         TEST_ENV_VARS.clear()
     }
 
-    def static injectRegisteredImplementations(def skip = true) {
-        skipMissingImplementations = skip
-        doInjectRegisteredImplementations()
+    def static injectRegisteredImplementations() {
+        skipMissingImplementations = true
+        ApplicationContext.injectRegisteredImplementations()
     }
 
     def static addEnvironmentVariable(String key, String value) {