createMock(\WP_Theme_JSON::class); $themeJsonMock->method('get_data')->willReturn([ 'settings' => [ "layout" => [ "contentSize" => "660px", "wideSize" => "660px", ], ], 'styles' => [ 'spacing' => [ 'padding' => [ 'left' => '10px', 'right' => '10px', ], ], ], ]); $themeController = $this->createMock(ThemeController::class); $themeController->method('getTheme')->willReturn($themeJsonMock); $settingsController = new SettingsController($themeController); $layoutWidth = $settingsController->getLayoutWidthWithoutPadding(); // default width is 660px and if we subtract padding from left and right we must get the correct value $expectedWidth = (int)SettingsController::EMAIL_WIDTH - 10 * 2; verify($layoutWidth)->equals($expectedWidth . 'px'); } }