code: func (ctx *AssertContext) Clone(options ...AssertContextConfigOption) AssertContext {
  	conf := *ctx.Config
  
  	newContext := *ctx
  	newContext.options = options
  	newContext.AddConfig(&conf)
  
  	return newContext
  }
docs: // Clone returns a new AssertContext configured using the provided options.
  // This overwrites the previous options of the context.
  //
  // This is useful in assertions where initial setup must be done under one
  // form of authentication and the actual assertion is done under another.
  //
  // Note: The returned AssertContext is a distinct AssertContext, Cleanup must
  // be called to remove testing files from the filesystem.