@Override public BroadbandAccessDevice getDetails(String hostname) { try { return doGetDetails(hostname); } catch (IncorrectResultSizeDataAccessException e) { return null; } }
public void insert(String exchangeCode, String hostname, String serialNumber, DeviceType deviceType) { int availablePorts = 100; insert(exchangeCode, hostname, serialNumber, deviceType, availablePorts); }
@Bean public BroadbandAccessDeviceDatabaseDataProvider broadbandAccessDeviceDatabaseDataProvider(JdbcTemplate jdbcTemplate) { return new BroadbandAccessDeviceDatabaseDataProvider(jdbcTemplate); }
@Test public void returnsNullWhenTheDeviceIsNotFound() throws Exception { givenThereIsntADevice(); BroadbandAccessDevice device = broadbandAccessDeviceDatabaseDataProvider.getDetails("hostname"); assertThat(device).isNull(); }
@Test public void updatesSerialNumberOfADevice() throws Exception { givenABroadbandAccessDevice("hostname1", "serialNumber1", FIBRE); broadbandAccessDeviceDatabaseDataProvider.updateSerialNumber("hostname1", "newSerialNumber"); String serialNumber = broadbandAccessDeviceDatabaseDataProvider.getSerialNumber("hostname1"); assertThat(serialNumber).isEqualTo("newSerialNumber"); }
@Test public void returnsTheDetailsOfADevice() throws Exception { givenThereIsADevice("exchangeCode", "exchangeName", "exchangePostcode", "hostname", "serialNumber", ADSL, 123); BroadbandAccessDevice device = broadbandAccessDeviceDatabaseDataProvider.getDetails("hostname"); assertThat(device.getHostname()).isEqualTo("hostname"); assertThat(device.getSerialNumber()).isEqualTo("serialNumber"); assertThat(device.getType()).isEqualTo(ADSL); assertThat(device.getAvailablePorts()).isEqualTo(123); assertThat(device.getExchange().getCode()).isEqualTo("exchangeCode"); assertThat(device.getExchange().getName()).isEqualTo("exchangeName"); assertThat(device.getExchange().getPostCode()).isEqualTo("exchangePostcode"); }
@Test public void returnsSerialNumberOfADevice() throws Exception { givenDeviceHasSerialNumber("hostname1", "serialNumber1"); String serialNumber = broadbandAccessDeviceDatabaseDataProvider.getSerialNumber("hostname1"); assertThat(serialNumber).isEqualTo("serialNumber1"); }
@Test public void returnsTheHostnameOfAllDevices() throws Exception { thereThereAreDevices("hostname1", "hostname2", "hostname3"); List<String> allDeviceHostnames = broadbandAccessDeviceDatabaseDataProvider.getAllDeviceHostnames(); assertThat(allDeviceHostnames).containsOnly("hostname1", "hostname2", "hostname3"); }
@Test public void returnsNullSerialNumberForADeviceThatDoesNotExist() throws Exception { givenDeviceDoesNotExist("hostname1"); String serialNumber = broadbandAccessDeviceDatabaseDataProvider.getSerialNumber("hostname1"); assertThat(serialNumber).isNull(); }
@Test public void returnsEmptyListWhenThereAreNoDevices() throws Exception { givenThereAreNoDevices(); List<String> allDeviceHostnames = broadbandAccessDeviceDatabaseDataProvider.getAllDeviceHostnames(); assertThat(allDeviceHostnames).isEmpty(); }
private void thenTheModelHasBeenUpdatedFor(String hostname, String expectedSerialNumber) { BroadbandAccessDevice device = broadbandAccessDeviceDatabaseDataProvider.getDetails(hostname); assertThat(device.getSerialNumber()).isEqualTo(expectedSerialNumber); log("Device " + hostname + " in model after reconciliation", "Hostname: " + hostname + ", Serial Number: " + expectedSerialNumber); }
@Test public void getsTheSerialNumberOfADevice() throws Exception { givenABroadbandAccessDevice("hostname1", "serialNumber1", FIBRE); String serialNumber = broadbandAccessDeviceDatabaseDataProvider.getSerialNumber("hostname1"); assertThat(serialNumber).isEqualTo("serialNumber1"); }
private void givenABroadbandAccessDevice(String hostname, String serialNumber, DeviceType deviceType) { broadbandAccessDeviceDatabaseDataProvider.insert(EXCHANGE_CODE, hostname, serialNumber, deviceType); }
private void givenABroadbandAccessDevice(String exchangeCode, String hostname, String serialNumber, DeviceType deviceType, int availablePorts) { broadbandAccessDeviceDatabaseDataProvider.insert(exchangeCode, hostname, serialNumber, deviceType, availablePorts); }
private void givenThereAreAdslDevicesWithNoAvailablePortsInExchange(String exchangeCode) { broadbandAccessDeviceDatabaseDataProvider.insert(exchangeCode, "device1", "defaultSerialNumber", ADSL, 0); log("ADSL Device1", "Available Ports: 0"); broadbandAccessDeviceDatabaseDataProvider.insert(exchangeCode, "device2", "defaultSerialNumber", ADSL, 1); log("ADSL Device2", "Available Ports: 1"); }
private void givenThereAreFibreDevicesWithAvailablePortsInExchange(String exchangeCode) { broadbandAccessDeviceDatabaseDataProvider.insert(exchangeCode, "device3", "defaultSerialNumber", FIBRE, 10); log("Fibre Device3", "Available Ports: 10"); broadbandAccessDeviceDatabaseDataProvider.insert(exchangeCode, "device4", "defaultSerialNumber", FIBRE, 5); log("Fibre Device4", "Available Ports: 5"); }
private void givenThereAreAdslDevicesWithAvailablePortsInExchange(String exchangeCode) { broadbandAccessDeviceDatabaseDataProvider.insert(exchangeCode, "device1", "defaultSerialNumber", ADSL, 10); log("ADSL Device1", "Available Ports: 10"); broadbandAccessDeviceDatabaseDataProvider.insert(exchangeCode, "device2", "defaultSerialNumber", ADSL, 5); log("ADSL Device2", "Available Ports: 5"); }
private void givenThereAreFibreDevicesWithNoAvailablePortsInExchange(String exchangeCode) { broadbandAccessDeviceDatabaseDataProvider.insert(exchangeCode, "device3", "defaultSerialNumber", FIBRE, 0); log("Fibre Device3", "Available Ports: 0"); broadbandAccessDeviceDatabaseDataProvider.insert(exchangeCode, "device4", "defaultSerialNumber", FIBRE, 1); log("Fibre Device4", "Available Ports: 1"); }
private void givenADeviceInTheModel(String hostname, String serialNumber) { broadbandAccessDeviceDatabaseDataProvider.insert(EXCHANGE_CODE, hostname, serialNumber, DeviceType.ADSL); log("Device " + hostname + " in model before reconciliation", "Hostname: " + hostname + ", Serial Number: " + serialNumber); }
private void givenADeviceInOurModel() { exchangeDatabaseDataProvider.insert(new Exchange(EXCHANGE_CODE, EXCHANGE_NAME, EXCHANGE_POSTCODE)); broadbandAccessDeviceDatabaseDataProvider.insert(EXCHANGE_CODE, HOSTNAME, SERIAL_NUMBER, DEVICE_TYPE); log("Device in model", "Exchange Code: " + EXCHANGE_CODE + "\nHostname: " + HOSTNAME + "\nSerial Number: " + SERIAL_NUMBER + "\nType: " + DEVICE_TYPE); }