Отсутствует директива об использовании - PullRequest
0 голосов
/ 09 июля 2019

Совершенно новый для C # и пытается написать тестовую программу.Однако я получаю следующую ошибку:

TypeTests.cs (30,41): ошибка CS0246: не удалось найти тип или имя пространства имен 'book' (вы пропустили директиву usingили ссылка на сборку?) [C: \ dev \ gradebook \ test \ GradeBook.tests \ GradeBook.tests.csproj] TypeTests.cs (45,37): ошибка CS0246: не найден тип или имя пространства имен «книга»(вам не хватает директивы using или ссылки на сборку?) [C: \ dev \ gradebook \ test \ GradeBook.tests \ GradeBook.tests.csproj] TypeTests.cs (86,9): ошибка CS0246: тип или имя пространства имен'book' не найден (вы пропустили директиву using или ссылку на сборку?) [C: \ dev \ gradebook \ test \ GradeBook.tests \ GradeBook.tests.csproj]

пробовалперестройка и повторное добавление xunit

using System;
using Xunit;

namespace GradeBook.tests
{
    public class TypeTests
    {
         [Fact]
         public void Test1() 
         {
             var x = GetInt();

             Assert.Equal(3, x);
         }

         private int GetInt() 
         {
             return 3;
         }

         [Fact]
        public void CSharpCanPassByRef()
        {
            var book1 = GetBook("Book 1");
            GetBookSetName(ref book1, "New Name");

            Assert.Equal("Book 1", book1.name);

        }
        private void GetBookSetName(ref Book book, string name) 
        {
            book = new Book(name); 
        }

         [Fact]
        public void CSharpIsPassByValue()
        {
            var book1 = GetBook("Book 1");
            GetBookSetName(book1, "New Name");

            Assert.Equal("Book 1", book1.name);

        }

        private void GetBookSetName(Book book, string name) 
        {
            book = new Book(name);

        }
        [Fact]
        public void CanSetNameFromReference()
        {
            var book1 = GetBook("Book 1");
            SetName(book1, "New Name");

            Assert.Equal("New Name", book1.name);

            }

        private void SetName(BookTests book, string name) 
        {
            book.Name = name;
        }
        [Fact]
        public void GetBookReturnDifferentObject() 
        {
            var book1 = GetBook("Book 1");
            var book2 = GetBook("Book 2");

            Assert.Equal("Book1", book1.name);
            Assert.Equal("Book2", book2.name);
            Assert.NotSame(book1, book2);
        }


        [Fact]
        public void TwoVarsCanReferenceSameObject()
        {
            var book1 = GetBook("Book 1");
            var book2 = book1;

            Assert.Same(book1, book2);
            Assert.True(Object.ReferenceEquals(book1, book2));
        }

        Book GetBook(string name) 
        {
            return new Book(name);
        }
    }
}
...