From 28e6b5e2ba1f1957584851b1190f57755b93d433 Mon Sep 17 00:00:00 2001 From: james Date: Mon, 9 Mar 2026 16:03:42 -0400 Subject: [PATCH 01/16] Library Name Subclass --- .../centrallibrary/MainApplication.java | 2 +- .../centrallibrary/Library.java | 16 ++++++++++++++++ .../centrallibrary/MainApplicationTest.java | 4 +++- 3 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 src/test/java/com/zipcodewilmington/centrallibrary/Library.java diff --git a/src/main/java/com/zipcodewilmington/centrallibrary/MainApplication.java b/src/main/java/com/zipcodewilmington/centrallibrary/MainApplication.java index c914d10..d8e8bed 100644 --- a/src/main/java/com/zipcodewilmington/centrallibrary/MainApplication.java +++ b/src/main/java/com/zipcodewilmington/centrallibrary/MainApplication.java @@ -1,4 +1,4 @@ -package com.zipcodewilmington.centralibrary; +package com.zipcodewilmington.centrallibrary; /** * Created by n3pjk on 6/9/2025. diff --git a/src/test/java/com/zipcodewilmington/centrallibrary/Library.java b/src/test/java/com/zipcodewilmington/centrallibrary/Library.java new file mode 100644 index 0000000..f207cb4 --- /dev/null +++ b/src/test/java/com/zipcodewilmington/centrallibrary/Library.java @@ -0,0 +1,16 @@ +package com.zipcodewilmington.centrallibrary; + +import java.util.Scanner; + +public class Library { + + public static String name(String libraryNameString) { + Scanner scanner = new Scanner(System.in); + System.out.println(libraryNameString); + String userInput = scanner.nextLine(); + return userInput; + } + + + +} diff --git a/src/test/java/com/zipcodewilmington/centrallibrary/MainApplicationTest.java b/src/test/java/com/zipcodewilmington/centrallibrary/MainApplicationTest.java index f706f32..daa47d7 100644 --- a/src/test/java/com/zipcodewilmington/centrallibrary/MainApplicationTest.java +++ b/src/test/java/com/zipcodewilmington/centrallibrary/MainApplicationTest.java @@ -1,7 +1,9 @@ -package com.zipcodewilmington.centralibrary; +package com.zipcodewilmington.centrallibrary; /** * Created by n3pjk on 6/9/2025. */ public class MainApplicationTest { + + } From bd13132d2d856f832797ecf3031cdfb38c725ece Mon Sep 17 00:00:00 2001 From: joseph Date: Mon, 9 Mar 2026 16:13:25 -0400 Subject: [PATCH 02/16] team --- .../centrallibrary/LibraryItem.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java diff --git a/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java b/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java new file mode 100644 index 0000000..72b7a6d --- /dev/null +++ b/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java @@ -0,0 +1,16 @@ +package com.zipcodewilmington.centrallibrary; + +public abstract class LibraryItem { + private int id; + private String title; + private String location; + private boolean isAvailable; + + public LibraryItem(int id, String title, String location){ + this.id = id; + this.title = title; + this.location = location; + this.isAvailable = true; + } + +} From a946c933803b4cc49f82d0ced6196d35b37690b2 Mon Sep 17 00:00:00 2001 From: nishat Date: Mon, 9 Mar 2026 16:22:29 -0400 Subject: [PATCH 03/16] interface --- src/test/Reservable.java | 11 +++++++++++ src/test/Searchable.java | 5 +++++ .../zipcodewilmington/centrallibrary/LibraryMember | 0 3 files changed, 16 insertions(+) create mode 100644 src/test/Reservable.java create mode 100644 src/test/Searchable.java create mode 100644 src/test/java/com/zipcodewilmington/centrallibrary/LibraryMember diff --git a/src/test/Reservable.java b/src/test/Reservable.java new file mode 100644 index 0000000..d8fd84a --- /dev/null +++ b/src/test/Reservable.java @@ -0,0 +1,11 @@ +package library; + +class LibraryMember { + +} +public interface Reservable { + void reserve(LibraryMember member); + void cancelReserve(LibraryMember member); + boolean isReserved(); + +} diff --git a/src/test/Searchable.java b/src/test/Searchable.java new file mode 100644 index 0000000..0433ff5 --- /dev/null +++ b/src/test/Searchable.java @@ -0,0 +1,5 @@ +public interface Searchable { + boolean matchesKeyword(String keyword); + String[] getSearchableFields(); + } + diff --git a/src/test/java/com/zipcodewilmington/centrallibrary/LibraryMember b/src/test/java/com/zipcodewilmington/centrallibrary/LibraryMember new file mode 100644 index 0000000..e69de29 From ec77aa8cefa88bf0ea61de640b7d395302f7b8d7 Mon Sep 17 00:00:00 2001 From: mahala Date: Mon, 9 Mar 2026 16:48:12 -0400 Subject: [PATCH 04/16] Address Class --- .../centrallibrary/Person.java | 47 +++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 src/test/java/com/zipcodewilmington/centrallibrary/Person.java diff --git a/src/test/java/com/zipcodewilmington/centrallibrary/Person.java b/src/test/java/com/zipcodewilmington/centrallibrary/Person.java new file mode 100644 index 0000000..95c36fd --- /dev/null +++ b/src/test/java/com/zipcodewilmington/centrallibrary/Person.java @@ -0,0 +1,47 @@ +package com.github.zipcodewilmington.sample; + +public class Person { +} + +public class Address{ + //Instance vairables + private String street; + private String city; + private String state; + private String zipCode; + + //Defalut Setting +public Address() { + this.street = ""; + this.city = ""; + this.state = ""; + this.zipCode = ""; + } + + //Parameterized Constructor + public Address(String street, String city, String state, String zipCode) { + this.street = street; + this.city = city; + this.state = state; + this.zipCode = zipCode; + } + + //Getter + public String getStreet() { + return street; + } + public String getCity() { + return city; + } + public String getState() { + return state; + } + public String getZipcode() { + return zipCode; + } + //Override for cleaner view + public String toString() { + return street + ", " + city + ", " + state + " " + zipCode; + } +} + From d39f4783bc8cef17fe268852562721f5d29f1388 Mon Sep 17 00:00:00 2001 From: joseph Date: Mon, 9 Mar 2026 17:35:14 -0400 Subject: [PATCH 05/16] LibraryItemClass --- .../centrallibrary/LibraryItem.java | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java b/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java index 72b7a6d..cef60fd 100644 --- a/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java +++ b/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java @@ -11,6 +11,48 @@ public LibraryItem(int id, String title, String location){ this.title = title; this.location = location; this.isAvailable = true; + + + } + public int getId() { + return id; + } + public void setId(int id) { + this.id = id; + } + + public String getTitle() { + return title; } + public void setTitle(String title) { + this.title = title; + } + + public String getLocation() { + return location; + } + public void setLocation(String location) { + this.location = location; + } + + public boolean isAvailable() { + return isAvailable; + } + public void setAvailable(boolean available) { + isAvailable = available; + } + + public void checkOut() { + this.isAvailable = false; + } + + public void checkIn() { + this.isAvailable = true; + + } + + public abstract double calculateLateFee(int daysLate); + public abstract int getMaxBorrowDays(); + public abstract String getItemType(); } From d35ab2b1665dcce78f01621b920c3bcee48b62bc Mon Sep 17 00:00:00 2001 From: joseph Date: Mon, 9 Mar 2026 19:27:28 -0400 Subject: [PATCH 06/16] Item --- .../centrallibrary/LibraryItem.java | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java b/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java index cef60fd..7bb657d 100644 --- a/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java +++ b/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java @@ -1,11 +1,12 @@ package com.zipcodewilmington.centrallibrary; -public abstract class LibraryItem { +public abstract class LibraryItem implements Searchable { private int id; private String title; private String location; private boolean isAvailable; +//constructor public LibraryItem(int id, String title, String location){ this.id = id; this.title = title; @@ -51,8 +52,23 @@ public void checkIn() { } + public boolean matchesKeyword(String keyword) { + for (String field : getSearchableFields()) { + if (field != null && field.contains(keyword)) { + return true; + } + } + return false; + } + public abstract double calculateLateFee(int daysLate); - public abstract int getMaxBorrowDays(); + public abstract int getMaxBorrowDays(); //lofi public abstract String getItemType(); + public abstract String[] getSearchableFields(); + + + } + + From 578e2fef110d3c599e61a2db54a72483a0702553 Mon Sep 17 00:00:00 2001 From: joseph Date: Mon, 9 Mar 2026 19:32:03 -0400 Subject: [PATCH 07/16] Josephs --- .../java/com/zipcodewilmington/centrallibrary/LibraryItem.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java b/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java index 7bb657d..55159db 100644 --- a/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java +++ b/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java @@ -1,6 +1,6 @@ package com.zipcodewilmington.centrallibrary; -public abstract class LibraryItem implements Searchable { +public abstract class LibraryItem { private int id; private String title; private String location; From a527d5888ec2e90a0b73c9edea585720b8d59d4f Mon Sep 17 00:00:00 2001 From: nishat Date: Mon, 9 Mar 2026 22:58:05 -0400 Subject: [PATCH 08/16] code --- src/test/java/person.java | 45 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 src/test/java/person.java diff --git a/src/test/java/person.java b/src/test/java/person.java new file mode 100644 index 0000000..4b71ef5 --- /dev/null +++ b/src/test/java/person.java @@ -0,0 +1,45 @@ +package Library; +public class person { + private String name; + private String email; + private String phoneNumber; + private int age; + //constructor initialized variable instances that belong to the person class + + public person(String name, String email, String phoneNumber, int age) { + this.name = name; + this.email = email; + this.phoneNumber = phoneNumber; + this.age = age; + } + //getters and setters for the person class + public String getName() { + return name; + } + public int getAge() { + return age; + } + public String getEmail() { + return email; + } + public String getPhoneNumber() { + return phoneNumber; + } + + public void setName(String name) { + this.name = name; + } + public void setEmail(String email) { + this.email = email; + } + public void setPhoneNumber(String phoneNumber) { + if (phoneNumber == null || phoneNumber.trim().isEmpty()) { + throw new IllegalArgumentException("Phone number cannot be null or empty"); + } + this.phoneNumber = phoneNumber; +} +@Override + public String toString() { + return "person{" + "name='" + name + '\'' + ", email='" + email + '\'' + ", phoneNumber='" + phoneNumber + '\'' + ", age=" + age +'}'; + } +} \ No newline at end of file From 4ed5a6686bb4afd05892689c8c9f929bc8b7661c Mon Sep 17 00:00:00 2001 From: joseph Date: Tue, 10 Mar 2026 11:46:42 -0400 Subject: [PATCH 09/16] Changes --- .../java/com/zipcodewilmington/centrallibrary/LibraryItem.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java b/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java index 55159db..4d9aafc 100644 --- a/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java +++ b/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java @@ -10,7 +10,7 @@ public abstract class LibraryItem { public LibraryItem(int id, String title, String location){ this.id = id; this.title = title; - this.location = location; + this.location = location; this.isAvailable = true; From 4161ba2039fe2d795eafaf0403575a2884e45c89 Mon Sep 17 00:00:00 2001 From: josemcastillo7 Date: Tue, 10 Mar 2026 12:12:11 -0400 Subject: [PATCH 10/16] Josephs branch (#2) * team * LibraryItemClass * Item * Josephs * Changes --- .../centrallibrary/LibraryItem.java | 74 +++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java diff --git a/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java b/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java new file mode 100644 index 0000000..4d9aafc --- /dev/null +++ b/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java @@ -0,0 +1,74 @@ +package com.zipcodewilmington.centrallibrary; + +public abstract class LibraryItem { + private int id; + private String title; + private String location; + private boolean isAvailable; + +//constructor + public LibraryItem(int id, String title, String location){ + this.id = id; + this.title = title; + this.location = location; + this.isAvailable = true; + + + } + public int getId() { + return id; + } + public void setId(int id) { + this.id = id; + } + + public String getTitle() { + return title; + } + public void setTitle(String title) { + this.title = title; + } + + public String getLocation() { + return location; + } + public void setLocation(String location) { + this.location = location; + } + + public boolean isAvailable() { + return isAvailable; + } + public void setAvailable(boolean available) { + isAvailable = available; + } + + public void checkOut() { + this.isAvailable = false; + } + + public void checkIn() { + this.isAvailable = true; + + } + + public boolean matchesKeyword(String keyword) { + for (String field : getSearchableFields()) { + if (field != null && field.contains(keyword)) { + return true; + } + } + return false; + } + + public abstract double calculateLateFee(int daysLate); + public abstract int getMaxBorrowDays(); //lofi + public abstract String getItemType(); + public abstract String[] getSearchableFields(); + + + + +} + + From 06bc5b35a3769a9862f544fba7eea7251063b6c7 Mon Sep 17 00:00:00 2001 From: Jstrine09 Date: Tue, 10 Mar 2026 12:13:13 -0400 Subject: [PATCH 11/16] James branch (#3) * Address Class * Person.Java code --- .../centrallibrary/Address.java | 32 ++++++++++++++++ .../centrallibrary/Person.java | 37 +++++++++++++++++++ 2 files changed, 69 insertions(+) create mode 100644 src/test/java/com/zipcodewilmington/centrallibrary/Address.java create mode 100644 src/test/java/com/zipcodewilmington/centrallibrary/Person.java diff --git a/src/test/java/com/zipcodewilmington/centrallibrary/Address.java b/src/test/java/com/zipcodewilmington/centrallibrary/Address.java new file mode 100644 index 0000000..c15725e --- /dev/null +++ b/src/test/java/com/zipcodewilmington/centrallibrary/Address.java @@ -0,0 +1,32 @@ +package com.zipcodewilmington.centrallibrary; + + + +public class Address{ + private String street; + private String city; + private String state; + private String zipcode; + + public Address(String street, String city, String state, String zipcode) { + this.street = street; + this.city = city; + this.state = state; + this.zipcode = zipcode; + } + + public String getStreet() {return street; } + public String getCity() {return city; } + public String getState() {return state; } + public String getZipcode() {return zipcode; } + + public void SetStreet(String street) {this.street = state; } + public void SetCity(String city) {this.city = city; } + public void SetState(String state) {this.state = state; } + public void SetZipcode(String zipCode) {this.zipcode = zipCode; } + + @Override + public String toString() { + return street + ", " + city + ", " + state + ", " + zipcode; + } +} \ No newline at end of file diff --git a/src/test/java/com/zipcodewilmington/centrallibrary/Person.java b/src/test/java/com/zipcodewilmington/centrallibrary/Person.java new file mode 100644 index 0000000..27f85ec --- /dev/null +++ b/src/test/java/com/zipcodewilmington/centrallibrary/Person.java @@ -0,0 +1,37 @@ +package com.zipcodewilmington.centrallibrary; + +public class Person { + private String name; + private String address; + private String phoneNumber; + private int age; + private String email; + + public Person(String name, String address, String phoneNumber, int age, String email) { + this.name = name; + this.address = address; + this.phoneNumber = phoneNumber; + setAge(age); + this.email = email; + } + + public String getName() {return name; } + public String getAddress() {return address; } + public String getPhoneNumber() {return phoneNumber; } + public int getAge() {return age; } + public String getEmail() {return email;} + + public void setName(String name) {this.name = name; } + public void setAddress(String address) {this.address = address; } + public void setPhoneNumber(String phoneNumber) {this.phoneNumber = phoneNumber; } + public void setAge(int age) { + if (age < 0) throw new IllegalArgumentException("Age cannot be negative."); + this.age = age; + } + public void setEmail(String email) {this.email = email; } + + @Override + public String toString() { + return name + ", " + address + ", " + phoneNumber + ", " + age + ", " + email; + } +} From 4e4c9bdcb44ccc42fdfed9ca8ea0fc60ebafc258 Mon Sep 17 00:00:00 2001 From: joseph Date: Tue, 10 Mar 2026 15:16:16 -0400 Subject: [PATCH 12/16] added Book.java --- .../centrallibrary/Book.java | 50 +++++++++++++++++++ .../centrallibrary/LibraryItem.java | 11 +++- 2 files changed, 59 insertions(+), 2 deletions(-) create mode 100644 src/main/java/com/zipcodewilmington/centrallibrary/Book.java diff --git a/src/main/java/com/zipcodewilmington/centrallibrary/Book.java b/src/main/java/com/zipcodewilmington/centrallibrary/Book.java new file mode 100644 index 0000000..0055253 --- /dev/null +++ b/src/main/java/com/zipcodewilmington/centrallibrary/Book.java @@ -0,0 +1,50 @@ +package com.zipcodewilmington.centrallibrary; + +public abstract class Book extends LibraryItem { + + private String author; + private String genre; + private String publicationDate; + private int pages; + + public Book(String author, String genre, String publicationDate, int numberOfPages) { + this.author = author; + this.genre = genre; + this.publicationDate = publicationDate; + this.pages = numberOfPages; + + } + + public String getAuthor() { + return author; + } + public void setAuthor(String author) { + this.author = author; + + } + + public String getGenre() { + return genre; + } + public void setGenre(String genre) { + this.genre = genre; + } + + public String getpublication() { + return publicationDate; + } + + public void serpublicationDate(String publicationDate) { + this.publicationDate = publicationDate; + } + + public int getPages() { + return pages; + } + public void setPages(int pages) { + this.pages = pages; + } +} + +//lofi +//lofi \ No newline at end of file diff --git a/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java b/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java index 4d9aafc..65a8605 100644 --- a/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java +++ b/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java @@ -1,5 +1,6 @@ package com.zipcodewilmington.centrallibrary; + public abstract class LibraryItem { private int id; private String title; @@ -7,13 +8,19 @@ public abstract class LibraryItem { private boolean isAvailable; //constructor + + + public LibraryItem() { + + } + public LibraryItem(int id, String title, String location){ this.id = id; this.title = title; this.location = location; this.isAvailable = true; - + //getters and setters } public int getId() { return id; @@ -62,7 +69,7 @@ public boolean matchesKeyword(String keyword) { } public abstract double calculateLateFee(int daysLate); - public abstract int getMaxBorrowDays(); //lofi + public abstract int getMaxBorrowDays(); public abstract String getItemType(); public abstract String[] getSearchableFields(); From 608faa3eca9c580679431f6f52aa57d256b7c0bc Mon Sep 17 00:00:00 2001 From: Jstrine09 Date: Tue, 10 Mar 2026 15:23:17 -0400 Subject: [PATCH 13/16] Address Test File (#5) * Created test file for Person * Address Test File works * Corrected the Address test --- .vscode/settings.json | 3 ++ pom.xml | 8 +++++ .../centrallibrary/AddressTest.java | 25 ++++++++++++++ .../centrallibrary/Person.java | 12 +++---- .../centrallibrary/PersonTest.java | 34 +++++++++++++++++++ src/test/java/person.java | 2 +- 6 files changed, 76 insertions(+), 8 deletions(-) create mode 100644 .vscode/settings.json create mode 100644 src/test/java/com/zipcodewilmington/centrallibrary/AddressTest.java create mode 100644 src/test/java/com/zipcodewilmington/centrallibrary/PersonTest.java diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..c5f3f6b --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "java.configuration.updateBuildConfiguration": "interactive" +} \ No newline at end of file diff --git a/pom.xml b/pom.xml index bde0b59..08ced97 100644 --- a/pom.xml +++ b/pom.xml @@ -9,4 +9,12 @@ 1.0-SNAPSHOT + + + + junit + junit + 4.13.2 + + \ No newline at end of file diff --git a/src/test/java/com/zipcodewilmington/centrallibrary/AddressTest.java b/src/test/java/com/zipcodewilmington/centrallibrary/AddressTest.java new file mode 100644 index 0000000..1a48f82 --- /dev/null +++ b/src/test/java/com/zipcodewilmington/centrallibrary/AddressTest.java @@ -0,0 +1,25 @@ +package com.zipcodewilmington.centrallibrary; + +import org.junit.Assert; +import org.junit.Test; + +public class AddressTest { + + @Test + public void testAddressConstructorAndGetters() { + // given + String street = "123 North St."; + String city = "Narnia"; + String state = "Fairytaleland"; + String zipcode = "12345"; + + // when + Address address = new Address (street, city, state,zipcode); + + Assert.assertEquals(street, address.getStreet()); + Assert.assertEquals(city, address.getCity()); + Assert.assertEquals(state, address.getState()); + Assert.assertEquals(zipcode, address.getZipcode()); + } + +} diff --git a/src/test/java/com/zipcodewilmington/centrallibrary/Person.java b/src/test/java/com/zipcodewilmington/centrallibrary/Person.java index 0dc62e3..5018f75 100644 --- a/src/test/java/com/zipcodewilmington/centrallibrary/Person.java +++ b/src/test/java/com/zipcodewilmington/centrallibrary/Person.java @@ -1,29 +1,27 @@ package com.zipcodewilmington.centrallibrary; -public class Person { +public final class Person { private String name; - private String address; private String phoneNumber; private int age; private String email; - public Person(String name, String address, String phoneNumber, int age, String email) { + public Person(String name, int age, String email, String phoneNumber) { this.name = name; - this.address = address; this.phoneNumber = phoneNumber; setAge(age); this.email = email; } public String getName() {return name; } - public String getAddress() {return address; } + public String getPhoneNumber() {return phoneNumber; } public int getAge() {return age; } public String getEmail() {return email;} public void setName(String name) {this.name = name; } - public void setAddress(String address) {this.address = address; } + public void setPhoneNumber(String phoneNumber) {this.phoneNumber = phoneNumber; } public void setAge(int age) { if (age < 0) throw new IllegalArgumentException("Age cannot be negative."); @@ -33,7 +31,7 @@ public void setAge(int age) { @Override public String toString() { - return name + ", " + address + ", " + phoneNumber + ", " + age + ", " + email; + return name + ", " + phoneNumber + ", " + age + ", " + email; } } diff --git a/src/test/java/com/zipcodewilmington/centrallibrary/PersonTest.java b/src/test/java/com/zipcodewilmington/centrallibrary/PersonTest.java new file mode 100644 index 0000000..a9eb483 --- /dev/null +++ b/src/test/java/com/zipcodewilmington/centrallibrary/PersonTest.java @@ -0,0 +1,34 @@ +package com.zipcodewilmington.centrallibrary; + + +import org.junit.Test; +import org.junit.Assert; + + +public class PersonTest { + + @Test + public void testPersonConstructorAndGetters() { + // given + String name = "Joe"; + String phoneNumber = "302-555-1111"; + String email = "joeschmo@gmail.com"; + int age = 30; + + // when + Person person = new Person (name, age, email, phoneNumber); + + Assert.assertEquals(name, person.getName()); + Assert.assertEquals(phoneNumber, person.getPhoneNumber()); + Assert.assertEquals(email, person.getEmail()); + Assert.assertEquals(age, person.getAge()); + } + @Test + public void testSetAge_negativeAge_throwsException() { + Person person = new Person("Joe", 30, "joeschmo@gmail.com", "123-456-7890"); + + Assert.assertThrows(IllegalArgumentException.class, () -> { + person.setAge(-1); + }); + } +} diff --git a/src/test/java/person.java b/src/test/java/person.java index 4b71ef5..a6304f4 100644 --- a/src/test/java/person.java +++ b/src/test/java/person.java @@ -1,4 +1,4 @@ -package Library; + public class person { private String name; private String email; From e4c81a6edc173ea1ee3dcf61d73fc9a4bd14b874 Mon Sep 17 00:00:00 2001 From: joseph Date: Tue, 10 Mar 2026 15:34:36 -0400 Subject: [PATCH 14/16] book --- src/main/java/com/zipcodewilmington/centrallibrary/Book.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/centrallibrary/Book.java b/src/main/java/com/zipcodewilmington/centrallibrary/Book.java index 0055253..4573385 100644 --- a/src/main/java/com/zipcodewilmington/centrallibrary/Book.java +++ b/src/main/java/com/zipcodewilmington/centrallibrary/Book.java @@ -43,8 +43,7 @@ public int getPages() { } public void setPages(int pages) { this.pages = pages; + } } -//lofi -//lofi \ No newline at end of file From 3561e41fea68e1b05b2a2202b9d274d9c8c08e5b Mon Sep 17 00:00:00 2001 From: joseph Date: Wed, 11 Mar 2026 08:59:50 -0400 Subject: [PATCH 15/16] booking --- .../centrallibrary/BookTest.java | 21 +++++++++++++++++++ .../centrallibrary/LibraryItem.java | 8 +++++++ 2 files changed, 29 insertions(+) create mode 100644 src/main/java/com/zipcodewilmington/centrallibrary/BookTest.java diff --git a/src/main/java/com/zipcodewilmington/centrallibrary/BookTest.java b/src/main/java/com/zipcodewilmington/centrallibrary/BookTest.java new file mode 100644 index 0000000..c6cb12d --- /dev/null +++ b/src/main/java/com/zipcodewilmington/centrallibrary/BookTest.java @@ -0,0 +1,21 @@ +package com.zipcodewilmington.centrallibrary; + +public class BookTest { + +public static void main(String[] args) { + + Book book = new Book("A100", "The Great Gatsby", "Aisle 3", "F. Scott Fitzgerald", "978-123456790", 180,"Classics"); + + + System.out.println(book.getAuthor()); + System.out.println(book.getGenre()); + System.out.println(book.getPages()); + System.out.println(book.isAvailable()); + System.out.println(book.getLocation()); + System.out.println(book.getId()); + System.out.println(book.getTitle()); + +} + +//lofi +} diff --git a/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java b/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java index 77381cd..4e86a77 100644 --- a/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java +++ b/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java @@ -6,6 +6,7 @@ public abstract class LibraryItem { private String title; private String location; private boolean isAvailable; + private String isbn; //constructor @@ -59,6 +60,13 @@ public void checkIn() { this.isAvailable = true; } + public String getIsbn() { + return isbn; + } + public void setIsbn(String isbn) { + this.isbn = isbn; + } + public boolean matchesKeyword(String keyword) { for (String field : getSearchableFields()) { From 23578f5c199925d2496b990cd7aaa58764d9ad17 Mon Sep 17 00:00:00 2001 From: joseph Date: Wed, 11 Mar 2026 10:40:08 -0400 Subject: [PATCH 16/16] title --- .../centrallibrary/Book.java | 23 +++++++++++-------- .../centrallibrary/BookTest.java | 4 ++-- .../centrallibrary/LibraryItem.java | 17 +++----------- 3 files changed, 18 insertions(+), 26 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/centrallibrary/Book.java b/src/main/java/com/zipcodewilmington/centrallibrary/Book.java index 4573385..db39c7c 100644 --- a/src/main/java/com/zipcodewilmington/centrallibrary/Book.java +++ b/src/main/java/com/zipcodewilmington/centrallibrary/Book.java @@ -1,19 +1,22 @@ package com.zipcodewilmington.centrallibrary; -public abstract class Book extends LibraryItem { - +public class Book extends LibraryItem { private String author; private String genre; - private String publicationDate; + private String isbn; private int pages; - public Book(String author, String genre, String publicationDate, int numberOfPages) { + + + public Book(String author, String genre, String isbn, int numberOfPages) { + this.author = author; this.genre = genre; - this.publicationDate = publicationDate; + this.isbn = isbn; this.pages = numberOfPages; } + public String getAuthor() { return author; @@ -30,12 +33,12 @@ public void setGenre(String genre) { this.genre = genre; } - public String getpublication() { - return publicationDate; + public String getIsbn() { + return isbn; } - - public void serpublicationDate(String publicationDate) { - this.publicationDate = publicationDate; + + public void setIsbn(String isbn) { + this.isbn = isbn; } public int getPages() { diff --git a/src/main/java/com/zipcodewilmington/centrallibrary/BookTest.java b/src/main/java/com/zipcodewilmington/centrallibrary/BookTest.java index c6cb12d..9357472 100644 --- a/src/main/java/com/zipcodewilmington/centrallibrary/BookTest.java +++ b/src/main/java/com/zipcodewilmington/centrallibrary/BookTest.java @@ -4,7 +4,7 @@ public class BookTest { public static void main(String[] args) { - Book book = new Book("A100", "The Great Gatsby", "Aisle 3", "F. Scott Fitzgerald", "978-123456790", 180,"Classics"); + Book book = new Book("A100", "The Great Gatsby", "Aisle 3", 180); System.out.println(book.getAuthor()); @@ -17,5 +17,5 @@ public static void main(String[] args) { } -//lofi + } diff --git a/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java b/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java index 4e86a77..776cd2b 100644 --- a/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java +++ b/src/main/java/com/zipcodewilmington/centrallibrary/LibraryItem.java @@ -1,7 +1,7 @@ package com.zipcodewilmington.centrallibrary; -public abstract class LibraryItem { +public class LibraryItem { private int id; private String title; private String location; @@ -68,20 +68,9 @@ public void setIsbn(String isbn) { } - public boolean matchesKeyword(String keyword) { - for (String field : getSearchableFields()) { - if (field != null && field.contains(keyword)) { - return true; - } - } - return false; - } + + - public abstract double calculateLateFee(int daysLate); - public abstract int getMaxBorrowDays(); - public abstract int getMaxBorrowDays(); //lofi - public abstract String getItemType(); - public abstract String[] getSearchableFields();