@@ -930,6 +930,52 @@ func TestDockerDriver_CreateContainerConfig(t *testing.T) {
930
930
require .EqualValues (t , opt , c .HostConfig .StorageOpt )
931
931
}
932
932
933
+ func TestDockerDriver_CreateContainerConfig_Logging (t * testing.T ) {
934
+ t .Parallel ()
935
+
936
+ cases := []struct {
937
+ name string
938
+ loggingConfig DockerLogging
939
+ expectedDriver string
940
+ }{
941
+ {
942
+ "simple type" ,
943
+ DockerLogging {Type : "fluentd" },
944
+ "fluentd" ,
945
+ },
946
+ {
947
+ "simple driver" ,
948
+ DockerLogging {Driver : "fluentd" },
949
+ "fluentd" ,
950
+ },
951
+ {
952
+ "type takes precedence" ,
953
+ DockerLogging {
954
+ Type : "json-file" ,
955
+ Driver : "fluentd" ,
956
+ },
957
+ "json-file" ,
958
+ },
959
+ }
960
+
961
+ for _ , c := range cases {
962
+ t .Run (c .name , func (t * testing.T ) {
963
+ task , cfg , _ := dockerTask (t )
964
+
965
+ cfg .Logging = c .loggingConfig
966
+ require .NoError (t , task .EncodeConcreteDriverConfig (cfg ))
967
+
968
+ dh := dockerDriverHarness (t , nil )
969
+ driver := dh .Impl ().(* Driver )
970
+
971
+ cc , err := driver .createContainerConfig (task , cfg , "org/repo:0.1" )
972
+ require .NoError (t , err )
973
+
974
+ require .Equal (t , c .expectedDriver , cc .HostConfig .LogConfig .Type )
975
+ })
976
+ }
977
+ }
978
+
933
979
func TestDockerDriver_CreateContainerConfigWithRuntimes (t * testing.T ) {
934
980
if ! tu .IsCI () {
935
981
t .Parallel ()
0 commit comments