public RatingEngineRate()
 {
     this.logger           = new FakeLogger();
     this.policySource     = new FakePolicySource();
     this.policySerializer = new JsonPolicySerializer();
     this.raterFactory     = new RaterFactory(this.logger);
     this.engine           = new RatingEngine(this.logger, this.policySource, this.policySerializer, this.raterFactory);
 }
Example #2
0
        public void ReturnsDefaultPolicyFromEmptyJsonString()
        {
            var inputJson  = "{}";
            var serializer = new JsonPolicySerializer();
            var result     = serializer.GetPolicyFromString(inputJson);
            var policy     = new Policy();

            AssertPoliciesEqual(policy, result);
        }
Example #3
0
        public RatingEngineRate()
        {
            _logger           = new FakeLogger();
            _policySource     = new FakePolicySource();
            _policySerializer = new JsonPolicySerializer();

            _engine = new RatingEngine(_logger,
                                       _policySource,
                                       _policySerializer,
                                       new RaterFactory(_logger));
        }
        public void ReturnDefaultPolicyFromEmptyJsonString()
        {
            var inputJson  = "{}";
            var serializer = new JsonPolicySerializer();

            var result = serializer.GetPolicyFromJsonString(inputJson);

            var policy = new Policy();

            //May not work. I have not tested if it can compare objects
            Assert.Equal(result, policy);
        }
Example #5
0
        public void ReturnsSimpleAutoPolicyFromValidJsonString()
        {
            var inputJson  = @"{
              ""type"": ""Auto"",
              ""make"": ""BMW""
            }";
            var serializer = new JsonPolicySerializer();

            var result = serializer.GetPolicyFromString(inputJson);

            var policy = new Policy {
                Type = "Auto", Make = "BMW"
            };

            AssertPoliciesEqual(result, policy);
        }
Example #6
0
        public void Rate()
        {
            ConsoleLogger.Log("Starting rate.");

            ConsoleLogger.Log("Loading policy.");

            var policyJson = FilePolicySource.GetPolicyFromSource();

            var policy = JsonPolicySerializer.GetPolicyFromJsonString(policyJson);

            var rater2 = new RaterFactory().CreateByReflection(policy, this);

            rater2.Rate(policy);

            ConsoleLogger.Log("Rating completed.");
        }
Example #7
0
        public void Rate()
        {
            ConsoleLogger.Log("Starting rate.");

            ConsoleLogger.Log("Loading policy.");

            var policyJson = FilePolicySource.GetPolicyFromSource();

            var policy = JsonPolicySerializer.GetPolicyFromJsonString(policyJson);

            var rater2 = new RaterFactory().CreateByReflection(policy, new LSP.RatingEngine()); //new RaterFactory().CreateByReflection(policy, this);

            if (rater2 == null)
            {
                ConsoleLogger.Log("Uknown policy type");
            }
            else
            {
                rater2.Rate(policy);
            }

            ConsoleLogger.Log("Rating completed.");
        }
 public void SetUp()
 {
     _serializer = new JsonPolicySerializer();
 }