瀏覽代碼

Through part 3

Lauren Green 7 年之前
父節點
當前提交
d1ff889995

+ 14
- 0
pom.xml 查看文件

@@ -7,6 +7,20 @@
7 7
     <groupId>com.zipcoder</groupId>
8 8
     <artifactId>payment</artifactId>
9 9
     <version>1.0-SNAPSHOT</version>
10
+    <dependencies>
11
+        <dependency>
12
+            <groupId>junit</groupId>
13
+            <artifactId>junit</artifactId>
14
+            <version>RELEASE</version>
15
+            <scope>test</scope>
16
+        </dependency>
17
+        <dependency>
18
+            <groupId>junit</groupId>
19
+            <artifactId>junit</artifactId>
20
+            <version>RELEASE</version>
21
+            <scope>test</scope>
22
+        </dependency>
23
+    </dependencies>
10 24
     <properties>
11 25
         <maven.compiler.source>1.8</maven.compiler.source>
12 26
         <maven.compiler.target>1.8</maven.compiler.target>

+ 56
- 0
src/main/java/com/zipcoder/payment/Check.java 查看文件

@@ -0,0 +1,56 @@
1
+package com.zipcoder.payment;
2
+
3
+public class Check implements Payment {
4
+
5
+    private Long id = 0L;
6
+    private String payerName;
7
+    private String routingNumber;
8
+    private String accountNumber;
9
+
10
+    public Check(Long id, String name, String routingNumber, String accountNumber) {
11
+        this.id = id;
12
+        this.payerName = name;
13
+        this.routingNumber = routingNumber;
14
+        this.accountNumber = accountNumber;
15
+
16
+    }
17
+
18
+    @Override
19
+    public Long getId() {
20
+        return this.id;
21
+    }
22
+
23
+    @Override
24
+    public String getPayerName() {
25
+        return this.payerName;
26
+    }
27
+
28
+    @Override
29
+    public String getShortDescription() {
30
+        return "Check " + this.payerName + " ***" + getAccountNumber().substring(getAccountNumber().length() - 4);
31
+    }
32
+
33
+    public void setId(Long id) {
34
+        this.id = id;
35
+    }
36
+
37
+    public void setPayerName(String payerName) {
38
+        this.payerName = payerName;
39
+    }
40
+
41
+    public String getRoutingNumber() {
42
+        return routingNumber;
43
+    }
44
+
45
+    public void setRoutingNumber(String routingNumber) {
46
+        this.routingNumber = routingNumber;
47
+    }
48
+
49
+    public String getAccountNumber() {
50
+        return accountNumber;
51
+    }
52
+
53
+    public void setAccountNumber(String accountNumber) {
54
+        this.accountNumber = accountNumber;
55
+    }
56
+}

+ 67
- 0
src/main/java/com/zipcoder/payment/CreditCard.java 查看文件

@@ -0,0 +1,67 @@
1
+package com.zipcoder.payment;
2
+
3
+public class CreditCard implements Payment {
4
+
5
+    private Long id = 0L;
6
+    private String payerName;
7
+    private String number;
8
+    private int expiredMonth;
9
+    private int expiredYear;
10
+
11
+    public CreditCard(Long id, String name, String number, int month, int year) {
12
+        this.id = id;
13
+        this.payerName = name;
14
+        this.number = number;
15
+        this.expiredMonth = month;
16
+        this.expiredYear = year;
17
+
18
+    }
19
+
20
+
21
+    @Override
22
+    public Long getId() {
23
+        return id;
24
+    }
25
+
26
+    @Override
27
+    public String getPayerName() {
28
+        return payerName;
29
+    }
30
+
31
+    @Override
32
+    public String getShortDescription() {
33
+        return "CC " + this.payerName + " " + getNumber().substring(getNumber().length() - 4) + " " + getExpiredMonth() + "/" + getExpiredYear();
34
+    }
35
+
36
+    public void setPayerName(String payerName) {
37
+        this.payerName = payerName;
38
+    }
39
+
40
+    public String getNumber() {
41
+        return number;
42
+    }
43
+
44
+    public void setNumber(String number) {
45
+        this.number = number;
46
+    }
47
+
48
+    public int getExpiredMonth() {
49
+        return expiredMonth;
50
+    }
51
+
52
+    public void setExpiredMonth(int expiredMonth) {
53
+        this.expiredMonth = expiredMonth;
54
+    }
55
+
56
+    public int getExpiredYear() {
57
+        return expiredYear;
58
+    }
59
+
60
+    public void setExpiredYear(int expiredYear) {
61
+        this.expiredYear = expiredYear;
62
+    }
63
+
64
+    public void setId(Long id) {
65
+        this.id = id;
66
+    }
67
+}

+ 10
- 0
src/main/java/com/zipcoder/payment/Payment.java 查看文件

