001package edu.pdx.cs.joy.apptbook;
002
003import org.junit.jupiter.api.Test;
004
005import java.io.BufferedReader;
006import java.io.IOException;
007import java.io.InputStream;
008import java.io.InputStreamReader;
009
010import static org.hamcrest.CoreMatchers.*;
011import static org.hamcrest.MatcherAssert.assertThat;
012
013/**
014 * A unit test for code in the <code>Project1</code> class.  This is different
015 * from <code>Project1IT</code> which is an integration test (and can capture data
016 * written to {@link System#out} and the like.
017 */
018class Project1Test {
019
020  @Test
021  void readmeCanBeReadAsResource() throws IOException {
022    try (
023      InputStream readme = Project1.class.getResourceAsStream("README.txt")
024    ) {
025      assertThat(readme, not(nullValue()));
026      BufferedReader reader = new BufferedReader(new InputStreamReader(readme));
027      String line = reader.readLine();
028      assertThat(line, containsString("This is a README file!"));
029    }
030  }
031}