code: def test_series_setitem_partial_slice_cow_off():
      with cudf.option_context("copy_on_write", False):
          actual = cudf.Series([1, 2, 3, 4, 5])
          new_copy = actual.copy(deep=False)
  
          new_copy[slice(2, 4, 1)] = 300
          assert_eq(actual, cudf.Series([1, 2, 300, 300, 5]))
          assert_eq(new_copy, cudf.Series([1, 2, 300, 300, 5]))
  
          new_slice = actual[2:]
          # Since COW is off, a slice should point to the same memory
          ptr1 = new_slice._column.base_data.get_ptr(mode="read")
          ptr2 = actual._column.base_data.get_ptr(mode="read")
          assert ptr1 == ptr2
  
          new_slice[0:2] = 10
          assert_eq(
              new_slice, cudf.Series([10, 10, 5], index=[2, 3, 4])
          )
          assert_eq(actual, cudf.Series([1, 2, 10, 10, 5]))
  
imports: import cupy
  import numpy
  import pandas
  import pytest
  import cudf
  from cudf import Series
  from cudf.testing._utils import NUMERIC_TYPES, OTHER_TYPES, assert_eq
label_desc: Use image node_id 11 for calling a global function with example usage: test_series_setitem_partial_slice_cow_off() without return types