@@ -0,0 +1,10 @@
1
+package com.zipcoder.payment;
2
+
3
+public interface Payment {
4
+
5
+    Long getId();
6
+
7
+    String getPayerName();
8
+
9
+    String getShortDescription();
10
+}

+ 71
- 0
src/test/java/com/zipcoder/payment/CheckTest.java 查看文件

@@ -0,0 +1,71 @@
1
+package com.zipcoder.payment;
2
+
3
+import org.junit.Assert;
4
+import org.junit.Test;
5
+
6
+public class CheckTest {
7
+
8
+    //Given
9
+    Check check = new Check(1L,"Lauren Green", "55663849772", "89994325");
10
+    Check check2 = new Check(2L,"Hayden Stewart", "00124568877", "67400023");
11
+
12
+    @Test
13
+    public void testId() {
14
+        //When
15
+        Long expected = 3L;
16
+        check.setId(3L);
17
+        Long actual = check.getId();
18
+
19
+        //Then
20
+        Assert.assertEquals(expected, actual);
21
+
22
+    }
23
+
24
+    @Test
25
+    public void testName() {
26
+        //When
27
+        String expected = "Lauren Stewart";
28
+        check.setPayerName("Lauren Stewart");
29
+        String actual = check.getPayerName();
30
+
31
+        //Then
32
+        Assert.assertEquals(expected, actual);
33
+
34
+    }
35
+
36
+    @Test
37
+    public void testRoutingNumber() {
38
+        //When
39
+        String expected = "55555555";
40
+        check.setRoutingNumber("55555555");
41
+        String actual = check.getRoutingNumber();
42
+
43
+        //Then
44
+        Assert.assertEquals(expected, actual);
45
+
46
+    }
47
+
48
+
49
+    @Test
50
+    public void testAccountNumber() {
51
+        //When
52
+        String expected = "55555555";
53
+        check.setAccountNumber("55555555");
54
+        String actual = check.getAccountNumber();
55
+
56
+        //Then
57
+        Assert.assertEquals(expected, actual);
58
+
59
+    }
60
+
61
+    @Test
62
+    public void testShortDescription() {
63
+        //When
64
+        String expected = "Check Hayden Stewart ***0023";
65
+        String actual = check2.getShortDescription();
66
+
67
+        //Then
68
+        Assert.assertEquals(expected, actual);
69
+
70
+    }
71
+}

+ 84
- 0
src/test/java/com/zipcoder/payment/CreditCardTest.java 查看文件

@@ -0,0 +1,84 @@
1
+package com.zipcoder.payment;
2
+
3
+import org.junit.Assert;
4
+import org.junit.Test;
5
+
6
+public class CreditCardTest {
7
+
8
+    //Given
9
+    CreditCard creditCard = new CreditCard(1L, "Lauren Green", "55663849772", 12, 2022);
10
+    CreditCard creditCard2 = new CreditCard(2L, "Hayden Stewart", "00124568877", 3, 2045);
11
+
12
+    @Test
13
+    public void testId() {
14
+        //When
15
+        Long expected = 3L;
16
+        creditCard.setId(3L);
17
+        Long actual = creditCard.getId();
18
+
19
+        //Then
20
+        Assert.assertEquals(expected, actual);
21
+
22
+    }
23
+
24
+    @Test
25
+    public void testName() {
26
+        //When
27
+        String expected = "Lauren Stewart";
28
+        creditCard.setPayerName("Lauren Stewart");
29
+        String actual = creditCard.getPayerName();
30
+
31
+        //Then
32
+        Assert.assertEquals(expected, actual);
33
+
34
+    }
35
+
36
+    @Test
37
+    public void testNumber() {
38
+        //When
39
+        String expected = "567891234";
40
+        creditCard.setNumber("567891234");
41
+        String actual = creditCard.getNumber();
42
+
43
+        //Then
44
+        Assert.assertEquals(expected, actual);
45
+
46
+    }
47
+
48
+    @Test
49
+    public void testExpiredMonth() {
50
+        //When
51
+        int expected = 5;
52
+        creditCard.setExpiredMonth(5);
53
+        int actual = creditCard.getExpiredMonth();
54
+
55
+        //Then
56
+        Assert.assertEquals(expected, actual);
57
+
58
+    }
59
+
60
+
61
+    @Test
62
+    public void testExpiredYear() {
63
+        //When
64
+        int expected = 2099;
65
+        creditCard.setExpiredYear(2099);
66
+        int actual = creditCard.getExpiredYear();
67
+
68
+        //Then
69
+        Assert.assertEquals(expected, actual);
70
+
71
+    }
72
+
73
+    @Test
74
+    public void testShortDescription() {
75
+        //When
76
+        String expected = "CC Hayden Stewart 8877 3/2045";
77
+        String actual = creditCard2.getShortDescription();
78
+
79
+        //Then
80
+        Assert.assertEquals(expected, actual);
81
+
82
+    }
83
+
84
+}