public void constructor_should_initialize_instance()
        {
            var wrappedReader = Substitute.For<IBsonReader>();

            var result = new JsonReaderAdapter(wrappedReader);

            result.Should().BeOfType<JsonReaderAdapter>();
        }
Exemple #2
0
 static void Main(string[] args)
 {
     //利用adapter模式,避免需更動所有直接依賴的物件,
     //只需更改被轉接的物件,不用動到adapter的實例後的程式。
     string path    = @"D:\LinkedinLearning\DesignPatten\DesginPattern\Adapter\MyJson.json";
     bool   bol     = File.Exists(path);
     var    adapter = new JsonReaderAdapter(path);
     var    data    = adapter.ReadJson <Exclude>();
 }
        public void Close_should_close_wrapped_reader_when_CloseInput_is_true(bool closeInput)
        {
            var wrappedReader = Substitute.For<IBsonReader>();
            var subject = new JsonReaderAdapter(wrappedReader);
            subject.CloseInput = closeInput;

            subject.Close();

            wrappedReader.Received(closeInput ? 1 : 0).Close();
        }
        public void Read_should_return_false_when_wrapped_reader_state_is_Done()
        {
            var document = new BsonDocument();
            var wrappedReader = new BsonDocumentReader(document);
            var subject = new JsonReaderAdapter(wrappedReader);
            subject.Read(); // StartObject
            subject.Read(); // EndObject
            wrappedReader.State.Should().Be(BsonReaderState.Done);

            var result = subject.Read();

            result.Should().BeFalse();
        }
Exemple #5
0
 internal override void BeginRead(Stream input) =>
 reader = new JsonReaderAdapter(input);