<NME> TestSerializerProvider.java
<BEF> package com.fasterxml.jackson.databind.ser;

import com.fasterxml.jackson.databind.*;
import com.fasterxml.jackson.databind.ser.BeanSerializerFactory;
import com.fasterxml.jackson.databind.ser.StdSerializerProvider;

public class TestSerializerProvider
    extends com.fasterxml.jackson.databind.BaseMapTest
public class TestSerializerProvider
    extends com.fasterxml.jackson.databind.BaseMapTest
{
    static class MyBean {
        public int getX() { return 3; }
    }

        ObjectMapper mapper = new ObjectMapper();
        SerializationConfig config = mapper.getSerializationConfig();
        SerializerFactory f = new BeanSerializerFactory(null);
        StdSerializerProvider prov = new StdSerializerProvider.Impl().createInstance(config, f);

        // Should have working default key and null key serializers
        assertNotNull(prov.findKeySerializer(null, null));
        SerializerFactory f = new BeanSerializerFactory(null);
        DefaultSerializerProvider prov = new DefaultSerializerProvider.Impl().createInstance(config, f);
        // as well as 'unknown type' one (throws exception)
        assertNotNull(prov.getUnknownTypeSerializer(getClass()));
        
        assertTrue(prov.hasSerializerFor(config, String.class, f));
        // call twice to verify it'll be cached (second code path)
        assertTrue(prov.hasSerializerFor(config, String.class, f));

        assertTrue(prov.hasSerializerFor(config, MyBean.class, f));
        assertTrue(prov.hasSerializerFor(config, MyBean.class, f));
    }
}

        assertTrue(prov.createInstance(config, f).hasSerializerFor(MyBean.class, null));
        assertTrue(prov.createInstance(config, f).hasSerializerFor(MyBean.class, null));

        // And then some negative testing
        AtomicReference<Throwable> cause = new AtomicReference<Throwable>();
        assertFalse(prov.createInstance(config, f).hasSerializerFor(NoPropsBean.class, cause));
        Throwable t = cause.get();
        // no actual exception: just fails since there are no properties
        assertNull(t);
    }
}

<MSG> Further simplification; eliminated StdSerializerProvider

<DFF> @@ -2,7 +2,6 @@ package com.fasterxml.jackson.databind.ser;
 
 import com.fasterxml.jackson.databind.*;
 import com.fasterxml.jackson.databind.ser.BeanSerializerFactory;
-import com.fasterxml.jackson.databind.ser.StdSerializerProvider;
 
 public class TestSerializerProvider
     extends com.fasterxml.jackson.databind.BaseMapTest
@@ -16,7 +15,7 @@ public class TestSerializerProvider
         ObjectMapper mapper = new ObjectMapper();
         SerializationConfig config = mapper.getSerializationConfig();
         SerializerFactory f = new BeanSerializerFactory(null);
-        StdSerializerProvider prov = new StdSerializerProvider.Impl().createInstance(config, f);
+        SerializerProvider prov = new SerializerProvider.Impl().createInstance(config, f);
 
         // Should have working default key and null key serializers
         assertNotNull(prov.findKeySerializer(null, null));
@@ -25,11 +24,11 @@ public class TestSerializerProvider
         // as well as 'unknown type' one (throws exception)
         assertNotNull(prov.getUnknownTypeSerializer(getClass()));
         
-        assertTrue(prov.hasSerializerFor(config, String.class, f));
+        assertTrue(prov.createInstance(config, f).hasSerializerFor(String.class));
         // call twice to verify it'll be cached (second code path)
-        assertTrue(prov.hasSerializerFor(config, String.class, f));
+        assertTrue(prov.createInstance(config, f).hasSerializerFor(String.class));
 
-        assertTrue(prov.hasSerializerFor(config, MyBean.class, f));
-        assertTrue(prov.hasSerializerFor(config, MyBean.class, f));
+        assertTrue(prov.createInstance(config, f).hasSerializerFor(MyBean.class));
+        assertTrue(prov.createInstance(config, f).hasSerializerFor(MyBean.class));
     }
 }

{'addition_count': 5, 'commit_subject': 'Further simplification; eliminated StdSerializerProvider', 'deletion_count': 6, 'file_extension': '.java', 'lang': 'java', 'license': 'apache-2.0', 'repo_name': 'FasterXML/jackson-databind'}