code: def test_add_column_with_pandas_array(self):
      # GH 26390
      df = DataFrame({"a": [1, 2, 3, 4], "b": ["a", "b", "c", "d"]})
      df["c"] = pd.arrays.NumpyExtensionArray(
          np.array([1, 2, None, 3], dtype=object)
      )
      df2 = DataFrame(
          {
              "a": [1, 2, 3, 4],
              "b": ["a", "b", "c", "d"],
              "c": pd.arrays.NumpyExtensionArray(
                  np.array([1, 2, None, 3], dtype=object)
              ),
          }
      )
      assert type(df["c"]._mgr.blocks[0]) == NumpyBlock
      assert df["c"]._mgr.blocks[0].is_object
      assert type(df2["c"]._mgr.blocks[0]) == NumpyBlock
      assert df2["c"]._mgr.blocks[0].is_object
      tm.assert_frame_equal(df, df2)
  
imports: from datetime import datetime, timedelta
  import itertools
  import numpy
  import pytest
  from pandas.errors import PerformanceWarning
  import pandas
  from pandas import Categorical, DataFrame, Series, Timestamp, date_range, option_context
  import pandas._testing
  from pandas.core.internals.blocks import NumpyBlock
label_desc: Use image node_id 17 for calling the TestDataFrameBlockInternals obj's underlying member method code with example usage: obj.test_add_column_with_pandas_array() without return types