Skip to main content
Glama

LinkedIn Content Creation MCP Server

by chrishayuk
test_metrics_chart.py3.48 kB
"""Tests for MetricsChart component.""" from chuk_mcp_linkedin.posts.components.data_viz.metrics_chart import MetricsChart class TestMetricsChartInitialization: """Test MetricsChart component initialization.""" def test_init_with_minimal_params(self): """Test initialization with minimal parameters.""" data = {"Conversion Rate": "12.5%"} chart = MetricsChart(data) assert chart.data == data assert chart.title is None def test_init_with_title(self): """Test initialization with title.""" data = {"Users": "1000"} chart = MetricsChart(data, title="KPIs") assert chart.title == "KPIs" class TestMetricsChartRender: """Test MetricsChart component rendering.""" def test_render_without_title(self): """Test rendering without title.""" chart = MetricsChart({"Metric A": "100"}) result = chart.render() assert "Metric A" in result assert "100" in result def test_render_with_title(self): """Test rendering with title.""" chart = MetricsChart({"Metric": "50"}, title="Stats") result = chart.render() assert "STATS:" in result def test_render_percentage_gets_positive_indicator(self): """Test rendering percentage values.""" chart = MetricsChart({"Growth": "25%"}) result = chart.render() assert "25%" in result assert "Growth" in result def test_render_increase_gets_positive_indicator(self): """Test rendering with 'increase' in label.""" chart = MetricsChart({"Revenue Increase": "$10K"}) result = chart.render() assert "Revenue Increase" in result def test_render_growth_gets_positive_indicator(self): """Test rendering with 'growth' in label.""" chart = MetricsChart({"User Growth": "15%"}) result = chart.render() assert "User Growth" in result def test_render_decrease_gets_negative_indicator(self): """Test rendering with 'decrease' in label.""" chart = MetricsChart({"Cost Decrease": "$500"}) result = chart.render() assert "Cost Decrease" in result def test_render_down_gets_negative_indicator(self): """Test rendering with 'down' in label.""" chart = MetricsChart({"Sales Down": "5%"}) result = chart.render() assert "Sales Down" in result def test_render_neutral_metric(self): """Test rendering neutral metric.""" chart = MetricsChart({"Total Users": "1000"}) result = chart.render() assert "Total Users" in result def test_render_non_string_value(self): """Test rendering with non-string value.""" chart = MetricsChart({"Count": 42}) result = chart.render() assert "Count" in result assert "42" in result class TestMetricsChartValidation: """Test MetricsChart component validation.""" def test_validate_valid_data(self): """Test validation with valid data.""" chart = MetricsChart({"A": "100", "B": "200"}) assert chart.validate() is True def test_validate_single_metric(self): """Test validation with single metric.""" chart = MetricsChart({"Metric": "50"}) assert chart.validate() is True def test_validate_empty_data(self): """Test validation with empty data.""" chart = MetricsChart({}) assert chart.validate() is False

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/chrishayuk/chuk-mcp-linkedin'

If you have feedback or need assistance with the MCP directory API, please join our Discord server