gt: 			throw new UnsupportedOperationException("Not supported yet.");
context: package com.github.bordertech.wcomponents.autocomplete;
  
  import com.github.bordertech.wcomponents.Container;
  import com.github.bordertech.wcomponents.Environment;
  import com.github.bordertech.wcomponents.Headers;
  import com.github.bordertech.wcomponents.RenderContext;
  import com.github.bordertech.wcomponents.Request;
  import com.github.bordertech.wcomponents.WLabel;
  import com.github.bordertech.wcomponents.autocomplete.segment.PhoneFormat;
  import com.github.bordertech.wcomponents.autocomplete.type.Telephone;
  import com.github.bordertech.wcomponents.util.HtmlClassProperties;
  import com.github.bordertech.wcomponents.validation.Diagnostic;
  import java.io.Serializable;
  import java.util.List;
  import java.util.Set;
  import org.junit.Assert;
  import org.junit.Test;
  
  /**
   * JUnit test of the {@link Autocompleteable} Interface.
   * @author Mark Reeves
   */
  public class AutocompleteablePhone_Test {
  
  	/**
  	 * Meta test to improve confidence in other tests.
  	 */
  	@Test
  	public void testGetAucomplete() {
  		String testString = "foo";
  		MyAutocompleteable component = new MyAutocompleteable();
  		// ensure the component's autocompete is set to a specific thing outside the
  		// interface setters.
  		component.setAutocompleteDirectly(testString);
  		Assert.assertEquals(testString, component.getAutocomplete());
  	}
  
  	@Test
  	public void testSetFullPhoneAutocompleteWithType() {
  		MyAutocompleteable component = new MyAutocompleteable();
  		String expected;
  
  		for (PhoneFormat phoneType : PhoneFormat.values()) {
  			expected = AutocompleteUtil.getCombinedAutocomplete(phoneType.getValue(), Telephone.FULL.getValue());
  			component.setFullPhoneAutocomplete(phoneType);
  			Assert.assertEquals(expected, component.getAutocomplete());
  		}
  	}
  
  	@Test
  	public void testSetFullPhoneAutocompleteNullType() {
  		MyAutocompleteable component = new MyAutocompleteable();
  		component.setFullPhoneAutocomplete(null);
  		Assert.assertEquals(Telephone.FULL.getValue(), component.getAutocomplete());
  	}
  
  	@Test
  	public void testSetFullPhoneAutocomplete() {
  		MyAutocompleteable component = new MyAutocompleteable();
  		component.setFullPhoneAutocomplete();
  		Assert.assertEquals(Telephone.FULL.getValue(), component.getAutocomplete());
  	}
  
  	@Test
  	public void testSetLocalPhoneAutocompleteWithType() {
  		MyAutocompleteable component = new MyAutocompleteable();
  		String expected;
  
  		for (PhoneFormat phoneType : PhoneFormat.values()) {
  			expected = AutocompleteUtil.getCombinedAutocomplete(phoneType.getValue(), Telephone.LOCAL.getValue());
  			component.setLocalPhoneAutocomplete(phoneType);
  			Assert.assertEquals(expected, component.getAutocomplete());
  		}
  	}
  
  	@Test
  	public void testSetLocalPhoneAutocompleteNullType() {
  		MyAutocompleteable component = new MyAutocompleteable();
  		component.setLocalPhoneAutocomplete(null);
  		Assert.assertEquals(Telephone.LOCAL.getValue(), component.getAutocomplete());
  	}
  
  	@Test
  	public void testSetLocalPhoneAutocomplete() {
  		MyAutocompleteable component = new MyAutocompleteable();
  		component.setLocalPhoneAutocomplete();
  		Assert.assertEquals(Telephone.LOCAL.getValue(), component.getAutocomplete());
  	}
  
  	/**
  	 * Mock class to test the default methods.
  	 */
  	private class MyAutocompleteable implements AutocompleteablePhone {
  		private String autocomplete;
  
  		@Override
  		public void setAutocomplete(final Telephone phone, final PhoneFormat phoneType) {
  			autocomplete = AutocompleteUtil.getCombinedFullPhone(phoneType, phone);
  		}
  
  		/**
  		 * Set autocomplete without Interface methods.
  		 * @param val the value to set
  		 */
  		public void setAutocompleteDirectly(final String val) {
  			autocomplete = val;
  		}
  
  		@Override
  		public String getAutocomplete() {
  			return autocomplete;
  		}
  
  		@Override
  		public void setAutocompleteOff() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void addAutocompleteSection(final String sectionName) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void clearAutocomplete() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public String getInternalId() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public String getIdName() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void setIdName(final String idName) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public String getName() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public String getId() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void serviceRequest(final Request request) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void invokeLater(final Runnable runnable) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void handleRequest(final Request request) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void forward(final String url) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void preparePaint(final Request request) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void paint(final RenderContext renderContext) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void validate(final List<Diagnostic> diags) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void showErrorIndicators(final List<Diagnostic> diags) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void showWarningIndicators(final List<Diagnostic> diags) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void setLocked(final boolean lock) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public boolean isLocked() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public boolean isInitialised() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void setInitialised(final boolean flag) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public boolean isValidate() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void setValidate(final boolean flag) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public boolean isVisible() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void setVisible(final boolean visible) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public boolean isHidden() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public boolean hasTabIndex() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public int getTabIndex() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public WLabel getLabel() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void setFocussed() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void reset() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void tidyUpUIContextForTree() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public boolean isDefaultState() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public Container getParent() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public String getTag() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void setTag(final String tag) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public Environment getEnvironment() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void setEnvironment(final Environment environment) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public Headers getHeaders() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public String getBaseUrl() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void setAttribute(final String key, final Serializable value) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public Serializable getAttribute(final String key) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public Serializable removeAttribute(final String key) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void setToolTip(final String text, final Serializable... args) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public String getToolTip() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void setAccessibleText(final String text, final Serializable... args) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public String getAccessibleText() {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public void setTrackingEnabled(final boolean track) {
  			throw new UnsupportedOperationException("Not supported yet.");
  		}
  
  		@Override
  		public boolean isTrackingEnabled() {
  