@@ -15,6 +15,7 @@ def dataframe() -> None:
1515def datagrid (dataframe ) -> None :
1616 return DataGrid (dataframe )
1717
18+
1819@pytest .fixture
1920def data_object (dataframe ) -> None :
2021 return DataGrid .generate_data_object (dataframe , "ipydguuid" )
@@ -103,33 +104,52 @@ def test_get_cell_value_by_numerical_index(
103104 invalid_coords : bool , data_object : dict
104105) -> None :
105106 if invalid_coords :
106- assert DataGrid ._get_cell_value_by_numerical_index (data_object , 2 , 2 ) is None
107+ assert (
108+ DataGrid ._get_cell_value_by_numerical_index (data_object , 2 , 2 )
109+ is None
110+ )
107111 else :
108- assert DataGrid ._get_cell_value_by_numerical_index (data_object , 1 , 0 ) == 4
112+ assert (
113+ DataGrid ._get_cell_value_by_numerical_index (data_object , 1 , 0 ) == 4
114+ )
115+
109116
110117def test_data_object_generation (dataframe : pd .DataFrame ) -> None :
111118 data_object = DataGrid .generate_data_object (dataframe , "ipydguuid" )
112119 expected_output = {
113- 'data' : [{'index' : 'One' , 'A' : 1 , 'B' : 4 , 'ipydguuid' : 0 },
114- {'index' : 'Two' , 'A' : 2 , 'B' : 5 , 'ipydguuid' : 1 },
115- {'index' : 'Three' , 'A' : 3 , 'B' : 6 , 'ipydguuid' : 2 }],
116- 'schema' : {'fields' : [{'name' : 'index' , 'type' : 'string' },
117- {'name' : 'A' , 'type' : 'integer' },
118- {'name' : 'B' , 'type' : 'integer' },
119- {'name' : 'ipydguuid' , 'type' : 'integer' }],
120- 'primaryKey' : ['index' , 'ipydguuid' ],
121- 'pandas_version' : '0.20.0' ,
122- 'primaryKeyUuid' : 'ipydguuid' },
123- 'fields' : [{'index' : None }, {'A' : None }, {'B' : None }, {'ipydguuid' : None }]}
120+ "data" : [
121+ {"index" : "One" , "A" : 1 , "B" : 4 , "ipydguuid" : 0 },
122+ {"index" : "Two" , "A" : 2 , "B" : 5 , "ipydguuid" : 1 },
123+ {"index" : "Three" , "A" : 3 , "B" : 6 , "ipydguuid" : 2 },
124+ ],
125+ "schema" : {
126+ "fields" : [
127+ {"name" : "index" , "type" : "string" },
128+ {"name" : "A" , "type" : "integer" },
129+ {"name" : "B" , "type" : "integer" },
130+ {"name" : "ipydguuid" , "type" : "integer" },
131+ ],
132+ "primaryKey" : ["index" , "ipydguuid" ],
133+ "pandas_version" : "0.20.0" ,
134+ "primaryKeyUuid" : "ipydguuid" ,
135+ },
136+ "fields" : [
137+ {"index" : None },
138+ {"A" : None },
139+ {"B" : None },
140+ {"ipydguuid" : None },
141+ ],
142+ }
124143
125144 assert data_object == expected_output
126145
146+
127147def test_selected_cell_values (monkeypatch , datagrid , dataframe ):
128148 # Mocking data returned from front-end
129149 def mock_get_visible_data ():
130150 return dataframe
131-
151+
132152 monkeypatch .setattr (datagrid , "get_visible_data" , mock_get_visible_data )
133153 datagrid .select (1 , 0 , 2 , 1 ) # Select 1A to 2B
134154
135- assert datagrid .selected_cell_values == [2 , 5 , 3 , 6 ]
155+ assert datagrid .selected_cell_values == [2 , 5 , 3 , 6 ]
0 commit comments