Related questions
elow for each class you find a UML and description of the public interface. Implementing the public interface as described is madatory. There's freedom on how to implement these classes.The private properties and private methods are under your control.. There are multiple ways of implementing all these classes. Feel free to add private properties and methods.
For each object, it's mandatory to create a header file (.h), implementation file (.cpp) and a driver. Blank files are included. The header should have the class definition in it. The implementation file should contain the implementations of the methods laid out in the header fine. And finally the Driver should test/demonstrate all the features of the class. It's best to develop the driver as the class is being written. Check each section to see if there are added additional requirements for the driver. Two test suites are included so that work can be checked. It's important to implement the drivers to test and demonstrate Classes functionality.
RectTest.cpp
#include "../Rect.h"
#include <catch2/catch_test_macros.hpp>
TEST_CASE("Should be able to create a Rect with a default constructor") {
Rect *rectangle = new Rect();
}
TEST_CASE("getWidth should return the width of the rectangle") {
Rect *rectangle = new Rect();
REQUIRE(0 == rectangle->getLength());
}
TEST_CASE("getwidth should return with width of the rectangle") {
Rect *rectangle = new Rect();
REQUIRE(0 == rectangle->getwidth());
}
TEST_CASE("Should be able to create a rect with a width and height") {
Rect *rectangle = new Rect(7,9);
}
TEST_CASE("By default a rect object should have a width and height of 0") {
Rect *rectangle = new Rect();
CHECK(0 == rectangle->getLength());
CHECK(0 == rectangle->getwidth());
}
TEST_CASE("Should be able to set the width") {
Rect *rectangle = new Rect();
}
TEST_CASE("Should get area with integer") {
Rect rectangle;
rectangle.setWidth(4);
rectangle.setLength(3);
REQUIRE(rectangle.area() == 12);
}
TEST_CASE("Should get perimeter with integer") {
Rect rectangle;
rectangle.setWidth(4);
rectangle.setLength(3);
REQUIRE(rectangle.perimeter() == 14);
}
TEST_CASE("Should get lengthIsGreater with integer") {
Rect rectangle;
rectangle.setWidth(4);
rectangle.setLength(3);
REQUIRE(!rectangle.lengthIsGreater());
}
int main() {
std::cout << "Hello, Rect Driver!" << std::endl;
return 0;
}
#define Rect_h
#endif
Trending nowThis is a popular solution!
Step by stepSolved in 3 steps
- In this exercise, we are going to model some behaviors of a square. Since the Square object extends the Rectangle object, we see that a lot of the information we need is stored in the superclass and we will need to access it using the super keyword. Your job is to complete the Square class, as specified within the class. Upon completion, thoroughly test out your code using the SquareTester class. ----------------------------------- public class SquareTester{public static void main(String[] args){// Start here!}} ----------------------------------- public class Rectangle { private double width;private double height; public Rectangle(double w, double h){width = w;height = h;} public double getWidth(){return width;} public void setWidth(double w){width = w;} public double getHeight(){return height;} public void setHeight(double h){height = h;} public String toString(){return "Rectangle with width " + width + " and height " + height;}} ----------------------------------- public class...arrow_forwardCreate a new project called Family. Add a person class with name, birthDate, and sex private instance variables. Create the public getter and setter methods for each. Create an overloaded constructor that initializes all of the instance variables. Create the default constructor. Override the toString () method to show the Person's info. Create the Person in the main method, and display that person's info. Now add a new instance variable to the Person class of type Person with the identifier spouse. Spouse should be private with setter and getter methods. If you try to instantiate spouse in the contructor, you will get a stack overflow error. Each Person, creates a Person, creates a Person, and so on forever. Try that to see the error and then remove the code from the constructor. Add the following logic: in Person there should be a method to show Spouse. If spouse is null, display or return "Not Married", otherwise call the toString() method. The should also be a get married method....arrow_forwardplease may you : create a Python class named Animal with properties for name, age, and a method called speak. also include an initializer method for the class and demonstrate how to create an instance of this class. and extend the Animal class by adding a decorator for one of its properties (e.g., age). please include both a getter and a setter for the property, and demonstrate error handling.arrow_forward
- In JavaScript, how are an object and an interface related to each other? a. The object’s interface consists of the code and data needed for that object. b. An object’s interface is analogous to a pocket calculator’s inner workings. c. Built-in JavaScript objects do not require an interface, but custom objects do. d. An interface allows another program to access an object’s properties and methods.arrow_forwardCreate a new project named lab10. You will be implementing two classes: A SolarSystem class, and a Planet class. The SolarSystem contains Planet objects stored in a vector. A UML diagram for the Solar System and Planet classes The first part you should implement is the Planet class. Don't add the SolarSystem files to the project at the beginning, just work on the Planet class. Test the different overloaded operators as we did during lecture for your Planet class, and then move on to the SolarSystem class. The SolarSystem default constructor should resize the vector to zero. The default constructor values for Planet can be whatever you’d like, but make the mass a very small number, so later on when you're looking for the largest planet, it doesn't use the default Planet value. The addPlanets() method will take a number as an argument for the number of Planets that will be in your SolarSystem. So if you call addPlanets with 5 as an argument, there will be 5 Planets to add to the...arrow_forwardFor this lab task, you will work with classes and objects. Create a class named text that works similar to the built-in string class. You will need to define a constructor that can be used to initialize objects of this new class with some literal text. Next, define three methods: to_upper() that will convert all characters to uppercase, reverse() that will reverse the text and length() that will return the length of the text. After you have completed this part, copy the following mainfunction to your code and check if the implementation is correct. int main() { text sample = "This is a sample text"; cout << sample.to_upper(); // This should display "THIS IS A SAMPLE TEXT" cout << endl;cout << sample.reverse(); // This should display "txet elpmas a si sihT"cout << endl; cout << sample.length(); // This should display 21 }arrow_forward
- Below for each class you find a UML and description of the public interface. Implementing the public interface as described is madatory. There's freedom on how to implement these classes.The private properties and private methods are under your control.. There are multiple ways of implementing all these classes. Feel free to add private properties and methods. For each object, it's mandatory to create a header file (.h), implementation file (.cpp) and a driver. Blank files are included. The header should have the class definition in it. The implementation file should contain the implementations of the methods laid out in the header fine. And finally the Driver should test/demonstrate all the features of the class. It's best to develop the driver as the class is being written. Check each section to see if there are added additional requirements for the driver. Two test suites are included so that work can be checked. It's important to implement the drivers to test and demonstrate...arrow_forwardNumber 20arrow_forwardThe purpose of this assignment is to practice OOP with Decisions, Loops, Arrays and ArrayList,Input/Output Files, and Constructing Objects and Classes. Create a NetBeans project namedHW2_YourId. Develop classes for the required solutions.Important: Apply good programming practices:- Provide API documentation comments for your class(s), class constructor(s) and method(s)using the Java standard form for documentation comments discussed in this course.- Use meaningful variable and constant names.- Show your name, university id and section number as a comment at the start of each class.- Submit to Moodle the compressed file of your project with name "HW2_yourID" along witha PDF file that contains all your code. Problem:Bugs are simple creatures that only know how to walk towards other bugs. Bugs maintaininformation about their (x, y) position; by which it can tell if they are standing next to other bugs.Watch the following video: bug movement.Create a java project that simulate bugs...arrow_forward
- Below for each class you find a UML and description of the public interface. Implementing the public interface as described is madatory. There's freedom on how to implement these classes.The private properties and private methods are under your control.. There are multiple ways of implementing all these classes. Feel free to add private properties and methods. For each object, it's mandatory to create a header file (.h), implementation file (.cpp) and a driver. Blank files are included. The header should have the class definition in it. The implementation file should contain the implementations of the methods laid out in the header fine. And finally the Driver should test/demonstrate all the features of the class. It's best to develop the driver as the class is being written. Check each section to see if there are added additional requirements for the driver. Two test suites are included so that work can be checked. It's important to implement the drivers to test and demonstrate...arrow_forwardI need to change this code into object oriented code. here's how to objects are supposed to be setup. First you will need to make a Timer object. This object should function like a traditional stopwatch with methods for starting, stopping, resetting, and reporting back times. The design of the object itself is up to you (it should minimally contain methods for the aforementioned ideas), but it must consist of a solitary object that provides interfaces appropriate for being compositionally included as part of a sorting object to facilitate the time keeping portion of this exercise. Make sure you have a properly separated specification and implementation file for your Timer/Stopwatch object. The second object you will make should be a data housing object that has methods that enable client code to read in the formatted contents of data files, house the data in memory, and execute bubble sort, selection sort, and insertion sort algorithms in a timed fashion with the assistance of your...arrow_forwardCan I get a help with this in Java please? Introduce a new class, called Borrower to the project. Its purpose is to represent the borrower of the CD. It should have two fields surname and libraryId; where the latter is a mix of letters and numbers, and a suitable constructor with parameters for only these two fields in the order specified above as well as appropriate accessor methods.arrow_forward
- Text book imageDatabase System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationText book imageStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONText book imageDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- Text book imageC How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONText book imageDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningText book imageProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education