Homework Solution: Junit provided, its easy and not suppose to take you more than 15 mins….

    Junit provided, its easy and not suppose to take you more than 15 mins. ------------------------------------------------------------------------ Write an interface named Speaker which declares a two methods: public String noiseMade() andpublic String formatName(String name). You then need to write 4 classes that implement your Speaker interface. The name and description of each of these classes is as follows: Cow -- The formatName method should return the latin name for a cow (Bos taurus), a space, and then the value of name. Cow's noiseMade() method should return the String "Moo". Duck -- The formatName method should return the latin name for a duck (Anas platyrhynchos), a space, and then the value of name. Duck's noiseMade() method should return the String "Quack". Bullfrog -- The formatName method should return the latin name for a bullfrog (Rana catesbeiana), a space, and then the value of name. Bullfrog's noiseMade() method should return the String "Biggest rain we ever had". Person -- The formatName method should return the latin name for a person (Homo sapiens), a space, and then the value of name. The Person class should define a field named emotion which has an appropriate access modifier & getters and setters. Person's constructor should define a single String parameter specifying the emotional state for the instance. Person's noiseMade() method should return the String "Hello, I feel " and then the instance's emotion. ----------------------------------------------------------------------------- Test for Spekaer: package edu.buffalo.cse116; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; import java.lang.reflect.Method; import org.junit.Test; /** * This is actually a bad set of tests, since each class should only define tests for a single class. I am doing this * anyway, however, to simplify the work you must do on this weekly assignment. * * @author Matthew Hertz */ public class SpeakerTest { // Test that the interface is properly defined. @Test public void testSpeaker() throws SecurityException, NoSuchMethodException { Class<?> speaker = Speaker.class; assertTrue("Speaker must be an interface!", speaker.isInterface()); Method[] methods = speaker.getMethods(); assertEquals("Speaker should define 2 methods", 2, methods.length); Method formatName = speaker.getMethod("formatName", String.class); assertNotNull("Speaker should define a method name formatName with a single String parameter", formatName); assertEquals("formatName should return a String", String.class, formatName.getReturnType()); Method noiseMade = speaker.getMethod("noiseMade"); assertNotNull("Speaker should define a method name noiseMade with no parameters", noiseMade); assertEquals("noiseMade should return a String", String.class, noiseMade.getReturnType()); } // Test that your Cow class works and is properly defined. @Test public void testCow() { Class<?> cowClass = Cow.class; Class<?>[] interfaces = cowClass.getInterfaces(); assertEquals("Cow should only implement 1 class", 1, interfaces.length); assertEquals("Cow should implement the Speaker interface", Speaker.class, interfaces[0]); Cow cow = new Cow(); assertEquals("Bos taurus Bessie", cow.formatName("Bessie")); assertEquals("Bos taurus Clara bell", cow.formatName("Clara bell")); assertEquals("Moo", cow.noiseMade()); } // Test that your Duck class works and is properly defined. @Test public void testDuck() { Class<?> duckClass = Duck.class; Class<?>[] interfaces = duckClass.getInterfaces(); assertEquals("Duck should only implement 1 class", 1, interfaces.length); assertEquals("Duck should implement the Speaker interface", Speaker.class, interfaces[0]); Duck duck = new Duck(); assertEquals("Anas platyrhynchos Howard", duck.formatName("Howard")); // Ask your parents why this is funny assertEquals("Anas platyrhynchos Jack", duck.formatName("Jack")); // Make way! assertEquals("Quack", duck.noiseMade()); } // Test that your Bullfrog class works and is properly defined. @Test public void testBullfrog() { Class<?> frogClass = Bullfrog.class; Class<?>[] interfaces = frogClass.getInterfaces(); assertEquals("Bullfrog should only implement 1 class", 1, interfaces.length); assertEquals("Bullfrog should implement the Speaker interface", Speaker.class, interfaces[0]); Bullfrog frog = new Bullfrog(); assertEquals("Rana catesbeiana Toad", frog.formatName("Toad")); // Arnold Lobel told me that he and Frog are // "friends" assertEquals("Rana catesbeiana Bob", frog.formatName("Bob")); assertEquals("Biggest rain we ever had", frog.noiseMade()); } // Test that your Person class works and is properly defined. @Test public void testPerson() { Class<?> personClass = Person.class; Class<?>[] interfaces = personClass.getInterfaces(); assertEquals("Person should only implement 1 class", 1, interfaces.length); assertEquals("Person should implement the Speaker interface", Speaker.class, interfaces[0]); Person bimodal = new Person("happy"); assertEquals("Homo sapiens Red Sox nation", bimodal.formatName("Red Sox nation")); assertEquals("Homo sapiens Eddie", bimodal.formatName("Eddie")); assertEquals("Hello, I feel happy", bimodal.noiseMade()); assertEquals("happy", bimodal.getEmotion()); bimodal.setEmotion("sad"); assertEquals("sad", bimodal.getEmotion()); assertEquals("Hello, I feel sad", bimodal.noiseMade()); } }

    Expert Answer

     
    import java.io.*; interface Speaker{

    Junit supposing, its quiet and referable guess to seize you more than 15 mins.

    ————————————————————————

    Transcribe an interface determined Debater which declares a brace rules: open String noiseMade() andopen String coercionmatName(String spectry). You then insufficiency to transcribe 4 arrangees that appliance your Debater interface. The spectry and cognomen of each of these arrangees is as follows:

    Deter — The coercionmatSpectry rule should revert the latin spectry coercion a deter (Bos taurus), a illimitableness, and then the rate of spectry. Deter’s noiseMade() rule should revert the String “Moo”.

    Overwhelm — The coercionmatSpectry rule should revert the latin spectry coercion a overwhelm (Anas platyrhynchos), a illimitableness, and then the rate of spectry. Overwhelm’s noiseMade() rule should revert the String “Quack”.

    Bullfrog — The coercionmatSpectry rule should revert the latin spectry coercion a bullfrog (Rana catesbeiana), a illimitableness, and then the rate of spectry. Bullfrog’s noiseMade() rule should revert the String “Biggest rain we always had”.

    Special — The coercionmatSpectry rule should revert the latin spectry coercion a special (Homo sapiens), a illimitableness, and then the rate of spectry. The Special arrange should fix a arena determined agitation which has an divert similarity modifier & getters and establishedters. Special’s maker should fix a uncompounded String parameter specifying the agitational avow coercion the case. Special’s noiseMade() rule should revert the String “Hello, I arrive-at ” and then the case’s agitation.

    —————————————————————————–

    Test coercion Spekaer:

    package edu.buffalo.cse116;

    import static org.junit.Assert.assertEquals;
    import static org.junit.Assert.assertNotNull;
    import static org.junit.Assert.assertTrue;

    import java.lang.reflect.Method;

    import org.junit.Test;

    /**
    * This is in-effect a unwell established of tests, gone each arrange should barely fix tests coercion a uncompounded arrange. I am doing this
    * anyway, eventually, to facilitate the is-sue you must do on this weekly provision.
    *
    * @author Matthew Hertz
    */
    open arrange DebaterTest {

    // Test that the interface is rightly fixd.
    @Test
    open unsubstantial testSpeaker() throws SecurityException, NoSuchMethodException {
    Class<?> debater = Debater.class;
    assertTrue(“Debater must be an interface!”, debater.isInterface());
    Method[] rules = debater.getMethods();
    assertEquals(“Debater should fix 2 rules”, 2, rules.length);
    Rule coercionmatSpectry = debater.getMethod(“formatName”, String.class);
    assertNotNull(“Debater should fix a rule spectry coercionmatSpectry with a uncompounded String parameter”, coercionmatName);
    assertEquals(“formatSpectry should revert a String”, String.class, coercionmatName.getReturnType());
    Rule noiseMade = debater.getMethod(“noiseMade”);
    assertNotNull(“Debater should fix a rule spectry noiseMade with no parameters”, noiseMade);
    assertEquals(“noiseMade should revert a String”, String.class, noiseMade.getReturnType());

    }

    // Test that your Deter arrange is-sues and is rightly fixd.
    @Test
    open unsubstantial testCow() {
    Class<?> deterArrange = Deter.class;
    Class<?>[] interfaces = deterClass.getInterfaces();
    assertEquals(“Deter should barely appliance 1 arrange”, 1, interfaces.length);
    assertEquals(“Deter should appliance the Debater interface”, Debater.class, interfaces[0]);
    Deter deter = odd Deter();
    assertEquals(“Bos taurus Bessie”, deter.formatName(“Bessie”));
    assertEquals(“Bos taurus Clara bell”, deter.formatName(“Clara bell”));
    assertEquals(“Moo”, deter.noiseMade());
    }

    // Test that your Overwhelm arrange is-sues and is rightly fixd.
    @Test
    open unsubstantial testDuck() {
    Class<?> overwhelmArrange = Overwhelm.class;
    Class<?>[] interfaces = overwhelmClass.getInterfaces();
    assertEquals(“Overwhelm should barely appliance 1 arrange”, 1, interfaces.length);
    assertEquals(“Overwhelm should appliance the Debater interface”, Debater.class, interfaces[0]);
    Overwhelm overwhelm = odd Overwhelm();
    assertEquals(“Anas platyrhynchos Howard”, overwhelm.formatName(“Howard”)); // Ask your parents why this is funny
    assertEquals(“Anas platyrhynchos Jack”, overwhelm.formatName(“Jack”)); // Make way!
    assertEquals(“Quack”, overwhelm.noiseMade());
    }

    // Test that your Bullfrog arrange is-sues and is rightly fixd.
    @Test
    open unsubstantial testBullfrog() {
    Class<?> frogArrange = Bullfrog.class;
    Class<?>[] interfaces = frogClass.getInterfaces();
    assertEquals(“Bullfrog should barely appliance 1 arrange”, 1, interfaces.length);
    assertEquals(“Bullfrog should appliance the Debater interface”, Debater.class, interfaces[0]);
    Bullfrog frog = odd Bullfrog();
    assertEquals(“Rana catesbeiana Toad”, frog.formatName(“Toad”)); // Arnold Lobel told me that he and Frog are
    // “friends”
    assertEquals(“Rana catesbeiana Bob”, frog.formatName(“Bob”));
    assertEquals(“Biggest rain we always had”, frog.noiseMade());
    }

    // Test that your Special arrange is-sues and is rightly fixd.
    @Test
    open unsubstantial testPerson() {
    Class<?> specialArrange = Special.class;
    Class<?>[] interfaces = specialClass.getInterfaces();
    assertEquals(“Special should barely appliance 1 arrange”, 1, interfaces.length);
    assertEquals(“Special should appliance the Debater interface”, Debater.class, interfaces[0]);
    Special bimodal = odd Special(“happy”);
    assertEquals(“Homo sapiens Red Sox nation”, bimodal.formatName(“Red Sox nation”));
    assertEquals(“Homo sapiens Eddie”, bimodal.formatName(“Eddie”));
    assertEquals(“Hello, I arrive-at happy”, bimodal.noiseMade());
    assertEquals(“happy”, bimodal.getEmotion());
    bimodal.setEmotion(“sad”);
    assertEquals(“sad”, bimodal.getEmotion());
    assertEquals(“Hello, I arrive-at sad”, bimodal.noiseMade());
    }
    }

    Expert Exculpation

     

    import java.io.*;

    interface Debater{

    open String noiseMade();

    open String coercionmatName(String Spectry);

    }

    arrange Deter appliances Debater{

    open String noiseMade() revert “Moo”;

    open String coercionmatName(String Spectry) revert “Bos taurus”+” “+ Spectry;

    }

    arrange BullFrog appliances Debater{

    open String noiseMade() revert “Biggest rain we always had”;

    open String coercionmatName(String Spectry) revert “Rana catesbeiana”+” “+ Spectry;

    }

    arrange Overwhelm appliances Debater{

    open String noiseMade() revert “Quack”;

    open String coercionmatName(String Spectry) revert “Anas platyrhynchos”+” “+ Spectry;

    }

    arrange Special appliances Debater{

    open String agitation;

    open getEmotion() revert this.emotion;

    open establishedEmotion(String e) this.emotion=e;

    open String noiseMade() revert “Hello, I arrive-at ” +this.getEmotion();

    open String coercionmatName(String Spectry) revert “Homo sapiens”+” “+ Spectry;

    }