public void Validate_New_Instance_Creates_Object_Successfully() { //Arrange const string PageName = "ViajaNet - Checkout"; const string VendorName = "Chrome"; const string VendorVersion = "58.34.43.2019"; var parameters = new Dictionary <string, List <string> > { { "bar", new List <string> { "true" } } }; //Act var vendor = new AnalyticsRequestPayload.VendorRequestPayload(VendorName, VendorVersion); var payload = new AnalyticsRequestPayload(PageName, vendor, parameters); //Assert Assert.NotNull(vendor); Assert.NotNull(payload); Assert.Equal(PageName, payload.PageName); Assert.Equal(VendorName, payload.Vendor.Name); Assert.Equal(VendorVersion, payload.Vendor.Version); }
public void Validate_Adding_IP_As_IPAddress_To_Instance_Success() { //Arrange const string PageName = "ViajaNet - Checkout"; const string VendorName = "Chrome"; const string VendorVersion = "58.34.43.2019"; const string IP = "127.0.0.0"; var vendor = new AnalyticsRequestPayload.VendorRequestPayload(VendorName, VendorVersion); var parameters = new Dictionary <string, List <string> > { { "bar", new List <string> { "true" } } }; var payload = new AnalyticsRequestPayload(PageName, vendor, parameters); //Act payload.AddIp(IPAddress.Parse(IP)); //Assert Assert.NotNull(vendor); Assert.NotNull(payload); Assert.Equal(IP, payload.IP); }
public async Task<IActionResult> CreateAnalyticalHitAsync([FromBody] AnalyticsRequestPayload data) { var ipAddress = this.HttpContext.Connection.RemoteIpAddress; data.AddIp(ipAddress); string id = await this._analyticsAppService.CreateAsync(data.ToDto()); return new CreatedResult ( $"{this.HttpContext.Request.Path}?ip={ipAddress}", new SuccessResult<AnalyticsCreationResponsePayload>("Analytics hit created succesfully.", new AnalyticsCreationResponsePayload(id)) ); }