DefaultConfigurationSnapshot implements ConfigurationSnapshot, Serializable { @Override public Set<String> getKeys() { return keys; } DefaultConfigurationSnapshot(Configuration config, Iterable<String> keys);  DefaultConfigurationSnapshot(Configuration config); @Override ConfigurationSnapshot getSnapshot(Iterable<String> keys); @Override Set<String> getKeys(); @Override String get(String key); @Override String getOrDefault(String key, String defaultValue); @Override T getOrDefault(String key, Class<T> type, T defaultValue); @SuppressWarnings("unchecked") @Override T get(String key, Class<T> type); @Override T get(String key, TypeLiteral<T> type); @Override T getOrDefault(String key, TypeLiteral<T> type, T defaultValue); @Override Map<String, String> getProperties(); @Override ConfigurationContext getContext(); @Override long getTimestamp(); @Override boolean equals(Object o); @Override int hashCode(); @Override String toString(); UUID getId();  }
@Test public void testGetKeys() { Configuration config = Configuration.current(); DefaultConfigurationSnapshot snapshot = new DefaultConfigurationSnapshot(config, Arrays.asList("confkey1", "confkey2", "confkey3")); assertThat(snapshot.getKeys()).contains("confkey1"); assertThat(snapshot.getKeys()).contains("confkey2"); assertThat(snapshot.getKeys()).contains("confkey3"); assertThat(snapshot.getKeys()).doesNotContain("confkey4"); assertThat(snapshot.getKeys()).doesNotContain("foo"); }