title: How do you create a proper unit test for a method that returns a list?
body: <p>I have this method:</p>
  
  <pre><code>public DataSourceResult GetProjectBySpec(int projectId, int seasonId, int episodeId)
          {
              using (var rep = RepositoryHelper.GetTake2Repository&lt;ITake2RepositoryBase&gt;())
              {
                  var spec = new ProjectCrewsByProjectSpec(projectId, seasonId, episodeId);
  
                  var personList = rep.GetList&lt;ProjectDGACrew&gt;(spec).Select(p =&gt; new
                  {
                      //big query...
                      .ToDataSourceResult();
  
                  return personList;
              }
          }
  </code></pre>
  
  <p>I need to create a unit test for this.</p>
  
  <p>My first question is:</p>
  
  <ol>
  <li><p>What am I testing for? Am I ONLY testing to see if the method returns a list? </p></li>
  <li><p>If so, how would I go about testing it?</p></li>
  </ol>
  
  <p>This is what I have so far:</p>
  
  <pre><code>    [TestClass]
      public class CrewControllerTest
      {
          [TestMethod]
          public void GetProjectCrewsBySpecTest()
          {
              // arrange
              int projectId = 1;
              int seasonId = 2;
              int episodeId = 3;
  
              // act
              var crewController = new CrewController();
              DataSourceResult dsr = crewController.GetProjectCrewsBySpec(1, 2, 3);
  
              // assert
              // what or how do I assert here? Am I just checking whether "dsr" is a list? How do I do that?
          }
      }
  </code></pre>