Source identity
| Field | Recorded value |
|---|---|
| Source type | GitHub source |
| Original record | Janady13/AI_Brain / tests/test_marketing_intelligence.cs |
| Date | Not specified in source |
| Repository | Janady13/AI_Brain |
| Revision | 6d0767aad08781eb5c4e1eb14a42ec92c437be78 |
| Branch | copilot/convert-python-files-to-csharp |
| Path or archive member | tests/test_marketing_intelligence.cs |
| Original SHA-256 | bebdef35fdd8c38b2bc0dc7836c24374992ce8fa9386b812210635f91689f49b |
| Git blob SHA | 5d7e875cb47d2df749038618cf0e454df8ae40d6 |
| Reading-copy SHA-256 | bebdef35fdd8c38b2bc0dc7836c24374992ce8fa9386b812210635f91689f49b |
Recovered source transcript
Download complete source text ↓97 lines · 2.6 KB
// Tests for marketing intelligence engine
using System;
using AIBrain.Services.SeederApi;
using Xunit;
namespace AIBrain.Tests
{
public class TestMarketingIntelligence
{
[Fact]
public void TestMarketingIntelligenceEngineInitialization()
{
var engine = new MarketingIntelligenceEngine();
Assert.NotNull(engine.Campaigns);
Assert.NotNull(engine.Aggregates);
Assert.NotNull(engine.Statistics);
Assert.Empty(engine.Campaigns);
}
[Fact]
public void TestAddCampaign()
{
var engine = new MarketingIntelligenceEngine();
var campaign = new MarketingCampaign
{
Id = "test-1",
Name = "Test Campaign",
Channel = "email",
Budget = 1000m
};
engine.AddCampaign(campaign);
Assert.Single(engine.Campaigns);
Assert.Equal("test-1", engine.Campaigns[0].Id);
}
[Fact]
public void TestGetAggregateMetrics()
{
var engine = new MarketingIntelligenceEngine();
engine.AddCampaign(new MarketingCampaign
{
Id = "c1",
Metrics = new CampaignMetrics
{
Impressions = 1000,
Clicks = 50,
Conversions = 5,
Revenue = 500m
}
});
engine.AddCampaign(new MarketingCampaign
{
Id = "c2",
Metrics = new CampaignMetrics
{
Impressions = 2000,
Clicks = 100,
Conversions = 10,
Revenue = 1000m
}
});
var aggregate = engine.GetAggregateMetrics();
Assert.Equal(3000, aggregate.Impressions);
Assert.Equal(150, aggregate.Clicks);
Assert.Equal(15, aggregate.Conversions);
Assert.Equal(1500m, aggregate.Revenue);
}
[Fact]
public void TestCampaignMetrics()
{
var metrics = new CampaignMetrics
{
Impressions = 1000,
Clicks = 100,
Conversions = 10,
Revenue = 500m,
Roi = 2.5
};
Assert.Equal(1000, metrics.Impressions);
Assert.Equal(100, metrics.Clicks);
Assert.Equal(10, metrics.Conversions);
Assert.Equal(500m, metrics.Revenue);
Assert.Equal(2.5, metrics.Roi);
}
}
}