github.com/10XDev/rclone@v1.52.3-0.20200626220027-16af9ab76b2a/vfs/open_test.go (about)

     1  // Code generated by make_open_tests.go - use go generate to rebuild - DO NOT EDIT
     2  
     3  package vfs
     4  
     5  import (
     6  	"io"
     7  	"os"
     8  )
     9  
    10  // openTest describes a test of OpenFile
    11  type openTest struct {
    12  	flags               int
    13  	what                string
    14  	openNonExistentErr  error
    15  	readNonExistentErr  error
    16  	writeNonExistentErr error
    17  	openExistingErr     error
    18  	readExistingErr     error
    19  	writeExistingErr    error
    20  	contents            string
    21  }
    22  
    23  // openTests is a suite of tests for OpenFile with all possible
    24  // combination of flags.  This obeys Unix semantics even on Windows.
    25  var openTests = []openTest{
    26  	{
    27  		flags:               os.O_RDONLY,
    28  		what:                "os.O_RDONLY",
    29  		openNonExistentErr:  ENOENT,
    30  		readNonExistentErr:  nil,
    31  		writeNonExistentErr: nil,
    32  		openExistingErr:     nil,
    33  		readExistingErr:     nil,
    34  		writeExistingErr:    EBADF,
    35  		contents:            "hello",
    36  	}, {
    37  		flags:               os.O_RDONLY | os.O_TRUNC,
    38  		what:                "os.O_RDONLY|os.O_TRUNC",
    39  		openNonExistentErr:  EINVAL,
    40  		readNonExistentErr:  nil,
    41  		writeNonExistentErr: nil,
    42  		openExistingErr:     EINVAL,
    43  		readExistingErr:     nil,
    44  		writeExistingErr:    nil,
    45  		contents:            "hello",
    46  	}, {
    47  		flags:               os.O_RDONLY | os.O_SYNC,
    48  		what:                "os.O_RDONLY|os.O_SYNC",
    49  		openNonExistentErr:  ENOENT,
    50  		readNonExistentErr:  nil,
    51  		writeNonExistentErr: nil,
    52  		openExistingErr:     nil,
    53  		readExistingErr:     nil,
    54  		writeExistingErr:    EBADF,
    55  		contents:            "hello",
    56  	}, {
    57  		flags:               os.O_RDONLY | os.O_SYNC | os.O_TRUNC,
    58  		what:                "os.O_RDONLY|os.O_SYNC|os.O_TRUNC",
    59  		openNonExistentErr:  EINVAL,
    60  		readNonExistentErr:  nil,
    61  		writeNonExistentErr: nil,
    62  		openExistingErr:     EINVAL,
    63  		readExistingErr:     nil,
    64  		writeExistingErr:    nil,
    65  		contents:            "hello",
    66  	}, {
    67  		flags:               os.O_RDONLY | os.O_EXCL,
    68  		what:                "os.O_RDONLY|os.O_EXCL",
    69  		openNonExistentErr:  ENOENT,
    70  		readNonExistentErr:  nil,
    71  		writeNonExistentErr: nil,
    72  		openExistingErr:     nil,
    73  		readExistingErr:     nil,
    74  		writeExistingErr:    EBADF,
    75  		contents:            "hello",
    76  	}, {
    77  		flags:               os.O_RDONLY | os.O_EXCL | os.O_TRUNC,
    78  		what:                "os.O_RDONLY|os.O_EXCL|os.O_TRUNC",
    79  		openNonExistentErr:  EINVAL,
    80  		readNonExistentErr:  nil,
    81  		writeNonExistentErr: nil,
    82  		openExistingErr:     EINVAL,
    83  		readExistingErr:     nil,
    84  		writeExistingErr:    nil,
    85  		contents:            "hello",
    86  	}, {
    87  		flags:               os.O_RDONLY | os.O_EXCL | os.O_SYNC,
    88  		what:                "os.O_RDONLY|os.O_EXCL|os.O_SYNC",
    89  		openNonExistentErr:  ENOENT,
    90  		readNonExistentErr:  nil,
    91  		writeNonExistentErr: nil,
    92  		openExistingErr:     nil,
    93  		readExistingErr:     nil,
    94  		writeExistingErr:    EBADF,
    95  		contents:            "hello",
    96  	}, {
    97  		flags:               os.O_RDONLY | os.O_EXCL | os.O_SYNC | os.O_TRUNC,
    98  		what:                "os.O_RDONLY|os.O_EXCL|os.O_SYNC|os.O_TRUNC",
    99  		openNonExistentErr:  EINVAL,
   100  		readNonExistentErr:  nil,
   101  		writeNonExistentErr: nil,
   102  		openExistingErr:     EINVAL,
   103  		readExistingErr:     nil,
   104  		writeExistingErr:    nil,
   105  		contents:            "hello",
   106  	}, {
   107  		flags:               os.O_RDONLY | os.O_CREATE,
   108  		what:                "os.O_RDONLY|os.O_CREATE",
   109  		openNonExistentErr:  nil,
   110  		readNonExistentErr:  io.EOF,
   111  		writeNonExistentErr: EBADF,
   112  		openExistingErr:     nil,
   113  		readExistingErr:     nil,
   114  		writeExistingErr:    EBADF,
   115  		contents:            "hello",
   116  	}, {
   117  		flags:               os.O_RDONLY | os.O_CREATE | os.O_TRUNC,
   118  		what:                "os.O_RDONLY|os.O_CREATE|os.O_TRUNC",
   119  		openNonExistentErr:  EINVAL,
   120  		readNonExistentErr:  nil,
   121  		writeNonExistentErr: nil,
   122  		openExistingErr:     EINVAL,
   123  		readExistingErr:     nil,
   124  		writeExistingErr:    nil,
   125  		contents:            "hello",
   126  	}, {
   127  		flags:               os.O_RDONLY | os.O_CREATE | os.O_SYNC,
   128  		what:                "os.O_RDONLY|os.O_CREATE|os.O_SYNC",
   129  		openNonExistentErr:  nil,
   130  		readNonExistentErr:  io.EOF,
   131  		writeNonExistentErr: EBADF,
   132  		openExistingErr:     nil,
   133  		readExistingErr:     nil,
   134  		writeExistingErr:    EBADF,
   135  		contents:            "hello",
   136  	}, {
   137  		flags:               os.O_RDONLY | os.O_CREATE | os.O_SYNC | os.O_TRUNC,
   138  		what:                "os.O_RDONLY|os.O_CREATE|os.O_SYNC|os.O_TRUNC",
   139  		openNonExistentErr:  EINVAL,
   140  		readNonExistentErr:  nil,
   141  		writeNonExistentErr: nil,
   142  		openExistingErr:     EINVAL,
   143  		readExistingErr:     nil,
   144  		writeExistingErr:    nil,
   145  		contents:            "hello",
   146  	}, {
   147  		flags:               os.O_RDONLY | os.O_CREATE | os.O_EXCL,
   148  		what:                "os.O_RDONLY|os.O_CREATE|os.O_EXCL",
   149  		openNonExistentErr:  nil,
   150  		readNonExistentErr:  io.EOF,
   151  		writeNonExistentErr: EBADF,
   152  		openExistingErr:     EEXIST,
   153  		readExistingErr:     nil,
   154  		writeExistingErr:    nil,
   155  		contents:            "hello",
   156  	}, {
   157  		flags:               os.O_RDONLY | os.O_CREATE | os.O_EXCL | os.O_TRUNC,
   158  		what:                "os.O_RDONLY|os.O_CREATE|os.O_EXCL|os.O_TRUNC",
   159  		openNonExistentErr:  EINVAL,
   160  		readNonExistentErr:  nil,
   161  		writeNonExistentErr: nil,
   162  		openExistingErr:     EINVAL,
   163  		readExistingErr:     nil,
   164  		writeExistingErr:    nil,
   165  		contents:            "hello",
   166  	}, {
   167  		flags:               os.O_RDONLY | os.O_CREATE | os.O_EXCL | os.O_SYNC,
   168  		what:                "os.O_RDONLY|os.O_CREATE|os.O_EXCL|os.O_SYNC",
   169  		openNonExistentErr:  nil,
   170  		readNonExistentErr:  io.EOF,
   171  		writeNonExistentErr: EBADF,
   172  		openExistingErr:     EEXIST,
   173  		readExistingErr:     nil,
   174  		writeExistingErr:    nil,
   175  		contents:            "hello",
   176  	}, {
   177  		flags:               os.O_RDONLY | os.O_CREATE | os.O_EXCL | os.O_SYNC | os.O_TRUNC,
   178  		what:                "os.O_RDONLY|os.O_CREATE|os.O_EXCL|os.O_SYNC|os.O_TRUNC",
   179  		openNonExistentErr:  EINVAL,
   180  		readNonExistentErr:  nil,
   181  		writeNonExistentErr: nil,
   182  		openExistingErr:     EINVAL,
   183  		readExistingErr:     nil,
   184  		writeExistingErr:    nil,
   185  		contents:            "hello",
   186  	}, {
   187  		flags:               os.O_RDONLY | os.O_APPEND,
   188  		what:                "os.O_RDONLY|os.O_APPEND",
   189  		openNonExistentErr:  ENOENT,
   190  		readNonExistentErr:  nil,
   191  		writeNonExistentErr: nil,
   192  		openExistingErr:     nil,
   193  		readExistingErr:     nil,
   194  		writeExistingErr:    EBADF,
   195  		contents:            "hello",
   196  	}, {
   197  		flags:               os.O_RDONLY | os.O_APPEND | os.O_TRUNC,
   198  		what:                "os.O_RDONLY|os.O_APPEND|os.O_TRUNC",
   199  		openNonExistentErr:  EINVAL,
   200  		readNonExistentErr:  nil,
   201  		writeNonExistentErr: nil,
   202  		openExistingErr:     EINVAL,
   203  		readExistingErr:     nil,
   204  		writeExistingErr:    nil,
   205  		contents:            "hello",
   206  	}, {
   207  		flags:               os.O_RDONLY | os.O_APPEND | os.O_SYNC,
   208  		what:                "os.O_RDONLY|os.O_APPEND|os.O_SYNC",
   209  		openNonExistentErr:  ENOENT,
   210  		readNonExistentErr:  nil,
   211  		writeNonExistentErr: nil,
   212  		openExistingErr:     nil,
   213  		readExistingErr:     nil,
   214  		writeExistingErr:    EBADF,
   215  		contents:            "hello",
   216  	}, {
   217  		flags:               os.O_RDONLY | os.O_APPEND | os.O_SYNC | os.O_TRUNC,
   218  		what:                "os.O_RDONLY|os.O_APPEND|os.O_SYNC|os.O_TRUNC",
   219  		openNonExistentErr:  EINVAL,
   220  		readNonExistentErr:  nil,
   221  		writeNonExistentErr: nil,
   222  		openExistingErr:     EINVAL,
   223  		readExistingErr:     nil,
   224  		writeExistingErr:    nil,
   225  		contents:            "hello",
   226  	}, {
   227  		flags:               os.O_RDONLY | os.O_APPEND | os.O_EXCL,
   228  		what:                "os.O_RDONLY|os.O_APPEND|os.O_EXCL",
   229  		openNonExistentErr:  ENOENT,
   230  		readNonExistentErr:  nil,
   231  		writeNonExistentErr: nil,
   232  		openExistingErr:     nil,
   233  		readExistingErr:     nil,
   234  		writeExistingErr:    EBADF,
   235  		contents:            "hello",
   236  	}, {
   237  		flags:               os.O_RDONLY | os.O_APPEND | os.O_EXCL | os.O_TRUNC,
   238  		what:                "os.O_RDONLY|os.O_APPEND|os.O_EXCL|os.O_TRUNC",
   239  		openNonExistentErr:  EINVAL,
   240  		readNonExistentErr:  nil,
   241  		writeNonExistentErr: nil,
   242  		openExistingErr:     EINVAL,
   243  		readExistingErr:     nil,
   244  		writeExistingErr:    nil,
   245  		contents:            "hello",
   246  	}, {
   247  		flags:               os.O_RDONLY | os.O_APPEND | os.O_EXCL | os.O_SYNC,
   248  		what:                "os.O_RDONLY|os.O_APPEND|os.O_EXCL|os.O_SYNC",
   249  		openNonExistentErr:  ENOENT,
   250  		readNonExistentErr:  nil,
   251  		writeNonExistentErr: nil,
   252  		openExistingErr:     nil,
   253  		readExistingErr:     nil,
   254  		writeExistingErr:    EBADF,
   255  		contents:            "hello",
   256  	}, {
   257  		flags:               os.O_RDONLY | os.O_APPEND | os.O_EXCL | os.O_SYNC | os.O_TRUNC,
   258  		what:                "os.O_RDONLY|os.O_APPEND|os.O_EXCL|os.O_SYNC|os.O_TRUNC",
   259  		openNonExistentErr:  EINVAL,
   260  		readNonExistentErr:  nil,
   261  		writeNonExistentErr: nil,
   262  		openExistingErr:     EINVAL,
   263  		readExistingErr:     nil,
   264  		writeExistingErr:    nil,
   265  		contents:            "hello",
   266  	}, {
   267  		flags:               os.O_RDONLY | os.O_APPEND | os.O_CREATE,
   268  		what:                "os.O_RDONLY|os.O_APPEND|os.O_CREATE",
   269  		openNonExistentErr:  nil,
   270  		readNonExistentErr:  io.EOF,
   271  		writeNonExistentErr: EBADF,
   272  		openExistingErr:     nil,
   273  		readExistingErr:     nil,
   274  		writeExistingErr:    EBADF,
   275  		contents:            "hello",
   276  	}, {
   277  		flags:               os.O_RDONLY | os.O_APPEND | os.O_CREATE | os.O_TRUNC,
   278  		what:                "os.O_RDONLY|os.O_APPEND|os.O_CREATE|os.O_TRUNC",
   279  		openNonExistentErr:  EINVAL,
   280  		readNonExistentErr:  nil,
   281  		writeNonExistentErr: nil,
   282  		openExistingErr:     EINVAL,
   283  		readExistingErr:     nil,
   284  		writeExistingErr:    nil,
   285  		contents:            "hello",
   286  	}, {
   287  		flags:               os.O_RDONLY | os.O_APPEND | os.O_CREATE | os.O_SYNC,
   288  		what:                "os.O_RDONLY|os.O_APPEND|os.O_CREATE|os.O_SYNC",
   289  		openNonExistentErr:  nil,
   290  		readNonExistentErr:  io.EOF,
   291  		writeNonExistentErr: EBADF,
   292  		openExistingErr:     nil,
   293  		readExistingErr:     nil,
   294  		writeExistingErr:    EBADF,
   295  		contents:            "hello",
   296  	}, {
   297  		flags:               os.O_RDONLY | os.O_APPEND | os.O_CREATE | os.O_SYNC | os.O_TRUNC,
   298  		what:                "os.O_RDONLY|os.O_APPEND|os.O_CREATE|os.O_SYNC|os.O_TRUNC",
   299  		openNonExistentErr:  EINVAL,
   300  		readNonExistentErr:  nil,
   301  		writeNonExistentErr: nil,
   302  		openExistingErr:     EINVAL,
   303  		readExistingErr:     nil,
   304  		writeExistingErr:    nil,
   305  		contents:            "hello",
   306  	}, {
   307  		flags:               os.O_RDONLY | os.O_APPEND | os.O_CREATE | os.O_EXCL,
   308  		what:                "os.O_RDONLY|os.O_APPEND|os.O_CREATE|os.O_EXCL",
   309  		openNonExistentErr:  nil,
   310  		readNonExistentErr:  io.EOF,
   311  		writeNonExistentErr: EBADF,
   312  		openExistingErr:     EEXIST,
   313  		readExistingErr:     nil,
   314  		writeExistingErr:    nil,
   315  		contents:            "hello",
   316  	}, {
   317  		flags:               os.O_RDONLY | os.O_APPEND | os.O_CREATE | os.O_EXCL | os.O_TRUNC,
   318  		what:                "os.O_RDONLY|os.O_APPEND|os.O_CREATE|os.O_EXCL|os.O_TRUNC",
   319  		openNonExistentErr:  EINVAL,
   320  		readNonExistentErr:  nil,
   321  		writeNonExistentErr: nil,
   322  		openExistingErr:     EINVAL,
   323  		readExistingErr:     nil,
   324  		writeExistingErr:    nil,
   325  		contents:            "hello",
   326  	}, {
   327  		flags:               os.O_RDONLY | os.O_APPEND | os.O_CREATE | os.O_EXCL | os.O_SYNC,
   328  		what:                "os.O_RDONLY|os.O_APPEND|os.O_CREATE|os.O_EXCL|os.O_SYNC",
   329  		openNonExistentErr:  nil,
   330  		readNonExistentErr:  io.EOF,
   331  		writeNonExistentErr: EBADF,
   332  		openExistingErr:     EEXIST,
   333  		readExistingErr:     nil,
   334  		writeExistingErr:    nil,
   335  		contents:            "hello",
   336  	}, {
   337  		flags:               os.O_RDONLY | os.O_APPEND | os.O_CREATE | os.O_EXCL | os.O_SYNC | os.O_TRUNC,
   338  		what:                "os.O_RDONLY|os.O_APPEND|os.O_CREATE|os.O_EXCL|os.O_SYNC|os.O_TRUNC",
   339  		openNonExistentErr:  EINVAL,
   340  		readNonExistentErr:  nil,
   341  		writeNonExistentErr: nil,
   342  		openExistingErr:     EINVAL,
   343  		readExistingErr:     nil,
   344  		writeExistingErr:    nil,
   345  		contents:            "hello",
   346  	}, {
   347  		flags:               os.O_WRONLY,
   348  		what:                "os.O_WRONLY",
   349  		openNonExistentErr:  ENOENT,
   350  		readNonExistentErr:  nil,
   351  		writeNonExistentErr: nil,
   352  		openExistingErr:     nil,
   353  		readExistingErr:     EBADF,
   354  		writeExistingErr:    nil,
   355  		contents:            "HELlo",
   356  	}, {
   357  		flags:               os.O_WRONLY | os.O_TRUNC,
   358  		what:                "os.O_WRONLY|os.O_TRUNC",
   359  		openNonExistentErr:  ENOENT,
   360  		readNonExistentErr:  nil,
   361  		writeNonExistentErr: nil,
   362  		openExistingErr:     nil,
   363  		readExistingErr:     EBADF,
   364  		writeExistingErr:    nil,
   365  		contents:            "HEL",
   366  	}, {
   367  		flags:               os.O_WRONLY | os.O_SYNC,
   368  		what:                "os.O_WRONLY|os.O_SYNC",
   369  		openNonExistentErr:  ENOENT,
   370  		readNonExistentErr:  nil,
   371  		writeNonExistentErr: nil,
   372  		openExistingErr:     nil,
   373  		readExistingErr:     EBADF,
   374  		writeExistingErr:    nil,
   375  		contents:            "HELlo",
   376  	}, {
   377  		flags:               os.O_WRONLY | os.O_SYNC | os.O_TRUNC,
   378  		what:                "os.O_WRONLY|os.O_SYNC|os.O_TRUNC",
   379  		openNonExistentErr:  ENOENT,
   380  		readNonExistentErr:  nil,
   381  		writeNonExistentErr: nil,
   382  		openExistingErr:     nil,
   383  		readExistingErr:     EBADF,
   384  		writeExistingErr:    nil,
   385  		contents:            "HEL",
   386  	}, {
   387  		flags:               os.O_WRONLY | os.O_EXCL,
   388  		what:                "os.O_WRONLY|os.O_EXCL",
   389  		openNonExistentErr:  ENOENT,
   390  		readNonExistentErr:  nil,
   391  		writeNonExistentErr: nil,
   392  		openExistingErr:     nil,
   393  		readExistingErr:     EBADF,
   394  		writeExistingErr:    nil,
   395  		contents:            "HELlo",
   396  	}, {
   397  		flags:               os.O_WRONLY | os.O_EXCL | os.O_TRUNC,
   398  		what:                "os.O_WRONLY|os.O_EXCL|os.O_TRUNC",
   399  		openNonExistentErr:  ENOENT,
   400  		readNonExistentErr:  nil,
   401  		writeNonExistentErr: nil,
   402  		openExistingErr:     nil,
   403  		readExistingErr:     EBADF,
   404  		writeExistingErr:    nil,
   405  		contents:            "HEL",
   406  	}, {
   407  		flags:               os.O_WRONLY | os.O_EXCL | os.O_SYNC,
   408  		what:                "os.O_WRONLY|os.O_EXCL|os.O_SYNC",
   409  		openNonExistentErr:  ENOENT,
   410  		readNonExistentErr:  nil,
   411  		writeNonExistentErr: nil,
   412  		openExistingErr:     nil,
   413  		readExistingErr:     EBADF,
   414  		writeExistingErr:    nil,
   415  		contents:            "HELlo",
   416  	}, {
   417  		flags:               os.O_WRONLY | os.O_EXCL | os.O_SYNC | os.O_TRUNC,
   418  		what:                "os.O_WRONLY|os.O_EXCL|os.O_SYNC|os.O_TRUNC",
   419  		openNonExistentErr:  ENOENT,
   420  		readNonExistentErr:  nil,
   421  		writeNonExistentErr: nil,
   422  		openExistingErr:     nil,
   423  		readExistingErr:     EBADF,
   424  		writeExistingErr:    nil,
   425  		contents:            "HEL",
   426  	}, {
   427  		flags:               os.O_WRONLY | os.O_CREATE,
   428  		what:                "os.O_WRONLY|os.O_CREATE",
   429  		openNonExistentErr:  nil,
   430  		readNonExistentErr:  EBADF,
   431  		writeNonExistentErr: nil,
   432  		openExistingErr:     nil,
   433  		readExistingErr:     EBADF,
   434  		writeExistingErr:    nil,
   435  		contents:            "HELlo",
   436  	}, {
   437  		flags:               os.O_WRONLY | os.O_CREATE | os.O_TRUNC,
   438  		what:                "os.O_WRONLY|os.O_CREATE|os.O_TRUNC",
   439  		openNonExistentErr:  nil,
   440  		readNonExistentErr:  EBADF,
   441  		writeNonExistentErr: nil,
   442  		openExistingErr:     nil,
   443  		readExistingErr:     EBADF,
   444  		writeExistingErr:    nil,
   445  		contents:            "HEL",
   446  	}, {
   447  		flags:               os.O_WRONLY | os.O_CREATE | os.O_SYNC,
   448  		what:                "os.O_WRONLY|os.O_CREATE|os.O_SYNC",
   449  		openNonExistentErr:  nil,
   450  		readNonExistentErr:  EBADF,
   451  		writeNonExistentErr: nil,
   452  		openExistingErr:     nil,
   453  		readExistingErr:     EBADF,
   454  		writeExistingErr:    nil,
   455  		contents:            "HELlo",
   456  	}, {
   457  		flags:               os.O_WRONLY | os.O_CREATE | os.O_SYNC | os.O_TRUNC,
   458  		what:                "os.O_WRONLY|os.O_CREATE|os.O_SYNC|os.O_TRUNC",
   459  		openNonExistentErr:  nil,
   460  		readNonExistentErr:  EBADF,
   461  		writeNonExistentErr: nil,
   462  		openExistingErr:     nil,
   463  		readExistingErr:     EBADF,
   464  		writeExistingErr:    nil,
   465  		contents:            "HEL",
   466  	}, {
   467  		flags:               os.O_WRONLY | os.O_CREATE | os.O_EXCL,
   468  		what:                "os.O_WRONLY|os.O_CREATE|os.O_EXCL",
   469  		openNonExistentErr:  nil,
   470  		readNonExistentErr:  EBADF,
   471  		writeNonExistentErr: nil,
   472  		openExistingErr:     EEXIST,
   473  		readExistingErr:     nil,
   474  		writeExistingErr:    nil,
   475  		contents:            "hello",
   476  	}, {
   477  		flags:               os.O_WRONLY | os.O_CREATE | os.O_EXCL | os.O_TRUNC,
   478  		what:                "os.O_WRONLY|os.O_CREATE|os.O_EXCL|os.O_TRUNC",
   479  		openNonExistentErr:  nil,
   480  		readNonExistentErr:  EBADF,
   481  		writeNonExistentErr: nil,
   482  		openExistingErr:     EEXIST,
   483  		readExistingErr:     nil,
   484  		writeExistingErr:    nil,
   485  		contents:            "hello",
   486  	}, {
   487  		flags:               os.O_WRONLY | os.O_CREATE | os.O_EXCL | os.O_SYNC,
   488  		what:                "os.O_WRONLY|os.O_CREATE|os.O_EXCL|os.O_SYNC",
   489  		openNonExistentErr:  nil,
   490  		readNonExistentErr:  EBADF,
   491  		writeNonExistentErr: nil,
   492  		openExistingErr:     EEXIST,
   493  		readExistingErr:     nil,
   494  		writeExistingErr:    nil,
   495  		contents:            "hello",
   496  	}, {
   497  		flags:               os.O_WRONLY | os.O_CREATE | os.O_EXCL | os.O_SYNC | os.O_TRUNC,
   498  		what:                "os.O_WRONLY|os.O_CREATE|os.O_EXCL|os.O_SYNC|os.O_TRUNC",
   499  		openNonExistentErr:  nil,
   500  		readNonExistentErr:  EBADF,
   501  		writeNonExistentErr: nil,
   502  		openExistingErr:     EEXIST,
   503  		readExistingErr:     nil,
   504  		writeExistingErr:    nil,
   505  		contents:            "hello",
   506  	}, {
   507  		flags:               os.O_WRONLY | os.O_APPEND,
   508  		what:                "os.O_WRONLY|os.O_APPEND",
   509  		openNonExistentErr:  ENOENT,
   510  		readNonExistentErr:  nil,
   511  		writeNonExistentErr: nil,
   512  		openExistingErr:     nil,
   513  		readExistingErr:     EBADF,
   514  		writeExistingErr:    nil,
   515  		contents:            "helloHEL",
   516  	}, {
   517  		flags:               os.O_WRONLY | os.O_APPEND | os.O_TRUNC,
   518  		what:                "os.O_WRONLY|os.O_APPEND|os.O_TRUNC",
   519  		openNonExistentErr:  ENOENT,
   520  		readNonExistentErr:  nil,
   521  		writeNonExistentErr: nil,
   522  		openExistingErr:     nil,
   523  		readExistingErr:     EBADF,
   524  		writeExistingErr:    nil,
   525  		contents:            "HEL",
   526  	}, {
   527  		flags:               os.O_WRONLY | os.O_APPEND | os.O_SYNC,
   528  		what:                "os.O_WRONLY|os.O_APPEND|os.O_SYNC",
   529  		openNonExistentErr:  ENOENT,
   530  		readNonExistentErr:  nil,
   531  		writeNonExistentErr: nil,
   532  		openExistingErr:     nil,
   533  		readExistingErr:     EBADF,
   534  		writeExistingErr:    nil,
   535  		contents:            "helloHEL",
   536  	}, {
   537  		flags:               os.O_WRONLY | os.O_APPEND | os.O_SYNC | os.O_TRUNC,
   538  		what:                "os.O_WRONLY|os.O_APPEND|os.O_SYNC|os.O_TRUNC",
   539  		openNonExistentErr:  ENOENT,
   540  		readNonExistentErr:  nil,
   541  		writeNonExistentErr: nil,
   542  		openExistingErr:     nil,
   543  		readExistingErr:     EBADF,
   544  		writeExistingErr:    nil,
   545  		contents:            "HEL",
   546  	}, {
   547  		flags:               os.O_WRONLY | os.O_APPEND | os.O_EXCL,
   548  		what:                "os.O_WRONLY|os.O_APPEND|os.O_EXCL",
   549  		openNonExistentErr:  ENOENT,
   550  		readNonExistentErr:  nil,
   551  		writeNonExistentErr: nil,
   552  		openExistingErr:     nil,
   553  		readExistingErr:     EBADF,
   554  		writeExistingErr:    nil,
   555  		contents:            "helloHEL",
   556  	}, {
   557  		flags:               os.O_WRONLY | os.O_APPEND | os.O_EXCL | os.O_TRUNC,
   558  		what:                "os.O_WRONLY|os.O_APPEND|os.O_EXCL|os.O_TRUNC",
   559  		openNonExistentErr:  ENOENT,
   560  		readNonExistentErr:  nil,
   561  		writeNonExistentErr: nil,
   562  		openExistingErr:     nil,
   563  		readExistingErr:     EBADF,
   564  		writeExistingErr:    nil,
   565  		contents:            "HEL",
   566  	}, {
   567  		flags:               os.O_WRONLY | os.O_APPEND | os.O_EXCL | os.O_SYNC,
   568  		what:                "os.O_WRONLY|os.O_APPEND|os.O_EXCL|os.O_SYNC",
   569  		openNonExistentErr:  ENOENT,
   570  		readNonExistentErr:  nil,
   571  		writeNonExistentErr: nil,
   572  		openExistingErr:     nil,
   573  		readExistingErr:     EBADF,
   574  		writeExistingErr:    nil,
   575  		contents:            "helloHEL",
   576  	}, {
   577  		flags:               os.O_WRONLY | os.O_APPEND | os.O_EXCL | os.O_SYNC | os.O_TRUNC,
   578  		what:                "os.O_WRONLY|os.O_APPEND|os.O_EXCL|os.O_SYNC|os.O_TRUNC",
   579  		openNonExistentErr:  ENOENT,
   580  		readNonExistentErr:  nil,
   581  		writeNonExistentErr: nil,
   582  		openExistingErr:     nil,
   583  		readExistingErr:     EBADF,
   584  		writeExistingErr:    nil,
   585  		contents:            "HEL",
   586  	}, {
   587  		flags:               os.O_WRONLY | os.O_APPEND | os.O_CREATE,
   588  		what:                "os.O_WRONLY|os.O_APPEND|os.O_CREATE",
   589  		openNonExistentErr:  nil,
   590  		readNonExistentErr:  EBADF,
   591  		writeNonExistentErr: nil,
   592  		openExistingErr:     nil,
   593  		readExistingErr:     EBADF,
   594  		writeExistingErr:    nil,
   595  		contents:            "helloHEL",
   596  	}, {
   597  		flags:               os.O_WRONLY | os.O_APPEND | os.O_CREATE | os.O_TRUNC,
   598  		what:                "os.O_WRONLY|os.O_APPEND|os.O_CREATE|os.O_TRUNC",
   599  		openNonExistentErr:  nil,
   600  		readNonExistentErr:  EBADF,
   601  		writeNonExistentErr: nil,
   602  		openExistingErr:     nil,
   603  		readExistingErr:     EBADF,
   604  		writeExistingErr:    nil,
   605  		contents:            "HEL",
   606  	}, {
   607  		flags:               os.O_WRONLY | os.O_APPEND | os.O_CREATE | os.O_SYNC,
   608  		what:                "os.O_WRONLY|os.O_APPEND|os.O_CREATE|os.O_SYNC",
   609  		openNonExistentErr:  nil,
   610  		readNonExistentErr:  EBADF,
   611  		writeNonExistentErr: nil,
   612  		openExistingErr:     nil,
   613  		readExistingErr:     EBADF,
   614  		writeExistingErr:    nil,
   615  		contents:            "helloHEL",
   616  	}, {
   617  		flags:               os.O_WRONLY | os.O_APPEND | os.O_CREATE | os.O_SYNC | os.O_TRUNC,
   618  		what:                "os.O_WRONLY|os.O_APPEND|os.O_CREATE|os.O_SYNC|os.O_TRUNC",
   619  		openNonExistentErr:  nil,
   620  		readNonExistentErr:  EBADF,
   621  		writeNonExistentErr: nil,
   622  		openExistingErr:     nil,
   623  		readExistingErr:     EBADF,
   624  		writeExistingErr:    nil,
   625  		contents:            "HEL",
   626  	}, {
   627  		flags:               os.O_WRONLY | os.O_APPEND | os.O_CREATE | os.O_EXCL,
   628  		what:                "os.O_WRONLY|os.O_APPEND|os.O_CREATE|os.O_EXCL",
   629  		openNonExistentErr:  nil,
   630  		readNonExistentErr:  EBADF,
   631  		writeNonExistentErr: nil,
   632  		openExistingErr:     EEXIST,
   633  		readExistingErr:     nil,
   634  		writeExistingErr:    nil,
   635  		contents:            "hello",
   636  	}, {
   637  		flags:               os.O_WRONLY | os.O_APPEND | os.O_CREATE | os.O_EXCL | os.O_TRUNC,
   638  		what:                "os.O_WRONLY|os.O_APPEND|os.O_CREATE|os.O_EXCL|os.O_TRUNC",
   639  		openNonExistentErr:  nil,
   640  		readNonExistentErr:  EBADF,
   641  		writeNonExistentErr: nil,
   642  		openExistingErr:     EEXIST,
   643  		readExistingErr:     nil,
   644  		writeExistingErr:    nil,
   645  		contents:            "hello",
   646  	}, {
   647  		flags:               os.O_WRONLY | os.O_APPEND | os.O_CREATE | os.O_EXCL | os.O_SYNC,
   648  		what:                "os.O_WRONLY|os.O_APPEND|os.O_CREATE|os.O_EXCL|os.O_SYNC",
   649  		openNonExistentErr:  nil,
   650  		readNonExistentErr:  EBADF,
   651  		writeNonExistentErr: nil,
   652  		openExistingErr:     EEXIST,
   653  		readExistingErr:     nil,
   654  		writeExistingErr:    nil,
   655  		contents:            "hello",
   656  	}, {
   657  		flags:               os.O_WRONLY | os.O_APPEND | os.O_CREATE | os.O_EXCL | os.O_SYNC | os.O_TRUNC,
   658  		what:                "os.O_WRONLY|os.O_APPEND|os.O_CREATE|os.O_EXCL|os.O_SYNC|os.O_TRUNC",
   659  		openNonExistentErr:  nil,
   660  		readNonExistentErr:  EBADF,
   661  		writeNonExistentErr: nil,
   662  		openExistingErr:     EEXIST,
   663  		readExistingErr:     nil,
   664  		writeExistingErr:    nil,
   665  		contents:            "hello",
   666  	}, {
   667  		flags:               os.O_RDWR,
   668  		what:                "os.O_RDWR",
   669  		openNonExistentErr:  ENOENT,
   670  		readNonExistentErr:  nil,
   671  		writeNonExistentErr: nil,
   672  		openExistingErr:     nil,
   673  		readExistingErr:     nil,
   674  		writeExistingErr:    nil,
   675  		contents:            "heHEL",
   676  	}, {
   677  		flags:               os.O_RDWR | os.O_TRUNC,
   678  		what:                "os.O_RDWR|os.O_TRUNC",
   679  		openNonExistentErr:  ENOENT,
   680  		readNonExistentErr:  nil,
   681  		writeNonExistentErr: nil,
   682  		openExistingErr:     nil,
   683  		readExistingErr:     io.EOF,
   684  		writeExistingErr:    nil,
   685  		contents:            "HEL",
   686  	}, {
   687  		flags:               os.O_RDWR | os.O_SYNC,
   688  		what:                "os.O_RDWR|os.O_SYNC",
   689  		openNonExistentErr:  ENOENT,
   690  		readNonExistentErr:  nil,
   691  		writeNonExistentErr: nil,
   692  		openExistingErr:     nil,
   693  		readExistingErr:     nil,
   694  		writeExistingErr:    nil,
   695  		contents:            "heHEL",
   696  	}, {
   697  		flags:               os.O_RDWR | os.O_SYNC | os.O_TRUNC,
   698  		what:                "os.O_RDWR|os.O_SYNC|os.O_TRUNC",
   699  		openNonExistentErr:  ENOENT,
   700  		readNonExistentErr:  nil,
   701  		writeNonExistentErr: nil,
   702  		openExistingErr:     nil,
   703  		readExistingErr:     io.EOF,
   704  		writeExistingErr:    nil,
   705  		contents:            "HEL",
   706  	}, {
   707  		flags:               os.O_RDWR | os.O_EXCL,
   708  		what:                "os.O_RDWR|os.O_EXCL",
   709  		openNonExistentErr:  ENOENT,
   710  		readNonExistentErr:  nil,
   711  		writeNonExistentErr: nil,
   712  		openExistingErr:     nil,
   713  		readExistingErr:     nil,
   714  		writeExistingErr:    nil,
   715  		contents:            "heHEL",
   716  	}, {
   717  		flags:               os.O_RDWR | os.O_EXCL | os.O_TRUNC,
   718  		what:                "os.O_RDWR|os.O_EXCL|os.O_TRUNC",
   719  		openNonExistentErr:  ENOENT,
   720  		readNonExistentErr:  nil,
   721  		writeNonExistentErr: nil,
   722  		openExistingErr:     nil,
   723  		readExistingErr:     io.EOF,
   724  		writeExistingErr:    nil,
   725  		contents:            "HEL",
   726  	}, {
   727  		flags:               os.O_RDWR | os.O_EXCL | os.O_SYNC,
   728  		what:                "os.O_RDWR|os.O_EXCL|os.O_SYNC",
   729  		openNonExistentErr:  ENOENT,
   730  		readNonExistentErr:  nil,
   731  		writeNonExistentErr: nil,
   732  		openExistingErr:     nil,
   733  		readExistingErr:     nil,
   734  		writeExistingErr:    nil,
   735  		contents:            "heHEL",
   736  	}, {
   737  		flags:               os.O_RDWR | os.O_EXCL | os.O_SYNC | os.O_TRUNC,
   738  		what:                "os.O_RDWR|os.O_EXCL|os.O_SYNC|os.O_TRUNC",
   739  		openNonExistentErr:  ENOENT,
   740  		readNonExistentErr:  nil,
   741  		writeNonExistentErr: nil,
   742  		openExistingErr:     nil,
   743  		readExistingErr:     io.EOF,
   744  		writeExistingErr:    nil,
   745  		contents:            "HEL",
   746  	}, {
   747  		flags:               os.O_RDWR | os.O_CREATE,
   748  		what:                "os.O_RDWR|os.O_CREATE",
   749  		openNonExistentErr:  nil,
   750  		readNonExistentErr:  io.EOF,
   751  		writeNonExistentErr: nil,
   752  		openExistingErr:     nil,
   753  		readExistingErr:     nil,
   754  		writeExistingErr:    nil,
   755  		contents:            "heHEL",
   756  	}, {
   757  		flags:               os.O_RDWR | os.O_CREATE | os.O_TRUNC,
   758  		what:                "os.O_RDWR|os.O_CREATE|os.O_TRUNC",
   759  		openNonExistentErr:  nil,
   760  		readNonExistentErr:  io.EOF,
   761  		writeNonExistentErr: nil,
   762  		openExistingErr:     nil,
   763  		readExistingErr:     io.EOF,
   764  		writeExistingErr:    nil,
   765  		contents:            "HEL",
   766  	}, {
   767  		flags:               os.O_RDWR | os.O_CREATE | os.O_SYNC,
   768  		what:                "os.O_RDWR|os.O_CREATE|os.O_SYNC",
   769  		openNonExistentErr:  nil,
   770  		readNonExistentErr:  io.EOF,
   771  		writeNonExistentErr: nil,
   772  		openExistingErr:     nil,
   773  		readExistingErr:     nil,
   774  		writeExistingErr:    nil,
   775  		contents:            "heHEL",
   776  	}, {
   777  		flags:               os.O_RDWR | os.O_CREATE | os.O_SYNC | os.O_TRUNC,
   778  		what:                "os.O_RDWR|os.O_CREATE|os.O_SYNC|os.O_TRUNC",
   779  		openNonExistentErr:  nil,
   780  		readNonExistentErr:  io.EOF,
   781  		writeNonExistentErr: nil,
   782  		openExistingErr:     nil,
   783  		readExistingErr:     io.EOF,
   784  		writeExistingErr:    nil,
   785  		contents:            "HEL",
   786  	}, {
   787  		flags:               os.O_RDWR | os.O_CREATE | os.O_EXCL,
   788  		what:                "os.O_RDWR|os.O_CREATE|os.O_EXCL",
   789  		openNonExistentErr:  nil,
   790  		readNonExistentErr:  io.EOF,
   791  		writeNonExistentErr: nil,
   792  		openExistingErr:     EEXIST,
   793  		readExistingErr:     nil,
   794  		writeExistingErr:    nil,
   795  		contents:            "hello",
   796  	}, {
   797  		flags:               os.O_RDWR | os.O_CREATE | os.O_EXCL | os.O_TRUNC,
   798  		what:                "os.O_RDWR|os.O_CREATE|os.O_EXCL|os.O_TRUNC",
   799  		openNonExistentErr:  nil,
   800  		readNonExistentErr:  io.EOF,
   801  		writeNonExistentErr: nil,
   802  		openExistingErr:     EEXIST,
   803  		readExistingErr:     nil,
   804  		writeExistingErr:    nil,
   805  		contents:            "hello",
   806  	}, {
   807  		flags:               os.O_RDWR | os.O_CREATE | os.O_EXCL | os.O_SYNC,
   808  		what:                "os.O_RDWR|os.O_CREATE|os.O_EXCL|os.O_SYNC",
   809  		openNonExistentErr:  nil,
   810  		readNonExistentErr:  io.EOF,
   811  		writeNonExistentErr: nil,
   812  		openExistingErr:     EEXIST,
   813  		readExistingErr:     nil,
   814  		writeExistingErr:    nil,
   815  		contents:            "hello",
   816  	}, {
   817  		flags:               os.O_RDWR | os.O_CREATE | os.O_EXCL | os.O_SYNC | os.O_TRUNC,
   818  		what:                "os.O_RDWR|os.O_CREATE|os.O_EXCL|os.O_SYNC|os.O_TRUNC",
   819  		openNonExistentErr:  nil,
   820  		readNonExistentErr:  io.EOF,
   821  		writeNonExistentErr: nil,
   822  		openExistingErr:     EEXIST,
   823  		readExistingErr:     nil,
   824  		writeExistingErr:    nil,
   825  		contents:            "hello",
   826  	}, {
   827  		flags:               os.O_RDWR | os.O_APPEND,
   828  		what:                "os.O_RDWR|os.O_APPEND",
   829  		openNonExistentErr:  ENOENT,
   830  		readNonExistentErr:  nil,
   831  		writeNonExistentErr: nil,
   832  		openExistingErr:     nil,
   833  		readExistingErr:     nil,
   834  		writeExistingErr:    nil,
   835  		contents:            "helloHEL",
   836  	}, {
   837  		flags:               os.O_RDWR | os.O_APPEND | os.O_TRUNC,
   838  		what:                "os.O_RDWR|os.O_APPEND|os.O_TRUNC",
   839  		openNonExistentErr:  ENOENT,
   840  		readNonExistentErr:  nil,
   841  		writeNonExistentErr: nil,
   842  		openExistingErr:     nil,
   843  		readExistingErr:     io.EOF,
   844  		writeExistingErr:    nil,
   845  		contents:            "HEL",
   846  	}, {
   847  		flags:               os.O_RDWR | os.O_APPEND | os.O_SYNC,
   848  		what:                "os.O_RDWR|os.O_APPEND|os.O_SYNC",
   849  		openNonExistentErr:  ENOENT,
   850  		readNonExistentErr:  nil,
   851  		writeNonExistentErr: nil,
   852  		openExistingErr:     nil,
   853  		readExistingErr:     nil,
   854  		writeExistingErr:    nil,
   855  		contents:            "helloHEL",
   856  	}, {
   857  		flags:               os.O_RDWR | os.O_APPEND | os.O_SYNC | os.O_TRUNC,
   858  		what:                "os.O_RDWR|os.O_APPEND|os.O_SYNC|os.O_TRUNC",
   859  		openNonExistentErr:  ENOENT,
   860  		readNonExistentErr:  nil,
   861  		writeNonExistentErr: nil,
   862  		openExistingErr:     nil,
   863  		readExistingErr:     io.EOF,
   864  		writeExistingErr:    nil,
   865  		contents:            "HEL",
   866  	}, {
   867  		flags:               os.O_RDWR | os.O_APPEND | os.O_EXCL,
   868  		what:                "os.O_RDWR|os.O_APPEND|os.O_EXCL",
   869  		openNonExistentErr:  ENOENT,
   870  		readNonExistentErr:  nil,
   871  		writeNonExistentErr: nil,
   872  		openExistingErr:     nil,
   873  		readExistingErr:     nil,
   874  		writeExistingErr:    nil,
   875  		contents:            "helloHEL",
   876  	}, {
   877  		flags:               os.O_RDWR | os.O_APPEND | os.O_EXCL | os.O_TRUNC,
   878  		what:                "os.O_RDWR|os.O_APPEND|os.O_EXCL|os.O_TRUNC",
   879  		openNonExistentErr:  ENOENT,
   880  		readNonExistentErr:  nil,
   881  		writeNonExistentErr: nil,
   882  		openExistingErr:     nil,
   883  		readExistingErr:     io.EOF,
   884  		writeExistingErr:    nil,
   885  		contents:            "HEL",
   886  	}, {
   887  		flags:               os.O_RDWR | os.O_APPEND | os.O_EXCL | os.O_SYNC,
   888  		what:                "os.O_RDWR|os.O_APPEND|os.O_EXCL|os.O_SYNC",
   889  		openNonExistentErr:  ENOENT,
   890  		readNonExistentErr:  nil,
   891  		writeNonExistentErr: nil,
   892  		openExistingErr:     nil,
   893  		readExistingErr:     nil,
   894  		writeExistingErr:    nil,
   895  		contents:            "helloHEL",
   896  	}, {
   897  		flags:               os.O_RDWR | os.O_APPEND | os.O_EXCL | os.O_SYNC | os.O_TRUNC,
   898  		what:                "os.O_RDWR|os.O_APPEND|os.O_EXCL|os.O_SYNC|os.O_TRUNC",
   899  		openNonExistentErr:  ENOENT,
   900  		readNonExistentErr:  nil,
   901  		writeNonExistentErr: nil,
   902  		openExistingErr:     nil,
   903  		readExistingErr:     io.EOF,
   904  		writeExistingErr:    nil,
   905  		contents:            "HEL",
   906  	}, {
   907  		flags:               os.O_RDWR | os.O_APPEND | os.O_CREATE,
   908  		what:                "os.O_RDWR|os.O_APPEND|os.O_CREATE",
   909  		openNonExistentErr:  nil,
   910  		readNonExistentErr:  io.EOF,
   911  		writeNonExistentErr: nil,
   912  		openExistingErr:     nil,
   913  		readExistingErr:     nil,
   914  		writeExistingErr:    nil,
   915  		contents:            "helloHEL",
   916  	}, {
   917  		flags:               os.O_RDWR | os.O_APPEND | os.O_CREATE | os.O_TRUNC,
   918  		what:                "os.O_RDWR|os.O_APPEND|os.O_CREATE|os.O_TRUNC",
   919  		openNonExistentErr:  nil,
   920  		readNonExistentErr:  io.EOF,
   921  		writeNonExistentErr: nil,
   922  		openExistingErr:     nil,
   923  		readExistingErr:     io.EOF,
   924  		writeExistingErr:    nil,
   925  		contents:            "HEL",
   926  	}, {
   927  		flags:               os.O_RDWR | os.O_APPEND | os.O_CREATE | os.O_SYNC,
   928  		what:                "os.O_RDWR|os.O_APPEND|os.O_CREATE|os.O_SYNC",
   929  		openNonExistentErr:  nil,
   930  		readNonExistentErr:  io.EOF,
   931  		writeNonExistentErr: nil,
   932  		openExistingErr:     nil,
   933  		readExistingErr:     nil,
   934  		writeExistingErr:    nil,
   935  		contents:            "helloHEL",
   936  	}, {
   937  		flags:               os.O_RDWR | os.O_APPEND | os.O_CREATE | os.O_SYNC | os.O_TRUNC,
   938  		what:                "os.O_RDWR|os.O_APPEND|os.O_CREATE|os.O_SYNC|os.O_TRUNC",
   939  		openNonExistentErr:  nil,
   940  		readNonExistentErr:  io.EOF,
   941  		writeNonExistentErr: nil,
   942  		openExistingErr:     nil,
   943  		readExistingErr:     io.EOF,
   944  		writeExistingErr:    nil,
   945  		contents:            "HEL",
   946  	}, {
   947  		flags:               os.O_RDWR | os.O_APPEND | os.O_CREATE | os.O_EXCL,
   948  		what:                "os.O_RDWR|os.O_APPEND|os.O_CREATE|os.O_EXCL",
   949  		openNonExistentErr:  nil,
   950  		readNonExistentErr:  io.EOF,
   951  		writeNonExistentErr: nil,
   952  		openExistingErr:     EEXIST,
   953  		readExistingErr:     nil,
   954  		writeExistingErr:    nil,
   955  		contents:            "hello",
   956  	}, {
   957  		flags:               os.O_RDWR | os.O_APPEND | os.O_CREATE | os.O_EXCL | os.O_TRUNC,
   958  		what:                "os.O_RDWR|os.O_APPEND|os.O_CREATE|os.O_EXCL|os.O_TRUNC",
   959  		openNonExistentErr:  nil,
   960  		readNonExistentErr:  io.EOF,
   961  		writeNonExistentErr: nil,
   962  		openExistingErr:     EEXIST,
   963  		readExistingErr:     nil,
   964  		writeExistingErr:    nil,
   965  		contents:            "hello",
   966  	}, {
   967  		flags:               os.O_RDWR | os.O_APPEND | os.O_CREATE | os.O_EXCL | os.O_SYNC,
   968  		what:                "os.O_RDWR|os.O_APPEND|os.O_CREATE|os.O_EXCL|os.O_SYNC",
   969  		openNonExistentErr:  nil,
   970  		readNonExistentErr:  io.EOF,
   971  		writeNonExistentErr: nil,
   972  		openExistingErr:     EEXIST,
   973  		readExistingErr:     nil,
   974  		writeExistingErr:    nil,
   975  		contents:            "hello",
   976  	}, {
   977  		flags:               os.O_RDWR | os.O_APPEND | os.O_CREATE | os.O_EXCL | os.O_SYNC | os.O_TRUNC,
   978  		what:                "os.O_RDWR|os.O_APPEND|os.O_CREATE|os.O_EXCL|os.O_SYNC|os.O_TRUNC",
   979  		openNonExistentErr:  nil,
   980  		readNonExistentErr:  io.EOF,
   981  		writeNonExistentErr: nil,
   982  		openExistingErr:     EEXIST,
   983  		readExistingErr:     nil,
   984  		writeExistingErr:    nil,
   985  		contents:            "hello",
   986  	},
   987  }