public void GetConfigurationInfoFromDb_NullReader()
        {
            //Arrange
            //Act
            var sut = new ConfigurationInfoHandler();
            sut.GetConfigurationInfoFromDb(null);

            //Assert
        }
        public void ConvertToExpendoObject_ReturnsSelfIfAlreadyIsExpendo()
        {
            var expected = _fixture.Create<ExpandoObject>();
            var sut = new ConfigurationInfoHandler();

            var result = sut.ConvertToExpendoObject(expected);

            Assert.AreEqual(expected, result);
        }
        public void GetConfigurationInfoFromDb_FailedReader()
        {
            //Arrange
            var dr = MockRepository.GenerateStub<IDataReader>();
            dr.Stub(x => x.Read()).Throw(new Exception("Bad DataReader.Read()"));

            //Act
            var sut = new ConfigurationInfoHandler();
            sut.GetConfigurationInfoFromDb(dr);

            //Assert
        }
        public void ConvertToExpendoObject_ConvertsObjectToExpendo()
        {
            var value = _fixture.Create<string>();
            var expected = new {x = value, list = new List<int> {0, 1, 2, 3, 4, 5, 6, 7}};
            var sut = new ConfigurationInfoHandler();

            dynamic result = sut.ConvertToExpendoObject(expected);

            Assert.AreEqual(expected.x, result.x);
            Assert.AreEqual(expected.list.Count, result.list.Count);
            Assert.AreEqual(expected.list[2], result.list[2]);
        }
        public void GetConfigurationInfoFromDb_NoRecords()
        {
            //Arrange
            var dr = MockRepository.GenerateStub<IDataReader>();
            dr.Stub(x => x.Read()).Return(false);

            //Act
            var sut = new ConfigurationInfoHandler();
            List<dynamic> result = sut.GetConfigurationInfoFromDb(dr);

            //Assert
            Assert.AreEqual(0, result.Count);
        }
        public void GetConfigurationInfoFromDb_ReturnSomeRecords()
        {
            //Arrange
            var dr = MockRepository.GenerateStub<IDataReader>();
            dr.Stub(x => x.Read()).Repeat.Twice().Return(true);
            dr.Stub(x => x.Read()).Return(false);
            dr.Stub(x => x["ID"]).Repeat.Once().Return(1);
            dr.Stub(x => x["Tag"]).Repeat.Once().Return("Tag1");
            dr.Stub(x => x["ConfigValue"]).Repeat.Once().Return("Value1");
            dr.Stub(x => x["ID"]).Repeat.Once().Return(2);
            dr.Stub(x => x["Tag"]).Repeat.Once().Return("Tag2");
            dr.Stub(x => x["ConfigValue"]).Repeat.Once().Return("Value2");


            //Act
            var sut = new ConfigurationInfoHandler();
            List<dynamic> result = sut.GetConfigurationInfoFromDb(dr);

            //Assert
            Assert.AreEqual(2, result.Count);
            Assert.AreEqual(1, result[0].ID);
            Assert.AreEqual("Tag1", result[0].Tag);
            Assert.AreEqual("Value1", result[0].ConfigValue);
            Assert.AreEqual(2, result[1].ID);
            Assert.AreEqual("Tag2", result[1].Tag);
            Assert.AreEqual("Value2", result[1].ConfigValue);
        }
 public void Init()
 {
     _fixture = new Fixture().Customize(new AutoRhinoMockCustomization());
     _sut = MockRepository.GeneratePartialMock<ConfigurationInfoHandler>();
 }