refactoring : shotgun surgery - inline class
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
package com.example.refactoring._08_shotgun_surgery._29_inline_class;
|
||||
|
||||
public class Shipment {
|
||||
|
||||
private String shippingCompany;
|
||||
|
||||
private String trackingNumber;
|
||||
|
||||
public Shipment(String shippingCompany, String trackingNumber) {
|
||||
this.shippingCompany = shippingCompany;
|
||||
this.trackingNumber = trackingNumber;
|
||||
}
|
||||
|
||||
public String getTrackingInfo() {
|
||||
return this.shippingCompany + ": " + this.trackingNumber;
|
||||
}
|
||||
|
||||
public String getShippingCompany() {
|
||||
return shippingCompany;
|
||||
}
|
||||
|
||||
public void setShippingCompany(String shippingCompany) {
|
||||
this.shippingCompany = shippingCompany;
|
||||
}
|
||||
|
||||
public String getTrackingNumber() {
|
||||
return trackingNumber;
|
||||
}
|
||||
|
||||
public void setTrackingNumber(String trackingNumber) {
|
||||
this.trackingNumber = trackingNumber;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package com.example.refactoring._08_shotgun_surgery._29_inline_class._before;
|
||||
|
||||
public class Shipment {
|
||||
|
||||
private TrackingInformation trackingInformation;
|
||||
|
||||
public Shipment(TrackingInformation trackingInformation) {
|
||||
this.trackingInformation = trackingInformation;
|
||||
}
|
||||
|
||||
public TrackingInformation getTrackingInformation() {
|
||||
return trackingInformation;
|
||||
}
|
||||
|
||||
public void setTrackingInformation(TrackingInformation trackingInformation) {
|
||||
this.trackingInformation = trackingInformation;
|
||||
}
|
||||
|
||||
public String getTrackingInfo() {
|
||||
return this.trackingInformation.display();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
package com.example.refactoring._08_shotgun_surgery._29_inline_class._before;
|
||||
|
||||
public class TrackingInformation {
|
||||
|
||||
private String shippingCompany;
|
||||
|
||||
private String trackingNumber;
|
||||
|
||||
public TrackingInformation(String shippingCompany, String trackingNumber) {
|
||||
this.shippingCompany = shippingCompany;
|
||||
this.trackingNumber = trackingNumber;
|
||||
}
|
||||
|
||||
public String display() {
|
||||
return this.shippingCompany + ": " + this.trackingNumber;
|
||||
}
|
||||
|
||||
public String getShippingCompany() {
|
||||
return shippingCompany;
|
||||
}
|
||||
|
||||
public void setShippingCompany(String shippingCompany) {
|
||||
this.shippingCompany = shippingCompany;
|
||||
}
|
||||
|
||||
public String getTrackingNumber() {
|
||||
return trackingNumber;
|
||||
}
|
||||
|
||||
public void setTrackingNumber(String trackingNumber) {
|
||||
this.trackingNumber = trackingNumber;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
package com.example.refactoring._08_shotgun_surgery._29_inline_class;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.*;
|
||||
|
||||
class ShipmentTest {
|
||||
|
||||
@Test
|
||||
void trackingInfo() {
|
||||
Shipment shipment = new Shipment("UPS", "12345");
|
||||
assertEquals("UPS: 12345", shipment.getTrackingInfo());
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user