require 'rails_helper' describe PortalHelper do describe '#generate_portal_bg_color' do context 'when theme is dark' do it 'returns the correct color mix with black' do expect(helper.generate_portal_bg_color('#ff0000', 'dark')).to eq( 'color-mix(in srgb, #ff0000 10%, black)' ) end end context 'when theme is not dark' do it 'returns the correct color mix with white' do expect(helper.generate_portal_bg_color('#ff0000', 'light')).to eq( 'color-mix(in srgb, #ff0000 10%, white)' ) end end context 'when provided with various colors' do it 'adjusts the color mix appropriately' do expect(helper.generate_portal_bg_color('#00ff00', 'dark')).to eq( 'color-mix(in srgb, #00ff00 10%, black)' ) expect(helper.generate_portal_bg_color('#0000ff', 'light')).to eq( 'color-mix(in srgb, #0000ff 10%, white)' ) end end end describe '#generate_portal_bg' do context 'when theme is dark' do it 'returns the correct background with dark grid image and color mix with black' do expected_bg = 'background: url(/assets/images/hc/grid_dark.svg) color-mix(in srgb, #ff0000 10%, black)' expect(helper.generate_portal_bg('#ff0000', 'dark')).to eq(expected_bg) end end context 'when theme is not dark' do it 'returns the correct background with light grid image and color mix with white' do expected_bg = 'background: url(/assets/images/hc/grid.svg) color-mix(in srgb, #ff0000 10%, white)' expect(helper.generate_portal_bg('#ff0000', 'light')).to eq(expected_bg) end end context 'when provided with various colors' do it 'adjusts the background appropriately for dark theme' do expected_bg = 'background: url(/assets/images/hc/grid_dark.svg) color-mix(in srgb, #00ff00 10%, black)' expect(helper.generate_portal_bg('#00ff00', 'dark')).to eq(expected_bg) end it 'adjusts the background appropriately for light theme' do expected_bg = 'background: url(/assets/images/hc/grid.svg) color-mix(in srgb, #0000ff 10%, white)' expect(helper.generate_portal_bg('#0000ff', 'light')).to eq(expected_bg) end end end end